# Erişim destekli üretim
Bilgiyle Zenginleştirilmiş Yanıtlama (Retrieval-Augmented Generation - RAG), üretken yapay zeka (Gen AI) modellerinin yeni bilgileri getirmesine ve bu bilgileri yanıtlarında kullanmasına olanak tanıyan bir tekniktir. Bu yöntem, büyük dil modelleriyle (LLM) yapılan etkileşimleri değiştirerek modelin kullanıcı sorgularına önceden belirlenmiş belge kümelerine dayanarak yanıt vermesini sağlar ve böylece kendi eğitim verilerinden gelen bilgilerle birlikte ek bilgiler sunar. Bu yaklaşım, LLM'lerin alanlara özgü veya güncel bilgileri kullanmasına imkân tanır. Kullanım alanları arasında, sohbet robotlarının şirket içi verilere erişmesi veya otoriter kaynaklara dayalı yanıtlar üretmesi yer alır.
RAG, büyük dil modellerini bilgi getirme mekanizmasıyla geliştirir. Geleneksel LLM'ler yalnızca statik eğitim verilerine dayanırken, RAG ilgili metinleri veri tabanları, yüklenmiş belgeler veya web kaynaklarından çeker. Ars Technica'ya göre, “RAG, LLM performansını artırmanın bir yolu; esasen LLM sürecini bir web araması ya da belge bulma süreciyle harmanlayarak modellerin gerçeklere daha fazla bağlı kalmasını sağlar.” Bu yöntem, sohbet robotlarının kurgusal bilgiler uydurması gibi sorunlara neden olan yapay zeka halüsinasyonlarını azaltmaya yardımcı olur.
Bilgiyi dinamik olarak getirme yeteneği sayesinde RAG, modellerin sık sık yeniden eğitilmesine gerek kalmadan daha doğru yanıtlar sunmasına olanak tanır. IBM'e göre, “RAG, kullanıcıların modeli yeni verilerle sürekli eğitme ve parametrelerini güncelleme ihtiyacını azaltır. Bu da LLM destekli sohbet robotlarının işletme ortamlarında çalıştırılmasının hesaplama ve maliyet açısından daha verimli olmasını sağlar.”
Verimlilik kazanımlarının ötesinde, RAG LLM'lerin yanıtlarında kaynak referansları sunmasını da mümkün kılar. Bu, kullanıcıların yanıtların doğruluğunu ilgili belgeleri veya orijinal kaynakları inceleyerek teyit etmelerini sağlar ve şeffaflığı artırır.
Retrieval-Augmented Generation (Bilgiyle Zenginleştirilmiş Yanıtlama) terimi ilk kez 2020 yılında Meta tarafından yayımlanan "Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks" adlı araştırma makalesinde Douwe Kiela, Patrick Lewis, Ethan Perez, Aleksandra Piktus, Fabio Petroni, Vladimir Karpukhin, Naman Goyal, Heinrich Küttler, Mike Lewis, Wen-tau Yih, Tim Rocktäschel ve Sebastian Riedel tarafından ortaya atılmıştır.


## RAG ve LLM Sınırlamaları.
Haziran 2024'te Ars Technica, “LLM’ler insan değildir. Eğitim verileri özellikle zamana duyarlı sorgularda hızla eskiyebilir. Ayrıca LLM, bilgisinin belirli kaynaklarını ayırt edemez; tüm veriler bir çorba gibi harmanlanmıştır.” yorumunda bulundu. 2023'te Google'ın Bard adlı LLM'inin tanıtımı sırasında James Webb Uzay Teleskobu hakkında yanlış bilgi vermesi, Alphabet'in piyasa değerinde 100 milyar dolarlık bir düşüşe neden olmuştur.
RAG sistemleri, bilgi getirilen kaynakların güvenilirliğini doğal olarak doğrulamaz, bu da yanıltıcı veya hatalı yanıtlarla sonuçlanabilir. AI sistemleri, bağlamı yanlış yorumlayarak doğru kaynaklardan alınan bilgileri bile yanlış sunabilir. MIT Technology Review'un verdiği bir örnekte, AI modeli “Amerika Birleşik Devletleri’nin bir Müslüman başkanı olmuştur: Barack Hussein Obama” ifadesini üretmiştir. Bu bilgi, "Barack Hussein Obama: America’s First Muslim President?" adlı bir kitaptan alınmış ancak içerik yanlış yorumlanarak yanlış bir iddiaya dönüşmüştür.
RAG, LLM'lerin yanıtlardan önce ek bilgi almasına olanak tanır. Geleneksel modeller yalnızca mevcut eğitim verilerine dayanırken, RAG sorgu anında güncel verileri entegre eder. Ars Technica'ya göre, “RAG’in güzelliği, yeni bilgiler mevcut olduğunda modeli yeniden eğitmek yerine, yalnızca modelin harici bilgi tabanının güncellenmesinin yeterli olmasıdır.”
BBC, RAG içinde kullanılan bir teknik olan “prompt stuffing”i, modele rehberlik edecek bağlamın doğrudan isteme eklenmesi olarak tanımlar. Bu teknik, modelin verilen bağlama öncelik vermesini sağlayarak yanıt doğruluğunu artırır.


