İnsanlar sürekli RAG için vefat ilanları yazıyor. Muhtemelen manşetleri görmüşsünüzdür. Uzun bağlam pencereleri (long context windows) onu öldürdü. Ajanlar (Agents) onun yerini aldı. Tüm bu desen artık demode. Gerçek ise daha dar kapsamlı ve çok daha kullanışlı. RAG ölmedi. Aslında çöken şey, bir yığın dokümanı parçalara (chunks) ayırıp bir vektör veritabanına yükleyerek aniden güvenilir ve doğru bir yapay zekaya sahip olabileceğiniz o rahat illüzyondu.

Birkaç yıl önce, sunulan teklif basitliğiyle cezbediciydi. Bilgi tabanınızı gömün (embed). Onu bir LLM'e bağlayın. Bir soru sorun ve modelin sadece sizin getirdiğiniz verileri kullanarak cevaplamasını izleyin. Kontrollü demolar ve küçük SSS (FAQ) botları için bu dürüst olmak gerekirse işe yarıyordu. Yirmi sayfalık bir yardım masası kılavuzu. Düzenli bir dahili wiki. Bot, aşağı yukarı doğru paragrafı alıntılar ve yönetim pilot uygulamayı onaylar. Ancak pilot uygulamalar üretim (production) değildir. Prototipler, gerçek iş operasyonlarının izlerini taşımaz.

Üretim verisi karmaşıktır. Onlarca dosya boyunca kopyalanmış, her biri biraz farklı zaman damgalarına ve çelişen durum etiketlerine sahip aynı sorun giderme notunu içerir. Sayfalar boyunca taşan ve bir ayırıcı (splitter) onları ortadan böldüğünde anlamsız hale gelen karmaşık tablolar barındırır. Çelişkileri özür dilemeden korur. 2023 politika kılavuzu bir şey söyler, Mart 2024 değişikliği ise başka bir şey. Eski PDF hiçbir zaman arşivlenmemiştir. Parçala, sakla ve getir (chunk, store, and retrieve) şeklindeki saf desen, her paragrafı izole bir ada gibi ele alır. Hiyerarşi, sürüm geçmişi veya çelişki çözümü konusunda hiçbir sezgiye sahip değildir. Model, LLM bozuk olduğu için değil, aldığı bağlam parçalanmış, yetim kalmış veya tamamen yanlış olduğu için halüsinasyon görür.

Bazı gözlemciler, milyonlarca tokenlık bağlam pencerelerinin veri getirmeyi (retrieval) gereksiz kıldığını iddia ediyor. Argümanları oldukça basit: Tüm külliyatı isteme (prompt) dökün ve modelin hepsini okumasına izin verin. Bu kulağa zarif geliyor. Aynı zamanda tehlikeli derecede iyimser. Bir model teknik olarak kısa bir romana eşdeğer bir metin hacmini işleyebilir, ancak o genişliğin ortasındaki tek bir spesifik maddeyi bulmak tamamen farklı bir yetenektir. İğneler samanlıkta kaybolmaya devam eder. Uzun bağlam pencereleri mevcut tuvali genişletir, ancak o tuvalde neyin yer almayı hak ettiğine karar verme şeklindeki zor işi çözmez. Sorun hiçbir zaman sadece veri getirmek değildi. Sorun her zaman ve hala bağlam birleştirme (context assembly) meselesidir.

Saf Veri Getirmeden Bağlam Mühendisliğine

2026 yılında, alan olgunlaşıyor. RAG'ın tek bir doğrusal boru hattı (pipeline) olarak görüldüğü aşamayı geçiyor ve bağlamı kasıtlı olarak mühendislik ürünü bir ürün olarak ele alan bir mimariye doğru ilerliyoruz.

Saf semantiğin ötesinde hibrit arama. Semantik benzerlik, niyeti anlamak için mükemmeldir ancak kesin tanımlayıcılar konusunda özensizdir. Eğer bir mühendis ERR_CONNECTION_REFUSED gibi belirli bir hata kodu veya v3.2.1 gibi bir yazılım sürümü sorgularsa, saf vektör araması, kavramsal olarak benzer ancak pratik olarak ilgisiz sonuçlar denizinde tam eşleşmeyi seyreltebilir. Buradaki evrim oldukça nettir. Modern sistemler, gömmelerin (embeddings) yanı sıra BM25 veya ters dizinler (inverted indexes) gibi yöntemler kullanarak yoğun vektör getirmeyi (dense vector retrieval) anahtar kelime aramasıyla birleştirir. Tam isimler, hata kodları, sürüm dizeleri ve ürün kimlikleri anahtar kelime katmanı tarafından yakalanırken, kavramsal nüanslar vektör katmanı tarafından ele alınır.

Üretimden önce yeniden sıralama (Reranking). Veri getirme, doğası gereği geri çağırma (recall) yanlılığına sahiptir. O tek bir altın paragrafı kaçırmaktan korktuğunuz için kırk veya elli parça çekersiniz. Ancak tüm bu gürültüyü büyük bir modele beslemek token'ları boşa harcar ve sinyali gömer. Yeniden sıralama, her bir adayı belirli bir sorguya göre alaka düzeyi açısından puanlayan ikinci ve genellikle daha küçük bir modelle bu sorunu çözer. En iyi beş pasaj ilerler, geri kalanı ise elenir. Bu, veri getirme ile üretim arasında bir hassasiyet filtresi görevi görerek, pahalı akıl yürütme modelinin yalnızca gerçekten önemli olanı okumasını sağlar.

