Model bahasa besar (LLM) mungkin kekurangan data spesifik perusahaan atau data real-time. Teknologi Retrieval-Augmented Generation (RAG) meningkatkan akurasi dan relevansi respons model dengan memberikan LLM akses ke basis pengetahuan pribadi. Topik ini menjelaskan cara mengembangkan dan menerapkan aplikasi berbasis RAG di LangStudio.
Informasi latar belakang
Dalam ranah pengambilan informasi modern, model RAG menggabungkan keunggulan pengambilan informasi dan kecerdasan buatan generatif untuk memberikan jawaban yang lebih akurat dan relevan dalam skenario tertentu. Misalnya, di bidang spesialis seperti keuangan dan perawatan kesehatan, pengguna sering membutuhkan informasi yang akurat dan relevan untuk pengambilan keputusan. Model generatif tradisional unggul dalam pemahaman dan pembuatan bahasa alami tetapi mungkin kurang akurat dalam pengetahuan spesialis. Model RAG secara efektif meningkatkan akurasi dan relevansi kontekstual jawaban dengan mengintegrasikan teknologi pengambilan dan generasi. Topik ini menyediakan aplikasi berbasis RAG untuk bidang keuangan dan perawatan kesehatan menggunakan Platform for AI (PAI) sebagai platform inti.
Prasyarat
LangStudio mendukung Faiss atau Milvus sebagai database vektor. Jika Anda ingin menggunakan Milvus, Anda harus terlebih dahulu membuat database Milvus.
CatatanDalam kebanyakan kasus, Faiss digunakan dalam lingkungan pengujian tanpa perlu membuat database tambahan. Dalam lingkungan produksi, kami menyarankan Anda menggunakan Milvus, yang dapat memproses volume data yang lebih besar.
Data yang diperlukan untuk basis pengetahuan RAG telah diunggah ke OSS.
1. (Opsional) Terapkan LLM dan model embedding
Alur aplikasi berbasis RAG memerlukan baik LLM maupun model embedding. Bagian ini menjelaskan cara cepat menerapkan layanan model yang diperlukan melalui Model Gallery. Jika layanan model yang diterapkan memenuhi kebutuhan bisnis Anda dan mendukung API OpenAI, Anda dapat melewati langkah ini dan menggunakannya langsung.
Pilih QuickStart > Model Gallery dan terapkan model untuk dua skenario berikut.
Pastikan Anda memilih LLM yang telah disempurnakan berdasarkan instruksi. Model dasar tidak dapat mengikuti instruksi pengguna dengan andal untuk menjawab pertanyaan.
Pilih large-language-model di bagian Scenarios dan terapkan DeepSeek-R1-Distill-Qwen-7B.

Pilih embedding di bagian Scenarios dan terapkan bge-m3 embedding model.

2. Buat koneksi
Koneksi LLM dan embedding yang dibuat dalam topik ini didasarkan pada layanan model EAS (Elastic Algorithm Service) yang diterapkan di QuickStart > Model Gallery. Untuk informasi tentang jenis koneksi lainnya, lihat Konfigurasikan Koneksi.
2.1 Buat koneksi LLM
Pergi ke LangStudio, pilih ruang kerja, lalu pilih Connection > Model Service. Pada tab yang muncul, klik New Connection untuk membuat koneksi layanan model LLM umum.

Tabel berikut menjelaskan parameter utama.
Parameter | Deskripsi |
Nama | Jika Anda menerapkan model melalui Model Gallery, Anda bisa mendapatkan nama model di halaman detail model. Untuk pergi ke halaman detail model, klik kartu model terkait di halaman Model Gallery. Untuk informasi lebih lanjut, lihat bagian "Layanan model" dari Konfigurasikan koneksi. |
Penyedia Layanan |
|
2.2 Buat koneksi embedding
Anda dapat membuat koneksi embedding dengan merujuk ke 2.1 Buat Koneksi LLM.

2.3 Buat koneksi database vektor
Di halaman Pengembangan Aplikasi (LangStudio), pilih Connection > Database, lalu klik Create Connection. Pada tab yang muncul, klik New Connection untuk membuat koneksi database Milvus.

