RAG (Retrieval-Augmented Generation): Tanım ve Çalışma Şekli

RAG (Retrieval-Augmented Generation, arama ile zenginleştirilmiş üretim), yanıt üretmeden önce bir dil modelinin bir belge tabanında arama yapmasını sağlamaktan ibarettir.

Atako ajanları tarafından yazıldı · İnceleyip onaylayan Romain Laodicina · Atako CTO'su

Kısa tanım

RAG (Retrieval-Augmented Generation), bir belge arama motorunu bir dil modeliyle birleştiren bir yöntemdir: yanıt vermeden önce model, harici bir tabanda ilgili pasajları arar, ardından yanıtını bu pasajlardan üretir. Bu, uydurmaları sınırlar ve güncel ya da şirkete özgü bilgilerin kullanılmasını sağlar.

RAG, araç çağrısı ve kalıcı hafızanın yanı sıra günümüzün otonom yapay zeka ajanlarını besleyen teknik yapı taşlarından biri. Kısaltma, Mayıs 2020'de Facebook AI Research'ten (bugünkü Meta) bir ekip tarafından, başını Patrick Lewis'in çektiği bir araştırma makalesinden geliyor. O dönemde tespit basitti: büyük dil modelleri parametrelerinde etkileyici miktarda bilgi depoluyordu, ama bunu ne kolayca güncelleyebiliyor ne de kesin olarak bir kaynağa işaret edebiliyordu. RAG bir çözüm öneriyor: her şeyi eğitim sırasında donmuş hafızasına yaslamak yerine, modelin yanıt verirken bilgiyi harici bir tabanda aramasına izin vermek.

Ayrıntılı Tanım

Retrieval-Augmented Generation, ya da aramayla zenginleştirilmiş üretim, iki ayrı yapı taşını birleştiren bir mimariyi tanımlar: harici bir belge tabanında ilgili pasajları arayan bir arama (retrieval) mekanizması ve bu pasajlardan yola çıkarak nihai yanıtı yazan bir metin üretim modeli. Lewis ve ortak yazarlarının (NeurIPS 2020) kurucu makalesinde RAG, belirli bilgi gerektiren görevlerdeki performansı artırmak için parametrik bir hafızayı (önceden eğitilmiş modelin iç bilgisi) ve parametrik olmayan bir hafızayı (anlık olarak danışılan bir belge tabanı) birleştirir.

Bu tanım etrafında geniş bir fikir birliği var: ister akademik literatürde ister NVIDIA'nınki gibi genel kamuya yönelik açıklamalarda olsun, RAG her zaman aynı iki aşamalı mekanizmaya, önce arama sonra üretim, geri dönüyor. Farklılıklar esas olarak teknik uygulamayla ilgili (vektör tabanının türü, belgelerin parçalanma yöntemi, alınan pasaj sayısı), ilkenin tanımıyla değil.

RAG, dil modellerinin bilinen iki sınırına yanıt verir: model makul ama yanlış bir yanıt uydurduğunda ortaya çıkan halüsinasyonlar ve bir bilginin modelin eğitim tarihinden bu yana değişmiş olduğu eskimişlik. Üretimi gerçek ve güncel belgelere dayandırarak RAG, modeli yeniden eğitmeye gerek kalmadan bu iki sorunu azaltıyor.

Nasıl Çalışır

Tipik bir RAG isteğinin işleyişi üç adımı izler. Öncelikle, kullanıcının sorusu (ya da bir ajanın ihtiyacı), sıklıkla metnin vektör temsilleri üzerinde bir benzerlik araması yoluyla, bazen klasik anahtar kelime aramasıyla birleştirilerek bir belge tabanında bir aramaya dönüştürülür. Ardından bu aramanın getirdiği en ilgili pasajlar, başlangıçtaki sorunun yanı sıra dil modeline gönderilen bağlama enjekte edilir. Son olarak model, ideal olarak doğaçlama yapmak yerine bu pasajların içeriğine atıf yaparak ya da uyum sağlayarak, bu pasajlara dayanarak yanıtını üretir.

Bu mekanizma, otonom bir yapay zeka ajanı tarafından kullanılmaya iyi uyar: belge araması, her yanıttan önce sistematik olarak tetiklenmek yerine, ajanın buna ihtiyaç duyduğuna karar verdiği anda kendisinin çağırdığı bir araç olarak sunulabilir. Bu, her isteğin öncesine bağlanmış "statik" bir RAG ile modelin ne zaman, ne arayacağına ve ilk sonuç yetmezse yeniden aramaya gerek olup olmadığına karar verdiği "ajansal" bir RAG arasındaki farktır.

Atako'dan Somut Bir Örnek

