RAG Mimarisi Nedir? Ayrıntılı Pratik Örneklerle Kapsamlı Bir Tanım
RAG mimarisi, harici bilgileri depolayan, getiren ve bir LLM'e aktaran bileşenler bütünüdür; bu rehber, temel ve hibrit RAG'den ajan tabanlı RAG ve GraphRAG'e kadar 10 türü iki adım adım örnekle açıklıyor.

RAG (retrieval augmented generation, yani erişimle artırılmış üretim), LLM'lerin çıktılarını genişletmek ve iyileştirmek için harici bilgileri kullandığı bir süreçtir. RAG mimarisi, RAG'i mümkün kılan bileşenler ve bağlantılar bütünüdür.
Birkaç farklı RAG kategorisi vardır ve her biri kendine özgü bir mimari üzerinde çalışır. Özünde bir RAG sisteminin mimarisi, bilgilerin depolanma, erişilme ve bir LLM'e aktarılma biçimini belirler.
RAG mimarisi nedir?
RAG mimarisi, belirli bir RAG sistemini çalıştıran bileşenlerin (ve bunlara bağlı yeteneklerin) temel yapılandırmasıdır. Bu mimarilerin tümü, genellikle "basit" veya “naif” RAG olarak adlandırılan temel bir şablon üzerine kuruludur.
Temel RAG mimarisine üst düzey bir genel bakış:
- Bilgi kaynağı: Harici bilgilerin depolandığı yerdir. Bu bir arama dizini, büyük miktarda bilgiyi temsil eden bir vektör veritabanı veya ham bir belge deposu olabilir.
- Erişim bileşeni: Bilgi kaynağının sorgulanmasını sağlayan mekanizmadır. Örneğin bir RAG sistemi, ilgili metin parçalarını bulmak için basit bir anahtar kelime araması ya da benzerlik araması yapmak için daha karmaşık vektör sorguları kullanabilir.
- Orkestrasyon bileşeni: Bu katman, LLM tabanlı uygulamanın bir kullanıcı istemi için RAG işlem hattını LLM ile birlikte ya da bağımsız olarak başlatan kısmıdır. Ayrıca erişilen bilgileri genişletilmiş bir istem halinde derler.
RAG mimarisi bileşenleri genellikle iki yol halinde düzenlenir. Veri alım yolu, verileri alır ve aranabilir bir bilgi kaynağı halinde düzenler. Büyük miktarda metnin aranabilir bir vektör gömme deposuna dönüştürüldüğü vektör veritabanları, en yaygın kullanılan uygulamalardan biridir.
Erişim yolu, kullanıcının istemini alır ve bilgi kaynağında arama yapmak için bir sorgu oluşturur. Ardından orkestratör, erişilen bilgileri LLM'in bağlam girdisine ekler. Ajan tabanlı ve hibrit RAG mimarilerinde birden fazla erişim yolu bulunabilir.
RAG mimarisi türleri
RAG'i birbirinden tamamen ayrı mimariler açısından düşünmek yanıltıcı olur. Çoğu mühendis, belirli kullanım senaryolarına uygun ayrı bileşenler uygulayarak modüler bir yaklaşım benimser. Gevşek sınırlar çizmek mümkün olsa da mimari modeller arasında önemli ölçüde örtüşme olduğunu belirtmek gerekir.
1. Temel RAG
“Naif” veya “basit” RAG olarak da adlandırılan temel RAG, diğer RAG türlerinin mimari şablonudur.
Temel süreç nispeten basittir: Kullanıcı bir istem girer, orkestratör (bağımsız olarak ya da LLM ile birlikte) harici bilgiye ihtiyaç olup olmadığını belirler ve buna göre bir erişim sorgusu oluşturup gönderir.
Harici bilgi kaynağı genellikle bir vektör veritabanıdır ancak bir SQL veritabanı, bir web API'si, bir bilgi grafiği, hatta “ham” bir belge deposu da olabilir. Bu ek bilgiler daha sonra LLM'in girdi bağlamına eklenir.
SQL sorguları ve API'ler dışında iki geniş erişim yöntemi türü vardır:
- Sözcüksel arama (anahtar kelime araması): Bu, kullanıcı sorgusundan anahtar kelimelerin çıkarıldığı ve bu anahtar kelimeleri içeren metin pasajlarıyla eşleştirildiği basit bir RAG biçimidir. Modern işlem hatlarında orkestratör bunu yapmak için anlamı yakalamayan ve seyrek vektör sorgusu adı verilen bir sorgu çalıştırabilir.
- Yoğun vektör araması (anlamsal arama): Yoğun vektör gömmeleri anlamı yakalar. Orkestratör, yoğun bir vektör veritabanını hem kullanıcı isteminin hem de kaynak bilgilerin anlamının yakalanmasını sağlayacak şekilde sorgulayabilir.
Bellek kullanımı da RAG mimarisinin önemli bir parçasıdır. Bu, bir LLM'in erişim sorgusu oluşturmak için önceki sohbetlerdeki bağlamı nasıl kullandığını ifade eder; böylece sorgu, bir tartışmanın (veya birden fazla tartışmanın) daha geniş bağlamına dayandırılır. Konuşmaya dayalı RAG çoğu sohbet botu için standarttır; ancak destek talebi yanıtları gibi bazı kullanım senaryolarında tek soruluk RAG kullanılabilir.
2. Hibrit
Hibrit RAG, genellikle anahtar kelime ve anlamsal erişim olmak üzere iki farklı erişim türünü birleştirir. Anahtar kelime araması eşleşen terimleri, vektör tabanlı arama ise anlamca ilişkili pasajları bulur.
Bilgi grafiğinde gezinme veya SQL veritabanı sorguları gibi başka erişim biçimleri de kullanılabilir. Süreç genellikle programlanmış kurallar ya da bir modelin soruyu sınıflandırması biçimindeki yönlendirme mantığıyla yönetilir (ancak birden fazla işlem hattı aynı anda da çalışabilir).
Orkestratör sonuçları birleştirir ve LLM'e aktarmadan önce yeniden sıralayabilir. Yeniden sıralama, LLM'in en uygun bilgilere öncelik vermesi için erişilen parçalara alaka puanları atama sürecidir.
3. Uyarlanabilir RAG
Uyarlanabilir RAG'de bir yönlendirme bileşeni, kullanıcı isteminin gereksinimlerine göre bir erişim stratejisi seçer ve ardından orkestratör seçilen iş akışını yürütür.
Orijinal çerçevede (Adaptive-RAG), daha küçük bir model sınıflandırıcı görevi görerek erişim yapmama, tek adımlı erişim veya çok adımlı erişim arasında seçim yapıyordu. Günümüzde bazı mimariler bunun yerine üretken modeller veya kural tabanlı sezgisel yöntemler kullanıyor.
İşlem gücünü istemin karmaşıklığına ve gereksinimlerine göre tahsis ettiği ve böylece daha basit istemlerde gereksiz erişim adımlarını azalttığı için popüler bir mimaridir. Birden fazla soru türüyle ilgilenen asistanlarda yaygındır.
4. Düzeltici RAG (CRAG)
Düzeltici RAG, erişilen bilgileri LLM'in bağlam girdisine eklemeden önce değerlendirir. Bir erişim değerlendiricisi, erişilen bilgilerin alakalı ve yararlı olup olmadığını inceler. Bu mimarinin kendine özgü özelliği, yanıt üretiminden önceki açık değerlendirme ve düzeltme aşamasıdır.
Bilgilerin eksik olduğu veya istemle ilgili olmadığı tespit edilirse ek talepler tetiklenir. Bunlar, orijinal talepte kullanılanlardan farklı erişim yöntemlerini (web araması veya bilgi grafiğinde gezinme gibi) içerebilir.
Düzeltici RAG, tıp ve hukuk gibi doğruluğun önemli olduğu alanlarda yaygındır. Ancak ilk erişilen pasajları tamamlayabilecek ek bir bilgi kaynağı gerektirir.
5. Self-RAG
Self-RAG'de model, ilk bağlam girdisini aldıktan sonra talepler başlatabilir. Üretilen yanıtlar, yansıma token'ları kullanılarak erişilen kanıtlara göre değerlendirilir ve gerektiğinde orkestratör aracılığıyla ek talepler gönderilir. Öte yandan LLM, hiç erişime gerek olmadığına da karar verebilir.
Düzeltici RAG'den farkı, LLM'in kendi çıktılarını yargılaması, erişime gerek olup olmadığını ve erişilen metnin yararlı olup olmadığını belirlemesi ve kendi yanıtlarını izleyerek gerektiğinde değiştirmesidir. Düzeltici RAG ise erişilen bilgilerin kalitesini üretimden önce değerlendirir.
Bu mimari, özellikle karmaşık, derin araştırma tarzındaki istemler için kullanışlıdır. (Erişilen bilgilerin) alaka değerlendirmesini yanıt üretimine entegre ettiğinden, kanıta dayalı yanıt gerektiren istemler için iyi bir seçenektir.
6. Ajan tabanlı RAG
Ajan tabanlı RAG, bir ajan platformu bağlamında yürütülen her türlü RAG biçimini ifade eder. Model, ihtiyaç duyulan bilgi türünü belirlemek için akıl yürütme yeteneklerini kullanır ve mevcut erişim seçenekleri arasından seçim yapar.
Erişim gerektiği kadar tetiklenebilir ve model, daha karmaşık sorgular için ajan görevlendirme seçeneğine sahiptir. Örneğin bir LLM, bir tedarikçiyi belirlemek için veritabanı sorgusu isteyebilir, ilgili sözleşmeleri bulmak için belge araması tetikleyebilir ve son olarak iletişim bilgilerini herkese açık kaynaklardan doğrulamak için bir web aramasıyla süreci tamamlayabilir.
Ajan tabanlı RAG, Perplexity, ChatGPT, Claude gibi yaygın sohbet botlarındaki başlıca mimari uygulamasıdır. Bu platformlar temel modele birden fazla araç ve RAG işlem hattına erişim sağladığından model, bir isteme en uygun erişim biçimini seçebilir.
7. Çok modlu RAG
Çok modlu RAG, farklı medya türlerinden bağlam alır. Grafikler ve ses kayıtları gibi aksi takdirde erişilemeyecek bilgileri LLM'ler için kullanılabilir hale getirdiğinden önemli bir RAG biçimidir.
Temel mimari, diğer tüm sistemlerdekiyle aynıdır. Örneğin bir dizinleme işlem hattı, görselleri doğrudan gömmelere dönüştürerek aramaya hazırlayabilir. Ardından ajan tabanlı bir RAG sistemi bu görselleri anlamsal olarak ilgili metinlerle birlikte alıp ikili işleme için bir görsel-dil modeline aktarabilir.
8. GraphRAG
GraphRAG, varlıklar hakkında bilgi almak için vektör aramasının yanı sıra bilgi grafiklerini kullanır. Orkestratör genellikle düğüm olarak da adlandırılan ilgili başlangıç varlıklarını anahtar kelime çıkarma veya bazen ön vektör araması kullanarak bulur. Bir grafik erişim bileşeni, daha geniş bir bağlam oluşturmak için bilgi grafiğinde gezinir.
Örneğin bir ürün kategorisinin ayrıntılı dökümüne yönelik bir talebe yanıt olarak LLM, belirli varlıkları (ürünleri) belirlemek için bir vektör araması tetikleyebilir. Ardından orkestratör, tedarikçiler, perakende satış noktaları, incelemeler gibi ilgili varlıkları bulmak için bir bilgi grafiği araması tetikler.
9. Dallanmış RAG
Hibrit RAG mimarisi farklı erişim yöntemleri kullanabilirken dallanmış RAG, dal adı verilen birden fazla sorgunun aynı anda çalıştırılması sürecini ifade eder. Her dal ayrı bir bilgi kaynağını sorgulayabilir ya da dallar farklı sorgular veya filtrelerle aynı kaynağı eş zamanlı olarak sorgulayabilir. Ajan tabanlı RAG mimarisi genellikle dallanmış RAG kullanır.
10. HyDE (Hypothetical Document Embeddings, Varsayımsal Belge Gömmeleri)
HyDE, bir LLM'in en iyi yanıtın nasıl görünebileceğine dair varsayımsal bir metin belgesi oluşturduğu yenilikçi bir RAG biçimidir. Bu “varsayımsal belge” daha sonra daha doğru erişim için bir sorgu oluşturmakta kullanılır. İlgili bilgi LLM parametrelerinde temsil edilmese de buradaki mantık, yanıta benzeyen bir pasajın ilgili belgelerle kısa bir soru veya belirsiz bir istemden daha iyi eşleşebileceğidir.
Basit RAG mimarisi örneği: Vektör veritabanı
Temel RAG, daha karmaşık mimari türlerinin temelini oluşturur. Vektör veritabanı kullanan basit bir RAG sisteminde kaynak belgeler daha küçük parçalara (chunk) bölünür ve yoğun gömmelere dönüştürülür. Kullanıcı bir istem girdiğinde orkestratör bir sorgu oluşturur, bunu kodlar ve ilgili pasajları bulmak için veritabanını sorgular.
Süreç adım adım şöyle işler:
- Büyük miktarda metin, otomatik bir veri alım işlem hattı ve BERT gibi bir gömme modeli kullanılarak vektörlere dönüştürülür.
- Veritabanı uygulaması, hızlı arama için vektörleri düzenler, dizinler ve depolar.
- Kullanıcı bir sohbet botuna (Perplexity gibi) bir istem girer.
- Uygulama orkestratörü, vektör veritabanından ilgili bilgileri almak için istemi (bir gömme modeli kullanarak) kodlar.
- Vektör veritabanı ilgili parçaları döndürür; orkestratör bunları girdi bağlamına (“büyük istem”) ekler ve LLM'e aktarır.
- LLM, ek bağlamı kullanarak ve (parametrik ağırlıklarında depolanan) iç bilgisinden yararlanarak bir yanıt üretir.
Gelişmiş RAG mimarisi örneği: Ajan tabanlı RAG
Ajan tabanlı RAG, bir ajan platformundaki RAG sistemlerinin temel mimarisini ifade eder. Yapay zeka ajanları bir istemin niteliğine bağlı olarak farklı araçları ve işlem hatlarını çağırabildiği, gerektiğinde birden fazla ajanı devreye alabildiği için ajan tabanlı RAG akışları genellikle karmaşıktır.
Sürece dair pratik bir örnek:
- Kullanıcı, bir konu hakkında derin araştırma gerektiren karmaşık bir soru girer. Bu örnek için istemin “Büyük jeopolitik gelişmeler ışığında önümüzdeki altı ay için şirket kazançlarına yönelik bir tahmin sun.” olduğunu varsayalım.
- LLM, farklı içerik türlerini kapsayan RAG sorgularının bir karışımına ihtiyaç olacağı sonucuna varır.
- (a) Vektör araması, (b) web üzerinden temellendirme ve (c) görsel (çok modlu) arama için üç farklı ajan devreye alınır.
- Ajanlar, mevcut erişim araçlarını kullanarak orkestratör aracılığıyla haberler ve şirket içi finansal veriler gibi ilgili bilgileri arar.
- LLM, erişilen sonuçları her ajanın araştırma sorusuyla karşılaştırır ve alaka düzeyine göre sıralar.
- LLM, bilgileri değerlendirir ve bilgi eksikliği olan noktalarda ilgili ajanlar aracılığıyla ek aramalar tetikler.
- Yeterli bilgi alındıktan sonra LLM, (şirket içi belgelerden alınan) mevcut finansal rakamlara dayanarak senaryo tahminleri oluşturur ve her senaryo için kazançları öngörmek üzere bir hesap makinesi aracını çağırır.
- LLM, erişilen bilgileri ve hesaplamaları kullanarak ve gerektiğinde kaynak göstererek nihai bir yanıt üretir.
RAG için sırada ne var?
Güncel yenilikler; mevcut RAG mimarilerine derinlik ve hız kazandırmaya, multimedya erişiminin doğruluğunu artırmaya ve en güncel bilgilerle çalışacak şekilde tasarlanmış sistemler oluşturmaya odaklanıyor.
Araştırmanın yönünü şu anda şekillendiren üç eğilim:
- Birden fazla kaynakta derin araştırma: Bu, aramaları planlayabilen, birbirinden farklı kaynaklarda birden fazla dal çalıştırabilen, erişilen kanıtları değerlendirebilen ve üretilen yanıtları kendi kendine optimize edebilen bir RAG mimarisidir. Tüm bu görevleri yerine getirebilen ajan tabanlı RAG giderek daha hızlı ve uygun maliyetli hale geliyor.
- Çok modlu uygulamalar: Erişim işlem hatları görsellerle ve videolarla çalışmada giderek daha iyi hale geliyor. Uzun videolar ve gelişmiş diyagramlar gibi karmaşık çok modlu verilerde belirli bilgi türlerini giderek daha isabetli biçimde tespit edebiliyorlar.
- Yanıtları sürekli değişen bilgilere dayandırma: LLM tabanlı uygulamalar, girdi bağlamı sağlamak için canlı bilgi kaynaklarından (video akışları ve sensörler gibi) yararlanabilir. Sistemler ayrıca bu verileri yorumlamak için GraphRAG'de olduğu gibi çok yönlü bilgi ağları da oluşturabilir.
RAG, LLM tabanlı uygulamaların çalışma biçiminin temelini oluşturur. Sıradan tüketicilerden uzmanlık alanlarında faaliyet gösteren kurumlara kadar pek çok farklı kullanıcının halüsinasyonlar, eksik eğitim verileri ve uzmanlık gerektiren şirket içi bilgilere erişim eksikliğiyle ilgili sorunların üstesinden gelmesini sağlar.
Bu nedenle RAG sistemleri ve bunların temelindeki mimari, yapay zeka araştırmalarının en hızlı ilerleyen ve en heyecan verici alanlarından birini temsil ediyor.