Tabel berikut menjelaskan parameter utama.
Parameter | Deskripsi |
uri | Titik akhir instance Milvus, dalam format |
token | Nama pengguna dan kata sandi untuk masuk ke instance Milvus, dalam format |
database | Nama database. Database default |
3. Buat indeks basis pengetahuan
Anda harus membuat indeks basis pengetahuan untuk mengurai, membagi, memvektorkan, dan menyimpan korpus di database vektor. Tabel berikut menjelaskan parameter utama. Untuk informasi tentang konfigurasi lainnya, lihat Buat Basis Pengetahuan.
Parameter | Deskripsi |
Konfigurasi Dasar | |
Sumber Data Jalur OSS | Atur nilainya ke jalur OSS dari basis pengetahuan RAG di Prasyarat. |
Jalur Keluaran OSS | Atur nilainya ke jalur untuk menyimpan hasil antara dan informasi indeks yang dihasilkan selama penguraian dokumen. Penting Jika Anda menggunakan FAISS sebagai database vektor, alur aplikasi menyimpan file indeks yang dihasilkan ke OSS. Jika Anda menggunakan peran default PAI (atur Instance RAM Role ke Peran Default PAI di halaman Mulai Runtime), alur aplikasi dapat mengakses bucket penyimpanan default ruang kerja Anda. Oleh karena itu, kami menyarankan Anda mengatur parameter ini ke direktori bucket OSS tempat jalur penyimpanan untuk ruang kerja berada. Jika Anda menggunakan peran kustom, Anda harus memberikan izin akses OSS ke peran kustom. Kami menyarankan Anda melampirkan kebijakan AliyunOSSFullAccess ke peran tersebut. |
Model Embedding dan Database | |
Tipe Embedding | Pilih General Embedding Model. |
Koneksi Embedding | Pilih koneksi embedding yang dibuat di 2.2 Buat koneksi embedding. |
Tipe Database Vektor | Pilih Vector Database Milvus. |
Koneksi Database Vektor | Pilih koneksi database Milvus yang dibuat di 2.3 Buat koneksi database vektor. |
Nama Tabel | Atur nilainya ke koleksi database Milvus yang dibuat di Prasyarat. |
Konfigurasi VPC | |
VPC | Pilih VPC yang sama dengan instance Milvus atau VPC yang terhubung ke VPC tempat instance Milvus berada. |
4. Buat dan jalankan alur aplikasi berbasis RAG
Pergi ke LangStudio, pilih ruang kerja, lalu klik tab Application Flow. Pada tab yang muncul, klik Create Application Flow untuk membuat alur aplikasi berbasis RAG.

Di halaman detail alur aplikasi, klik Create Runtime untuk membuat runtime dan memulainya. Catatan: Pastikan runtime telah dimulai sebelum sistem mengurai node Python atau Anda dapat melihat Lebih Banyak Alat.

Parameter Utama:
VPC: Pilih VPC yang sama dengan instance Milvus di Prasyarat atau VPC yang terhubung ke VPC tempat instance Milvus berada.
Kembangkan alur aplikasi.

Simpan pengaturan default untuk node atau konfigurasikan berdasarkan kebutuhan bisnis Anda. Gunakan pengaturan berikut untuk node utama:
Pengambilan Pengetahuan: Mengambil teks yang relevan dengan pertanyaan pengguna dari basis pengetahuan.
Nama Indeks: Pilih indeks basis pengetahuan yang dibuat di 3. Buat Indeks Basis Pengetahuan.
Top K: Jumlah kecocokan teratas yang akan dikembalikan.
LLM: Menggunakan dokumen yang diambil sebagai konteks, mengirim dokumen bersama dengan pertanyaan pengguna ke LLM, lalu menghasilkan jawaban.
Konfigurasi Model: Pilih koneksi yang dibuat di 2.1 Buat Koneksi LLM.
Riwayat Obrolan: Jika Anda mengaktifkan saklar ini, fitur riwayat obrolan diaktifkan, dan percakapan sebelumnya digunakan sebagai variabel input.
Untuk informasi lebih lanjut tentang setiap komponen, lihat Lampiran: Deskripsi Komponen Bawaan.
Debug atau jalankan alur aplikasi. Klik Run di pojok kanan atas halaman detail untuk menjalankan alur aplikasi. Untuk masalah umum selama runtime alur aplikasi, lihat FAQ.

Lihat Jejak. Klik View Traces di bawah jawaban yang dihasilkan untuk melihat detail jejak atau tampilan topologi.

5. Terapkan alur aplikasi
Di halaman pengembangan alur aplikasi, klik Deploy di pojok kanan atas untuk menerapkan alur aplikasi sebagai layanan EAS. Simpan pengaturan default untuk parameter atau konfigurasikan berdasarkan kebutuhan bisnis Anda. Gunakan pengaturan berikut untuk parameter utama:
Instans di bagian Informasi Sumber Daya: Masukkan jumlah instans layanan. Atur parameter ini ke 1 untuk tujuan pengujian. Dalam lingkungan produksi, kami menyarankan Anda mengonfigurasi beberapa instans untuk mengurangi risiko kegagalan titik tunggal (SPOF).
VPC (VPC) di bagian VPC: Pilih VPC yang sama dengan instance Milvus atau VPC yang terhubung ke VPC tempat instance Milvus berada.
Untuk informasi lebih lanjut tentang penerapan, lihat Terapkan Alur Aplikasi.
6. Panggil layanan
Setelah penerapan berhasil, Anda akan dialihkan ke halaman Elastic Algorithm Service (EAS) PAI. Di tab Online Debugging, konfigurasikan dan kirim permintaan. Kunci dalam badan permintaan harus sesuai dengan Chat Input field in the Start Node of the application flow. In this example, the default field question digunakan.

Untuk metode lain untuk memanggil layanan (seperti Operasi API) dan instruksi rinci, lihat Panggil Layanan.