Retrieval-Augmented Generation (RAG) adalah kerangka kerja kecerdasan buatan (AI) yang dirancang untuk meningkatkan kualitas respons yang dihasilkan oleh model bahasa besar (Large Language Model/LLM) dengan cara mengambil fakta dari basis pengetahuan eksternal. Hal ini bertujuan untuk mendasarkan model pada informasi yang paling akurat dan terkini, serta memberikan wawasan kepada pengguna mengenai proses generatif LLM.[1]
Definisi
Retrieval-Augmented Generation (RAG) merupakan kerangka kerja AI yang dikembangkan untuk mengatasi inkonsistensi yang melekat pada LLM. Inkonsistensi ini muncul karena LLM, yang didasari oleh arsitektur transformer, hanya mengetahui hubungan statistik antar kata, bukan makna fundamental dari kata-kata tersebut, sehingga terkadang mereka menghasilkan fakta acak atau tidak akurat dari data latih internal mereka. RAG berfungsi melengkapi representasi internal LLM dengan sumber pengetahuan eksternal.[1][2]
Kerangka RAG melibatkan dua fase utama: pengambilan (retrieval) dan generasi konten. Dalam fase pengambilan, algoritma mencari dan mengambil potongan informasi yang relevan dengan pertanyaan atau prompt pengguna. Dalam lingkungan konsumen (open-domain), fakta-fakta ini dapat berasal dari dokumen terindeks di internet. Sementara itu, dalam pengaturan perusahaan (closed-domain), sering kali digunakan serangkaian sumber yang lebih sempit untuk meningkatkan keamanan dan keandalan. Kumpulan pengetahuan eksternal ini kemudian ditambahkan ke prompt pengguna dan diteruskan ke model bahasa. Dalam fase generatif, LLM menarik informasi dari prompt yang telah ditambah (augmented prompt) serta representasi internal data latihannya untuk melakukan sintesis jawaban yang menarik dan disesuaikan dengan pengguna. Pendekatan ini diibaratkan sebagai ujian "buku terbuka" bagi model, di mana model merespons pertanyaan dengan menelusuri konten, berbeda dengan model tanpa RAG yang mencoba mengingat fakta dari memori internalnya.[1][3]
Keterbatasan dan pengembangan
LLM tanpa RAG rentan terhadap pembuatan informasi yang salah atau menyesatkan (halusinasi), terutama ketika pertanyaan yang diajukan ambigu, kompleks, atau membutuhkan pengetahuan yang tidak dimiliki model atau sulit diuraikan. Situasi ini menunjukkan bahwa model cenderung memberikan jawaban tanpa memeriksa fakta. RAG membantu mengurangi risiko halusinasi dengan mendasarkan LLM pada serangkaian fakta eksternal yang dapat diverifikasi.[1][4]
RAG juga mengurangi kebutuhan untuk terus melatih ulang model pada data baru dan memperbarui parameternya seiring perkembangan situasi. Sebelum adanya LLM, agen percakapan digital mengandalkan alur dialog manual, yang membatasi kemampuan untuk berimprovisasi jika skenario pertanyaan tidak diantisipasi atau tertulis dalam naskah. Saat ini, model berbasis LLM mampu memberikan jawaban yang lebih personal. RAG membawa kemampuan ini selangkah lebih jauh dengan secara signifikan mengurangi kebutuhan untuk memberi masukan dan melatih ulang model dengan contoh baru. Cukup dengan mengunggah dokumen atau kebijakan terbaru, model dapat mengambil informasi tersebut dalam mode buku terbuka untuk menjawab pertanyaan.[1][4]
Dampak
Implementasi RAG dalam sistem tanya jawab berbasis LLM memberikan sejumlah manfaat utama. Pertama, RAG memastikan model memiliki akses ke fakta yang paling mutakhir dan dapat diandalkan, sehingga meningkatkan akurasi respons. Kedua, RAG memberikan akses kepada pengguna terhadap sumber yang digunakan model, memungkinkan klaimnya diperiksa keakuratannya dan pada akhirnya dipercaya. Manfaat lain termasuk berkurangnya peluang model menarik informasi sensitif yang tertanam dalam parameternya, yang mengurangi kemungkinan kebocoran data.[1][3]
Dalam konteks perusahaan, RAG dapat menurunkan biaya komputasi dan finansial yang terkait dengan menjalankan chatbot bertenaga LLM, karena mengurangi kebutuhan untuk terus melatih model. Misalnya, RAG digunakan untuk mendasarkan chatbot layanan pelanggan internal pada konten yang dapat diverifikasi dan dipercaya. Dalam skenario ini, LLM dapat menarik data spesifik dari berkas karyawan dan memverifikasi kebijakan perusahaan dari sumber yang relevan untuk memberikan jawaban yang ringkas dan personal, disertai dengan tautan ke sumber aslinya. IBM, melalui platform AI dan datanya, watsonx, mulai menawarkan kemampuan RAG pada Mei 2023.[1][3]
Peningkatan
Penyempurnaan proses dasar yang dijelaskan di atas dapat diterapkan pada berbagai tahap alur RAG. Metode ini berfokus pada pengodean teks sebagai vektor padat atau vektor jarang. Vektor jarang, yang mengode identitas kata, biasanya memiliki panjang yang sama dengan kosakata, dan sebagian besar berisi nol.[5][6][7] Vektor padat, yang mengode makna, lebih ringkas dan berisi lebih sedikit nol.[8] Berbagai peningkatan dapat meningkatkan ketepatan perhitungan kemiripan di penyimpanan vektor (basis data).
RAG telah menjadi pendekatan standar untuk membenarkan jawaban AI berdasarkan data dunia nyata. Namun tidak semua metode RAG sama. Algoritme RAG tradisional mengambil apa yang diminta. Algoritme RAG berbasis agen menentukan apa yang diperlukan.[9]
Kinerja meningkat dengan mengoptimalkan cara menghitung kemiripan vektor. Produk skalar memperbaiki penilaian kemiripan, sementara pencarian tetangga terdekat perkiraan (ANN) meningkatkan efisiensi pencarian dibandingkan pencarian K tetangga terdekat (KNN).
Ketepatan dapat ditingkatkan melalui interaksi terlambat, yang memungkinkan sistem membandingkan kata lebih akurat setelah pencarian. Ini membantu menyempurnakan peringkat dokumen dan meningkatkan relevansi hasil pencarian.
Metode pencarian lain berfokus pada peningkatan ketepatan dengan memperbaiki cara pemilihan dokumen. Beberapa metode pencarian menggabungkan representasi jarang, seperti SPLADE,[10][11] dengan strategi perluasan kueri untuk meningkatkan ketepatan dan cakupan pencarian.
Terkadang saat menelusuri basis data vektor, fakta kunci yang diperlukan untuk menjawab pertanyaan pengguna dapat terlewat. Salah satu cara mengatasi masalah ini adalah melakukan pencarian teks tradisional, menambahkan hasil tersebut ke potongan teks yang terkait dengan vektor yang diperoleh dari pencarian vektor, dan mengirimkan teks hibrida gabungan itu ke model bahasa untuk generasi.