Atako'nun kamuya açık belgeleri, ajanları tarafından kullanılan iç belge arama mimarisini ayrıntılandırmıyor; dolayısıyla burada Atako'nun Lewis ve ark.'nın makalesinin katı anlamıyla RAG kullandığını iddia etmek mümkün değil. Belgelenen şey ise en yakın mekanizma: her ajan, klasörler halinde organize edilmiş, önizlenebilir formatlarla (Markdown, CSV, JSON, PDF, HTML, görseller, metin, kaynak kodu) şirket tarafından paylaşılan bir dosya kütüphanesine sahip. Bu dosyalar bir ajanla salt okunur olarak paylaşılabilir ya da bir insan veya ajanın kendisi tarafından ona ait özel bir klasöre eklenebilir.

Bu dosya kütüphanesi, yeniden başlatmalara ve duraklamalara dayanan bir ajanın kalıcı hafızasıyla birleştiğinde, ajanın yanıt vermeden ya da işlem yapmadan önce danışabileceği harici bir bilgi tabanı rolünü oynar; bu da ruhen RAG ilkesiyle örtüşür: yalnızca modelin eğitimde ezberlediğine dayanmak yerine gerçek bilgi aramaya gitmek. Örneğin müşteri desteği için yapılandırılmış bir ajan, bir talebe yanıt vermeden önce cevabı tahmin etmek yerine kendi klasöründe paylaşılan ürün belgelendirme dosyalarına danışabilir.

Sık Yapılan Hatalar

İlk sık karışıklık: RAG'ın bir yazılımda bir düğme gibi tek tıkla etkinleştirilen bir özellik olduğuna inanmak. Gerçekte bu, yanıtların kalitesini doğrudan belirleyen somut teknik seçimleri (belgelerin nasıl parçalanacağı, nasıl indeksleneceği, kaç pasajın getirileceği) içeren bir mimaridir.

İkinci hata: RAG'ın halüsinasyonları tamamen ortadan kaldırdığını düşünmek. Üretimi doğrulanabilir belgelere dayandırarak bunları azaltır, ama bir model bir pasajı yine de yanlış yorumlayabilir ya da kusurlu bir aramanın getirdiği ilgisiz belgelerden bir yanıt üretebilir. RAG riski taşır, ortadan kaldırmaz.

Üçüncü hata: RAG ile fine-tuning'i karıştırmak. Fine-tuning, modeli belirli veriler üzerinde yeniden eğiterek kalıcı olarak değiştirir; RAG ise modeli olduğu gibi bırakır ve her istekte danışılan harici bir taban ekler; bu, güncellenmesi daha hızlı ve genellikle daha az maliyetlidir.

Son olarak, belge tabanının kalitesinin önemini hafife almak klasik bir hatadır. Eski, kötü yapılandırılmış ya da eksik belgelere bağlanmış bir RAG sistemi, arkasında kullanılan üretim modeli ne kadar güçlü olursa olsun, düşük kaliteli yanıtlar üretecektir.

İlgili terimler

Sık sorulan sorular

RAG, yapay zekada ne anlama gelir?

RAG, Retrieval-Augmented Generation, yani aramayla zenginleştirilmiş üretim anlamına gelir. Bu, dil modelinin yanıtını yazmadan önce, yalnızca eğitim sırasında öğrendiklerine dayanmak yerine ilgili belgeleri aratmasını sağlayan bir yöntemdir.

Tek başına bir modelden ziyade neden RAG kullanılır?

Tek başına bir model, eğitim sırasında ezberlediğiyle yanıt verir; bu bir şirkete özgü konularda eski ya da eksik olabilir. RAG, güncel bir tabanda bir arama adımı ekler, bu da uydurulmuş yanıtları azaltır ve kesin, doğrulanabilir kaynaklar göstermeyi mümkün kılar.

RAG, bir yapay zeka modelinin halüsinasyonlarını tamamen ortadan kaldırır mı?

Hayır, tamamen ortadan kaldırmadan azaltır. Belge araması ilgisiz pasajlar getirirse ya da model bunları yanlış yorumlarsa, yanlış bir yanıt yine de mümkün kalır. RAG, yanıtı kaynaklara dayandırarak güvenilirliği artırır, ama bu mutlak bir garanti değildir.

RAG ile bir modelin fine-tuning'i arasındaki fark nedir?

Fine-tuning, modeli belirli veriler üzerinde yeniden eğiterek iç parametrelerini değiştirir; bu pahalıdır ve bilgiyi eğitim anına sabitler. RAG ise modeli olduğu gibi bırakır ve her istekte danışılan harici bir belge tabanı ekler; bu tabanı modeli değiştirmeden istediğiniz an güncelleyebilirsiniz.

Sırada ne okumalı

Kaynaklar

Romain Laodicina

Atako CTO'su

Bu içerik Atako'nun yapay zeka ajanları tarafından yazılmış, ardından Atako CTO'su Romain Laodicina tarafından gözden geçirilmiş, düzeltilmiş ve onaylanmıştır.

İlk AI ajanlarınızı dağıtın

Hesabınızı ücretsiz oluşturun ve kod yazmadan birkaç dakikada bir ajan başlatın.

AI'nin bir adım önünde kalın.

Ürün yeniliklerini, yeni ajanları ve AI analizlerimizi doğrudan e-posta kutunuzda alın. Spam yok, istediğiniz zaman abonelikten çıkın.