Reranking: RAG'de getirilen sonuçları doğru sıraya koymak
Beceri rehberi

Reranking: RAG'de getirilen sonuçları doğru sıraya koymak

Hazırlayan: Mindset Institute EditörlüğüGüncellendi: 5 dk okuma

Reranking nedir, bi-encoder ile cross-encoder farkı, aday sayısı seçimi, gecikme dengesi ve etkisini nasıl ölçeceğiniz adım adım anlatılıyor.

Reranking RAG'de hangi sorunu çözer?

RAG sistemlerinde ilk arama genellikle hız için tasarlanır: Soru bir vektöre çevrilir, vektör veritabanı en yakın parçaları döndürür. Bu yöntem milyonlarca parça içinde saniyenin küçük bir bölümünde sonuç verir, ama sıralaması kusursuz değildir. Vektör benzerliği "konu olarak yakın" parçaları bulur; "bu soruya tam cevap veren" parçayı her zaman en üste koymaz.

Sonuç şudur: Doğru bilgi getirilen listede vardır ama sıralamanın gerilerinde kalmıştır. Modele yalnızca üstteki birkaç parça verildiğinde cevap eksik ya da yanlış çıkar. Tüm listeyi modele vermek ise hem maliyeti hem de dikkat dağınıklığını artırır. Yeniden sıralama (reranking), geniş bir aday listesini daha dikkatli bir modelle tekrar puanlayıp en ilgili parçaları üste taşıyarak bu boşluğu kapatır.

Bi-encoder ve cross-encoder arasındaki fark

Reranking'in neden çalıştığını anlamak için model türlerini ayırmak gerekir. Sentence Transformers dokümantasyonunun anlattığı biçimiyle bi-encoder, soruyu ve her parçayı birbirinden bağımsız olarak vektöre çevirir; benzerlik bu vektörlerin karşılaştırılmasıyla bulunur. Parça vektörleri önceden hesaplanıp dizinlenebildiği için büyük koleksiyonlarda çok hızlıdır.

Cross-encoder ise soruyu ve parçayı aynı anda modele verir ve çifte tek bir ilgililik puanı üretir. Soru ile parçanın kelimeleri birbirini doğrudan görür, bu yüzden genellikle daha isabetlidir. Karşılığında vektör üretmez, dolayısıyla dizinlenemez; her soru-parça çifti için model çalışmak zorundadır ve büyük koleksiyonun tamamında kullanmak pratik değildir.

En yaygın çözüm bu yüzden ardışık çalışır: Önce bi-encoder ile hızlıca aday listesi getirilir, sonra cross-encoder yalnızca bu küçük listeyi puanlar. Hız ilk aşamadan, isabet sonraki aşamadan gelir.

Adım adım: reranking nasıl eklenir?

Mevcut bir RAG hattına reranking eklemek genellikle şu sırayla ilerler.

  • Aday sayısını genişletin: Hattınız doğrudan birkaç parça getiriyorsa, ilk aşamada daha fazla aday çekin. Reranker'ın seçme şansı olması için listenin yeterince geniş olması gerekir.
  • Reranker'ı seçin: Barındırılan bir reranking servisi ya da kendi sunucunuzda çalışan açık bir cross-encoder modeli kullanabilirsiniz. Türkçe içerik için modelin çok dilli olması ve Türkçe örneklerde denenmiş olması şarttır.
  • Soru ile her adayı çift olarak puanlatın ve puana göre yeniden sıralayın.
  • Yalnızca en üstteki birkaç parçayı üretici modele verin. Bu, bağlam penceresini temiz tutar.
  • İsteğe bağlı olarak düşük puanlı parçaları bir eşikle eleyin. Hiçbir aday yeterli puan almıyorsa sistem "bu konuda belgede bilgi bulamadım" diyebilir.
  • Öncesi ve sonrasını aynı değerlendirme setiyle karşılaştırın.

Bu akışta ayar noktaları aday sayısı, reranker'a verilen metin uzunluğu ve eşik değeridir. Hepsi değerlendirme verisiyle belirlenir, tahminle değil.

Gecikme ve maliyet dengesi

Reranking kaliteyi artırır ama bedelsiz değildir. Cross-encoder her aday için çalıştığından aday sayısı arttıkça gecikme ve hesaplama maliyeti de artar. Kullanıcıya anlık cevap veren bir sohbet arayüzünde bu fark hissedilir; toplu raporlama gibi gecikmenin önemli olmadığı işlerde ise rahatlıkla kabul edilir.

Dengeyi kurmak için kullanılan yöntemler şunlardır: Aday sayısını kaliteyi bozmayacak en küçük değerde tutmak, parçaları reranker'a verirken makul uzunlukta kesmek, benzer soruların sonuçlarını önbelleğe almak ve reranker'ı aynı bölgede, aynı ağda çalıştırarak ağ gecikmesini azaltmak. Küçük bir modelin hızlı ama biraz daha az isabetli olması çoğu uygulamada kabul edilebilir bir takas olabilir; bunu ölçmeden karar vermeyin.

Her reranker çağrısı ayrıca bir bağımlılıktır. Barındırılan serviste kesinti ya da sınır aşımı olursa hattın yedek davranışı olmalıdır: Reranker cevap vermezse ilk aşamadaki sıralamayla devam etmek gibi.

Reranking'in işe yaradığını nasıl kanıtlarsınız?

