RAG nedir? Şirket belgeleriyle cevap veren yapay zekâ nasıl çalışır?
RAG, yapay zekânın cevap vermeden önce sizin belgelerinizde arama yapmasını sağlayan yöntemdir. Kurumsal yapay zekâ sistemlerinin neredeyse tamamı bu yaklaşım üzerine kurulur. Bu yazıda nasıl çalıştığını adım adım anlatıyoruz.
RAG nedir?
RAG (Retrieval-Augmented Generation, Türkçesiyle "bilgi erişimiyle güçlendirilmiş üretim"), bir dil modelinin cevap üretmeden önce dış bir bilgi kaynağında arama yapıp bulduğu içeriği cevabına dayanak olarak kullanmasıdır. Model, bilgiyi ezberden değil, o an getirilen belgelerden kullanır; bu yüzden cevabın hangi kaynaktan geldiği gösterilebilir.
Yöntem, Facebook AI Research ekibinin 2020'de NeurIPS konferansında sunduğu "Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks" makalesiyle yaygınlaştı. Makalenin temel fikri, modelin kendi parametrelerindeki bilgiyi, güncellenebilir ve incelenebilir bir dış bilgi kaynağıyla birleştirmekti.
Dil modelleri neden tek başına yetmez?
Büyük dil modelleri (LLM) eğitildikleri tarihe kadar gördükleri genel bilgiyle çalışır. Bu, kurumsal kullanımda üç sorun doğurur:
- Şirketinizi bilmezler. İç yönetmelikleriniz, müşteri sözleşmeleriniz ya da bakım kayıtlarınız eğitim verisinde yoktur.
- Güncel değildirler. Geçen hafta değişen bir prosedürü bilemezler.
- Emin olmadan cevap verebilirler. Bilmedikleri konularda ikna edici ama yanlış cevaplar üretebilirler; buna "halüsinasyon" denir.
RAG bu sorunları modeli yeniden eğitmeden çözer: bilgi, soru sorulduğu anda belgelerinizden getirilir.
RAG adım adım nasıl çalışır?
- Verileri bağlama: PDF, Word, SharePoint sayfaları, e-postalar, ERP kayıtları ve veritabanı tabloları gibi kaynaklar okunur.
- Parçalama (chunking): Uzun belgeler, anlamı bozulmayacak büyüklükte parçalara bölünür; örneğin bir yönetmeliğin her maddesi ayrı bir parça olabilir.
- Vektörleştirme (embedding): Her parça, anlamını temsil eden bir sayı dizisine, yani vektöre dönüştürülür. Anlamca yakın metinlerin vektörleri de birbirine yakın olur.
- Vektör dizini: Vektörler, her parçanın hangi belgeden geldiği ve kimlerin görebileceği bilgisiyle birlikte bir dizinde saklanır.
- Anlamsal arama ve yetki filtresi: Kullanıcının sorusu da vektöre çevrilir; en yakın parçalar bulunur. Kurumsal sistemlerde bu aşamada kullanıcının göremediği belgeler sonuçtan çıkarılır.
- Kaynaklı cevap: Bulunan parçalar soruyla birlikte dil modeline verilir. Model cevabı yalnızca bu parçalara dayanarak yazar ve kaynakları listeler.
Bir örnek: kredi onay sorusu
Bir kredi analisti şunu soruyor: "5 milyon TL üzerindeki kurumsal kredi limitleri için hangi onaylar gerekiyor?"
Sistem soruyu vektöre çevirir, kredi politikaları koleksiyonunda en ilgili parçaları bulur, analistin erişimi olmayan belgeleri eler ve kalan iki parçayı modele verir. Model cevabı yazar ve altında Kredi_Yetki_Yonetmeligi_2025.pdf, s. 14 gibi kaynakları gösterir. Analist cevabı tek tıkla belgenin kendisinden doğrulayabilir.
RAG mı, ince ayar (fine-tuning) mı?
Modeli şirket verisiyle yeniden eğitmek (ince ayar) de bir seçenektir; ancak ikisi farklı işler için uygundur:
| Ölçüt | RAG | İnce ayar (fine-tuning) |
|---|---|---|
| Bilgi güncelleme | Belge eklendiği anda kullanılabilir | Yeniden eğitim gerekir |
| Kaynak gösterme | Doğal olarak mümkün | Zor; bilgi modelin içine gömülür |
| Yetki kontrolü | Sorgu anında belge bazında uygulanır | Pratikte uygulanamaz; model öğrendiğini herkese söyleyebilir |
| Uygun olduğu iş | Belgelere dayalı soru-cevap | Belirli bir üslup ya da formatı öğretmek |
Kurumsal bilgiye erişim için RAG neredeyse her zaman doğru başlangıç noktasıdır. İnce ayar, gerekirse sonradan ve dar amaçlarla eklenebilir.
Parçalama stratejisi neden bu kadar önemli?
RAG sistemlerinde cevap kalitesini en çok etkileyen ayarlardan biri, belgelerin nasıl parçalandığıdır. Parçalar çok küçük olursa bağlam kaybolur; bir maddenin istisnası başka bir parçada kalır. Çok büyük olursa aramaya alakasız metin karışır ve model asıl bilgiyi gözden kaçırabilir.
- Yapıya göre bölmek: Yönetmelikleri madde madde, kılavuzları başlık başlık bölmek, sabit uzunlukta kesmekten genellikle daha iyi sonuç verir.
- Örtüşme bırakmak: Ardışık parçalar arasında birkaç cümlelik örtüşme, sınırda kalan bilginin kaybolmasını önler.
- Bağlam bilgisini eklemek: Her parçaya belge adı, bölüm başlığı ve tarih gibi bilgileri eklemek, aramanın doğru parçayı bulmasını kolaylaştırır.
- Tabloları ayrı ele almak: Yetki tabloları ya da fiyat listeleri düz metin gibi parçalanırsa satır ve sütun ilişkisi bozulur.
Hibrit arama ve yeniden sıralama
Yalnızca anlamsal (vektör) arama, ürün kodu, arıza kodu ya da madde numarası gibi tam eşleşme gereken sorgularda zayıf kalabilir. Bu yüzden kurumsal sistemler genellikle iki yöntemi birlikte kullanır:
- Hibrit arama: Anlamsal arama ile klasik anahtar kelime aramasının sonuçları birleştirilir. Böylece hem "izin devri kuralları" gibi anlamca ifade edilen sorular hem de "E-217" gibi kodlar doğru bulunur.
- Yeniden sıralama (reranking): İlk aramada bulunan aday parçalar, soruyla ilişkisini daha hassas ölçen ikinci bir modelle yeniden sıralanır ve yalnızca en ilgili olanlar dil modeline verilir.
RAG sisteminin doğruluğu nasıl değerlendirilir?
"Cevaplar iyi görünüyor" izlenimi, bir sistemi üretime almak için yeterli değildir. Sağlıklı bir değerlendirme için:
- Test seti hazırlayın: Konunun uzmanlarından, gerçek hayatta sorulan soruları ve bu soruların doğru cevaplarını hangi belgede bulduklarını toplayın.
- Aramayı ayrı ölçün: Doğru belge parçası ilk sonuçlar arasında bulunuyor mu? Arama hatalıysa, model ne kadar iyi olursa olsun cevap yanlış olur.
- Cevabı ayrı ölçün: Cevap, getirilen kaynaklara sadık mı? Kaynakta olmayan bir bilgi ekleniyor mu?
- Yetkileri test edin: Aynı soruyu farklı yetkilerdeki kullanıcılarla sorun; kısıtlı belgelerin görünmediğinden emin olun.
- Değişikliklerden sonra tekrarlayın: Model, parçalama ya da arama ayarı değiştiğinde aynı test setini yeniden çalıştırın.
Kurumsal RAG'da dikkat edilmesi gerekenler
- Yetki filtresi arama anında uygulanmalı. Yetkiler cevap üretildikten sonra değil, belgeler seçilirken kontrol edilmeli.
- Her cevap kaynak göstermeli. Dosya adı ve sayfa numarası, kullanıcının cevabı doğrulayabilmesini sağlar.
- Bulamadığında "bilmiyorum" diyebilmeli. İlgili belge yoksa sistemin bunu açıkça söylemesi, uydurmasından iyidir.
- Türkçe başarımı ölçülmeli. Parçalama, vektörleştirme ve dil modeli Türkçe belgeler üzerinde ayrıca test edilmeli.
- Dizin güncel tutulmalı. Değişen ya da silinen belgeler dizine yansımalı.
- Veri nerede işleniyor? Vektör dizini de belgelerinizin içeriğini taşır. Dizinin ve modelin nerede çalıştığı, KVKK açısından belirleyicidir.
Sık sorulan sorular
RAG halüsinasyonu tamamen ortadan kaldırır mı?
Hayır, ama belirgin biçimde azaltır. Model cevabı getirilen belgelere dayandırdığı ve kaynak gösterdiği için hatalı bir cevap kolayca fark edilir.
RAG için modeli eğitmek gerekir mi?
Hayır. RAG'ın en büyük avantajı, modeli yeniden eğitmeden şirket bilgisini kullanabilmesidir.
RAG internet bağlantısı olmadan çalışabilir mi?
Evet. Dil modeli, vektör dizini ve belgeler aynı şirket içi sunucuda çalıştığında sistem internete ihtiyaç duymaz. Bu kurulum modelini on-premise yapay zeka yazımızda anlattık.