RAG, bir dil modelinin cevabı yalnızca kendi ağırlıklarından değil, o an getirilen belgelerden üreterek çalışmasıdır. Soru geldiğinde önce bir arama adımı çalışıyor, ilgili metin parçaları bulunuyor, sonra bu parçalar istemin içine konularak modele veriliyor. Model de cevabı bu parçalara dayanarak yazıyor.
Hazırlık tarafında belgeler parçalara bölünüyor, her parça embedding'e çevriliyor ve bir vektör deposuna yazılıyor. Sorgu geldiğinde aynı modelle vektöre çevrilip en yakın parçalar getiriliyor. Çoğu sistem burada bir yeniden sıralama adımı da kullanıyor, çünkü ilk getirme hızlı ama kaba. Getirilen parçalar bağlam penceresine sığacak şekilde kırpılıyor ve kaynak bilgisiyle birlikte modele veriliyor.
Yöntemin çözdüğü asıl sorun güncellik ve doğrulanabilirlik. Modelin eğitim verisi belirli bir tarihte donuyor, RAG ise cevabı bugünkü belgeden üretiyor. Ayrıca yanıtın hangi kaynağa dayandığı gösterilebiliyor, bu da halüsinasyonu azaltıyor ve kullanıcıya kontrol imkânı veriyor.
Somut bir örnek: bir yazılım şirketinin destek asistanı ürün dokümantasyonuna bağlanıyor. Kullanıcı yeni çıkan bir özelliği sorduğunda model bunu eğitiminden bilmiyor, ama getirme adımı ilgili doküman sayfasını buluyor ve cevap o sayfadan çıkıyor. Dokümantasyon güncellendiğinde asistanın cevabı da güncelleniyor, yeniden eğitim gerekmiyor.
Zayıf halka getirme adımı. Yanlış parça getirildiğinde model kendinden emin biçimde yanlış cevap veriyor, bu yüzden getirme kalitesi ayrıca ölçülüyor.