Reranking eklemek sezgisel olarak cazip olduğu için ölçmeden benimsenir; oysa her veri kümesinde aynı kazancı vermez. Değerlendirme için etiketli bir soru seti hazırlanır: Her soru için hangi parçanın doğru olduğu bellidir. Reranker öncesi ve sonrası aynı sette şu metriklere bakılır: Doğru parçanın ilk sonuçlar içinde olma oranı, doğru parçanın ortalama sırası ve nihai cevabın bağlama sadakati.

Örneğin bir ürün dokümantasyonu asistanında "garanti kapsamı" sorusuna genel garanti özetinin her zaman en üstte geldiğini, kapsam istisnalarını anlatan parçanın ise geride kaldığını düşünelim. Reranker sonrası istisna parçası üst sıralara çıkıyorsa kazanç somuttur. Çıkmıyorsa sorun sıralamada değil, parçalamadadır: İstisna bilgisi başka bir bölümle aynı parçaya karışmış olabilir.

Reranker ile birlikte hibrit arama gibi önceki aşama iyileştirmelerini de ayrı ayrı ölçün. Aksi halde kalite artışının hangi değişiklikten geldiğini bilemezsiniz.

Sık yapılan hatalar

Reranking uygulamalarında tekrar eden hatalar şunlardır:

  • Aday listesini çok dar tutmak: İlk aşama doğru parçayı hiç getirmiyorsa reranker onu kurtaramaz. Sıralayıcı yalnızca önüne konanı sıralar.
  • Dili kontrol etmemek: İngilizce eğitilmiş bir reranker Türkçe sorularda beklenenden zayıf kalabilir.
  • Çok uzun parçaları kesmeden vermek: Model girdi sınırını aşarsa metnin sonu sessizce kaybolabilir.
  • Reranker skorunu kesin olasılık sanmak: Puanlar modele özgü ölçektedir; eşik değeri kendi verinizde belirlenmelidir.
  • Reranking'i parçalama ve metadata sorunlarını örtmek için kullanmak: Kötü parçalanmış içerik sıralamayla düzelmez.

Önce erişimin temelini, yani parçalamayı, embedding modelini ve arama yöntemini sağlamlaştırmak; reranking'i ise son iyileştirme katmanı olarak eklemek en verimli sıradır.

Bu beceriyi Mindset programlarında nerede çalışırsınız?

Retrieval-Augmented Generation (RAG) Sistemleri eğitiminde "Gelişmiş Geri Alma ve Yeniden Sıralama" ve "RAG Boru Hattı Değerlendirmesi" modülleri bulunur. İleri RAG Mimarileri: Hybrid Search ve Reranking eğitiminin modülleri ise erişim kalitesinin sınırlarından hibrit arama kurulumuna, yeniden sıralamadan sorgu dönüşümüne uzanır.

Bu içerikler, RAG hattını üretime taşıyan yazılım ve yapay zeka mühendisleri için uygundur; kurumsal bir bilgi asistanı projesinde erişim kalitesinden sorumlu ekip üyelerinin ortak bir yöntem kümesi edinmesine de hizmet eder.

İlgili Mindset programı

Retrieval-Augmented Generation (RAG) Sistemleri

Sık sorulanlar

Sık sorulan sorular

Reranking her RAG sisteminde gerekli midir?

Gerekli değildir. Doküman havuzu küçükse ve ilk aramadaki sıralama zaten isabetliyse ek bir model gecikme ve maliyet getirir, kazanç sağlamaz. Sorular belirsizse, parçalar birbirine benziyorsa ya da doğru bilgi sık sık sıralamada geride kalıyorsa reranking anlamlı hale gelir. Karar için önce ölçüm yapılmalıdır.

Reranker ile embedding modeli aynı şey midir?

Aynı değildir. Embedding modeli metni bağımsız bir vektöre çevirir ve hızlı arama için kullanılır. Reranker ise soru ve parçayı birlikte okuyarak çift için ilgililik puanı üretir. Embedding aday bulur, reranker adayları daha hassas biçimde sıralar; ikisi birbirinin alternatifi değil, tamamlayıcısıdır.

Reranking uydurma cevap riskini azaltır mı?

Dolaylı olarak azaltabilir. Daha ilgili parçalar modele ulaştığında modelin bağlam dışına çıkma ihtiyacı azalır. Ancak reranking tek başına uydurmayı önlemez. Cevabın bağlama sadakatini ayrıca ölçmek ve bilgi yoksa bunu söylemesini sağlayan istem kuralları eklemek gerekir.

Barındırılan servis mi, kendi modelim mi tercih edilmeli?

Barındırılan servis hızlı başlangıç sağlar ama verinin dışarı çıkması, maliyet ve bağımlılık konularını beraberinde getirir. Kendi sunucunuzda çalışan model veriyi içeride tutar, ancak altyapı ve bakım yükü size aittir. Gizlilik gereksinimi, trafik hacmi ve ekip yetkinliği karar ölçütleridir.

Hibrit arama varsa reranking yine de gerekir mi?

Çoğu zaman birbirini tamamlarlar. Hibrit arama, adayların kapsamını anahtar kelime ve anlam yoluyla genişletir; reranking bu geniş listeyi soruya göre sıralar. Hibrit aramanın sonuçları zaten yeterince isabetliyse reranking'in katkısı ölçülmeli ve katkı azsa eklenmemelidir.

RAG'de Yeniden Sıralama (Reranking) Nasıl Uygulanır