## Process (Süreç).
Retrieval-Augmented Generation (RAG), büyük dil modellerinin eğitim veri setlerinin ötesinde ek verilere erişmesini ve bunları kullanmasını sağlayan bir bilgi getirme mekanizması içerir. AWS’ye göre, “RAG, LLM’lerin dış veri kaynaklarından bilgi getirerek daha doğru ve bağlamsal olarak ilgili yanıtlar üretmesini sağlar.( İndeksleme )” Bu yaklaşım, hızla eskiyen statik veri setlerine olan bağımlılığı azaltır. Kullanıcı bir sorgu gönderdiğinde, RAG ilgili içeriği bulmak için bir belge getirici kullanır (Retrieval / Getirme ). Ars Technica, “Yeni bilgi geldiğinde modeli eğitmek yerine bilgi tabanı güncellenerek kullanılır( Augmentasyon )” şeklinde belirtir. Bu bilgiler kullanılarak model, daha bilgilendirici ve bağlama uygun yanıtlar üretir (Generation / Üretim ).


### RAG’in Temel Aşamaları.
İndeksleme
Referans alınacak veriler genellikle LLM gömme vektörlerine (embedding) dönüştürülür; bu vektörler, büyük boyutlu bir uzayda sayısal temsillerdir. RAG; yapılandırılmamış (metin), yarı yapılandırılmış ya da yapılandırılmış veriler (bilgi grafikleri gibi) üzerinde çalışabilir. Bu gömmeler daha sonra belge getirme için bir vektör veritabanında saklanır.
Getirme (Retrieval )
Kullanıcı sorgusuna karşılık olarak, bir belge getirici en ilgili belgeleri seçmek için çağrılır. Bu kıyaslama, kullanılan indeksleme türüne bağlı olarak çeşitli yöntemlerle yapılabilir.
Zenginleştirme ( Augmentation)
Model, getirilen bu bilgileri, kullanıcı sorgusunun üzerine yerleştirerek LLM'ye iletir. 2023 itibarıyla daha yeni uygulamalar, çoklu alanlarda sorgu genişletme, hafıza kullanımı ve önceki getirmelerden öğrenme gibi özellikler de sunabilir.
Üretim ( Generation)
Son aşamada LLM, hem sorguya hem de getirilen belgelere dayanarak yanıt üretir. Bazı modeller, çıktı kalitesini artırmak için yeniden sıralama, bağlam seçimi ve ince ayar gibi ek adımlar da içerir.


## Geliştirmeler.
Kodlayıcı (Encoder)
Metinlerin yoğun (dense) ya da seyrek (sparse) vektörler şeklinde kodlanması geliştirilebilir. Seyrek vektörler kelime kimliğini, yoğun vektörler ise anlamı temsil eder. Vektör benzerliklerinin daha doğru hesaplanmasıyla performans artar.
  - Yakın komşu arama (ANN), daha verimli getiriler sağlar.
  - Geç Etkileşimler (Late Interactions), kelimeleri getiriden sonra karşılaştırarak doğruluğu artırır.
  - Hibrit Vektör Yaklaşımları, hem seyrek hem de yoğun temsilleri birleştirerek avantaj sağlar.
Getirici Odaklı Yöntemler
  - Inverse Cloze Task (ICT) gibi ön eğitim teknikleri, modelin getirme kalıplarını öğrenmesine yardımcı olur.
  - DRAGON gibi veri zenginleştirme yöntemleri, zorlu örneklerle yoğun getiriyi iyileştirir.
  - Denetimli Getirici Optimizasyonu, getiricinin seçimlerini modelin üretim olasılıklarıyla hizalar.
  - Yeniden Sıralama Teknikleri, en alakalı belgeleri öne çıkarır.
Dil Modeli
Retro, getirici odaklı yeniden tasarlanmış bir dil modelidir. Küçük boyutlu bir ağ, getiriciyle birlikte kullanıldığında büyük modellere benzer performans gösterebilir.
Retro++, Retro'nun yeniden üretilebilir bir versiyonudur ve bağlamsal RAG içerir.
Parçalama (Chunking)
Verilerin vektörlere bölünme stratejileridir.
  - Sabit uzunlukta parçalama (örtüşme ile)
  - Sözdizimsel parçalama (örneğin spaCy, NLTK kullanılarak)
  - Dosya formatına dayalı parçalama (örneğin kod blokları, HTML elementleri)
Bilgi Grafikler (Knowledge Graphs)
Belgeler yerine bilgi grafikleri kullanılarak daha yapılandırılmış ve anlamlı getiriler yapılabilir. Bu yaklaşıma GraphRAG da denir.
Hibrit Arama
Vektör tabanlı aramalar bazen önemli bilgileri atlayabilir. Bu yüzden klasik metin araması ile birleştirilmiş hibrit bir yöntem tercih edilebilir.


### Değerlendirme ve Karşılaştırmalar.
RAG sistemleri, getirme doğruluğu ve üretken kaliteyi ölçen kıyaslamalarla değerlendirilir. BEIR, Natural Questions ve Google QA gibi veri setleri yaygındır. Hukuk ve sağlık gibi yüksek riskli alanlar için LegalBench-RAG gibi özel kıyaslamalar kullanılır.


## Zorluklar.
RAG, LLM'lerdeki halüsinasyon sorununu tamamen çözmez. Ars Technica'ya göre, “LLM, kaynak materyale dayanarak bile halüsinasyon üretebilir.”
RAG, sık yeniden eğitme ihtiyacını azaltır ancak tamamen ortadan kaldırmaz. Modeller, yeterli bilgiye sahip olmadıklarında güvenilir yanıt verip veremeyeceklerini değerlendiremeyebilir.
RAG sistemleri, bağlamı yanlış yorumlayarak doğru kaynaklardan bile hatalı sonuçlar çıkarabilir. Çelişkili bilgilerle karşılaştıklarında, yanlış birleştirme yaparak yanıltıcı içerikler üretebilirler.
Bu sayfa İngilizce Vikipedi'deki "Retrieval-augmented generation" maddesinden çevrilmiştir. [Retrieval-augmented generation]