9 poin oleh GN⁺ 2024-12-25 | Belum ada komentar. | Bagikan ke WhatsApp
  • Benchling mengoperasikan infrastruktur cloud di beberapa region dan environment.
    • Mengelola lebih dari 160 ribu sumber daya di Terraform Cloud, dengan sekitar 50 insinyur yang merilis perubahan infrastruktur dalam satu bulan.
  • Ada banyak dokumen FAQ (20 halaman) dan riwayat thread Slack, namun masalahnya adalah ketidakefisienan pencarian.
  • Untuk mengatasinya, dibangun Slackbot berbasis LLM RAG.

Tujuan Pembangunan

  • Mengembangkan Slackbot internal yang menyelesaikan pertanyaan Terraform Cloud secara real-time.
  • Menggabungkan sumber data internal dan eksternal untuk menyediakan jawaban melalui antarmuka Slack yang ramah pengguna.
  • Kasus penggunaan:
    • Menjawab pertanyaan HR
    • Mencari kasus penyelesaian masalah pelanggan
    • Menjelaskan kode kesalahan software

Cara Kerja

  1. Analisis kueri pengguna: Mencari informasi yang relevan dari database.
  2. Penyusunan prompt LLM: Menyusun prompt dengan menyertakan hasil pencarian dan instruksi untuk menghasilkan jawaban.

Teknologi Stack

  • Model RAG: Menggunakan Amazon Bedrock.
    • Menyiapkan knowledge base dengan database OpenSearch Serverless.
    • Menggunakan model Claude 3.5 Sonnet v2 untuk menghasilkan jawaban.

Sumber Data

  • Confluence: FAQ Terraform Cloud (disimpan sebagai PDF lalu diunggah ke S3).
  • Web: Dokumentasi Terraform Cloud dan bahasa HashiCorp.
  • Slack: Thread yang berisi issue Terraform Cloud yang sudah terselesaikan (POC dikumpulkan secara manual).
  • Data disimpan dalam vektor database agar dapat ditemukan saat melakukan kueri.

Arsitektur Implementasi

  • Komponen:
    • Slack App
    • AWS API Gateway
    • AWS Lambda (menggunakan Python)
    • AWS Bedrock
    • OpenSearch Serverless (database vektor)
  • Penggunaan model:
    • Amazon Titan Text Embeddings v2 (untuk menghasilkan embedding)
    • Claude 3.5 Sonnet v2 (untuk menghasilkan jawaban)

Batasan dan Pengembangan ke Depan

Batasan

  • Tidak dapat memproses gambar: Diagram arsitektur berbasis gambar atau screenshot tidak disertakan.
  • Dukungan Terraform belum memadai: Saat ini Terraform AWS Provider belum mendukung resource Bedrock.

Pengembangan ke Depan

  1. Menambahkan tautan sumber: Menyertakan sumber dokumen pada respons Slack.
  2. Penyimpanan otomatis thread Slack: Memperbarui database dengan perintah @help-terraform-cloud 기억해줘.
  3. Otomatisasi sinkronisasi data: Sinkronisasi mingguan menggunakan CloudWatch Events.
  4. Pemanfaatan Confluence API: Mengalihfungsikan unggahan PDF manual saat ini menjadi koneksi API.
  5. Dukungan percakapan multi-turn: Mempertahankan konteks percakapan yang berkelanjutan dengan pengguna.

Pelajaran Saat Membangun

  1. Strategi chunk data:
    • Awalnya memakai ukuran chunk 300 token (sekitar 1 paragraf), kemudian disesuaikan ke 1500 token (sekitar 5 paragraf) agar jawaban panjang tidak terpotong.
  2. Efisiensi parsing PDF:
    • Data berbasis teks dapat diekstrak secara stabil dengan mengecualikan gambar.
  3. Kemudahan pengaturan knowledge base:
    • Dapat dibangun hanya dalam hitungan menit dengan Amazon Bedrock.

Kasus Penggunaan

  • Pencarian FAQ dan kode kesalahan.
  • Menjawab pertanyaan berulang secara otomatis.
  • Memanfaatkan dataset yang disesuaikan per tim:
    • Riwayat percakapan, dokumen publik, dan sebagainya.

Pertimbangan Keamanan

  • Penilaian risiko sensitivitas data dan risiko hasil yang tidak akurat.
  • Memverifikasi model yang disetujui organisasi.

Kesimpulan

  • Slackbot berbasis LLM membuktikan kemungkinan membuat prototipe dengan cepat.
  • Eksperimen teknologi baru dapat meningkatkan efisiensi dan produktivitas.
  • Berdasarkan kasus ini, Anda juga bisa mencoba membangun alat berbasis LLM!

Belum ada komentar.

Belum ada komentar.