Anlamı koruyan bağlamsal veri getirme. Parçalara ayırma (chunking) şiddetli bir eylemdir. Bir ayırıcı, bir paragrafı bölüm başlığından, tablo açıklamasından, çevresindeki yasal feragatnameden veya anlamını değiştiren dipnotundan koparabilir. Bağlamsal veri getirme, parçaları modele ulaşmadan önce zenginleştirerek bunu hafifletir. Kaynağı belirten meta verileri başa eklersiniz: Bu alıntı, Veritabanı Kesintisi bölümü, Kritik Önem derecesine sahip 2024 3. Çeyrek olay raporuna aittir. Model sadece yüzen bir cümle değil, konumlandırılmış bir bilgi parçası görür. Parça, yönünü yeniden bulur.

Niyete göre modüler yönlendirme. Her soru, dokümantasyonla dolu bir vektör deposuna ait değildir. Şifresini nasıl sıfırlayacağını soran bir kullanıcının muhtemelen bir yardım makalesine ihtiyacı vardır. Geçen çeyrekte Kuzeydoğu'da gelirin neden düştüğünü soran bir kullanıcının ise bölgesel satış stratejisi hakkında anlamsal olarak benzer bir paragrafa değil, bir veri ambarına yönelik SQL sorgusuna ihtiyacı vardır. Olgun sistemler artık sorguları niyete göre yönlendirerek uygun aracı seçiyor. Prosedürler için dokümantasyon. Yapılandırılmış analitikler için ilişkisel veritabanları. İzleme (trace) hata ayıklama için log toplayıcılar. Canlı durum bilgisi için API'ler. Geri çağırma (retrieval) katmanı bir monokültür değil, bir dağıtıcı haline geliyor.

Ajan tabanlı akıl yürütme döngüleri. Bazı sorular tek bir arama adımıyla yanıtlanamaz. Yeniden formüle edilmeleri gerekir. Belirsiz bir başlangıç sorgusu netleştirilir. Elde edilen iddialar ikinci bir kaynağa karşı çapraz kontrolden geçirilir. Eğer dokümantasyon API spesifikasyonu ile çelişiyorsa, sistem orta bir yol uydurmak yerine çelişkiyi işaretler. Model; ne zaman tekrar arama yapacağına, sorgusunu ne zaman rafine edeceğine ve ne zaman yanıtlamak için yeterli kanıt topladığına kendisi karar verir. Bu, tek seferlik bir geri çağırma değildir. Aramayı bir alt program olarak kullanan yapılandırılmış bir akıl yürütmedir.

İlişkisel sorular için GraphRAG. Belirli iş soruları cümlelerle değil, bağlantılarla ilgilidir. Hangi bileşen arızası hangi alt akış uyarılarını tetikledi? Hangi tedarikçi hangi fabrikayı besliyor ve alternatif rota nedir? Organizasyonda bu belirli bütçe kalemi üzerinde karar yetkisi kimde? Düz metin parçaları (chunks), bu ilişkileri düzleştirir çünkü bunlar topolojiyi koruyacak şekilde tasarlanmamıştır. Bilgi grafikleri (knowledge graphs) ise bunu yapar. Soru etki, izlenebilirlik, desenler veya ağ yapısı ile ilgili olduğunda, bir grafiği taramak, hiçbir paragraf geri çağırma işleminin taklit edemeyeceği bir bağlam sağlar.

Gerçekten Önemli Olan Sorular

RAG hakkındaki tartışmaların değişmesi gerekiyor. Genel bir RAG boru hattının (pipeline) nasıl kurulacağını sormayı bırakın. Modelin hangi spesifik görevi çözmesi gerektiğini, doğru sonuçlar için tam olarak hangi verilere ihtiyaç duyduğunu ve oluşturulan bağlamın yeterli olup olmadığını nasıl doğrulayacağınızı sormaya başlayın. Bu sorular sizi veri kalitesi, şema tasarımı, doğrulama döngüleri ve kaynak kökeni gibi daha temel (upstream) aşamalara zorlar. Bilgi tabanınızın otomatik tüketim için uygun olup olmadığını ortaya çıkarır.

RAG artık bir kez kurup unutacağınız tek bir doğrusal süreç değildir. Bir modelin etkili bir şekilde akıl yürütebilmesi için doğru bağlamı bir araya getirme disiplinidir. Bu, geri çağırmayı bir kütüphane içe aktarımı olarak değil, bir sistem tasarımı problemi olarak ele almak anlamına gelir.

Araçlar keskinleşiyor. Arama hibrit hale geliyor. Yönlendirme akıllı hale geliyor. Geri çağırma; sıralanmış, zenginleştirilmiş ve doğrulanmış durumda. 2022'nin basit yanılsamalarının çökmesi gerekiyordu ki yerlerine gerçekten yararlı bir şeyler gelebilsin. Artık işiniz sadece bir veritabanından metin çekmek değil; model düşünmeye başlamadan önce neye ihtiyacı olduğunu bilen sistemler inşa etmektir.

Eğer bu alanda geliştirme yapıyorsanız, GyaanSetu öğrenme topluluğu, aynı sorunları çözen insanlarla pratik notlar paylaşabileceğiniz bir yerdir: https://t.me/GyaanSetuAi