Hibrit aramada birleştirme, filtre ve yeniden sıralama
İki arama yönteminin sonuçlarını sıra üzerinden birleştirmeyi, filtrenin aramanın neresinde uygulanacağını ve yeniden sıralama katmanının gecikme karşılığında ne kazandırdığını anlatır.
BU DERSİN SONUNDA
- Sözcük ve anlamsal aramanın hangi sorgu tipinde çöktüğünü ayırt etmek
- Filtreyi aramanın doğru adımında uygulamak
- Aday derinliği ile yeniden sıralama maliyeti arasında bütçe kurmak
- Yeniden sıralayıcının değer katıp katmadığına ölçümle karar vermek
- 1
Teori
Kavramın çalışma mantığı
- 2
Örnek
Gerçek bir senaryo üzerinde gösterim
- 3
Lab
Uygulamalı alıştırma
- 4
Test
Kısa ölçüm
- 5
Proje
Rotadaki projeye katkı
Kısa cevap
Hibrit arama, anlamsal arama ile sözcük eşleşmesini paralel koşturup iki sıralı listeyi tek listede toplamaktır. Yeniden sıralama ise bu birleşik listenin yalnızca üst bölümünü, sorgu ile parçayı birlikte okuyan daha pahalı bir modele yeniden dizdirmektir. Birincisi doğru parçayı aday kümesine sokar, ikincisi onu yukarı taşır; ikisi farklı iş yapar ve birbirinin yerine geçmez.
Teori: iki körlük, iki maliyet#
Sözcük tabanlı arama terimi görür, anlamı görmez: belgede geçen kodu, madde numarasını, ürün adını birebir bulur ama kullanıcı kendi kelimeleriyle sorduğunda boş döner. Anlamsal arama anlamı görür, terimi gözden kaçırır: iki metin anlamca neredeyse aynı olduğunda aralarındaki kod farkını ayırt etmeyebilir. Gerçek bir dizinde her iki sorgu tipi de bulunduğu için tek yöntem seçmek, sorguların bir bölümünü peşinen kaybetmek demektir.
Maliyet tarafında da ayrışırlar. Gömme tabanlı arama parçaların vektörünü önceden hesaplar; sorgu anında yalnızca sorgu vektörlenir ve yakınlık aranır, bu yüzden aday sayısını büyütmek görece ucuzdur. Yeniden sıralayıcı ise sorgu ile parçayı aynı anda okur ve her aday için ayrı bir geçiş gerektirir, dolayısıyla maliyeti aday sayısıyla birlikte büyür. Hattın klasik şekli bu asimetriden doğar: geniş getir, dar sırala.
Hangi sorgu hangi yöntemle bulunur#
| Sorgu örneği | Sözcük araması | Anlamsal arama | Sonuç |
|---|---|---|---|
| madde 7/b izin süresi | Madde numarasını birebir yakalar | Anlamca yakın başka maddeleri getirir | Sözcük tarafı belirleyici |
| çalışanın tatil hakkı ne kadar | Bu kelimeler belgede geçmiyorsa boş döner | İzin maddesini bulur | Anlamsal taraf belirleyici |
| RX-220 kalibrasyon aralığı | Model kodunu tam eşleştirir | Komşu model belgelerini karıştırır | Sözcük tarafı belirleyici |
| cihaz açılmıyor ne yapmalıyım | Yalnızca aynı sözcükleri içeren kaydı bulur | Farklı ifade edilmiş arıza kaydını da bulur | Anlamsal taraf belirleyici |
| güncel fiyat listesi hangisi | Sürüm ayrımını yapamaz | Sürüm ayrımını yapamaz | Filtre olmadan ikisi de yetersiz |
Birleştirme: puan değil sıra#
İki yöntemin ürettiği puanlar aynı ölçekte değildir: yakınlık puanı dar bir aralıkta gezerken sözcük puanı belge uzunluğuna ve terim seyrekliğine göre serbestçe büyür. Puanları doğrudan toplamak, ölçeği geniş olan yöntemi sessizce baskın hale getirir ve ağırlık ayarını anlamsız kılar. Yaygın çözüm yalnızca sıraları kullanmaktır: her belge, göründüğü listelerdeki sırasının tersinden bir katkı toplar, böylece hiçbir listede birinci olmayan ama ikisinde de üstlerde duran belge yukarı çıkar.
Filtre aramanın neresinde#
Yetki, dil, sürüm ve tarih filtreleri aramanın parçası olmalı, arama sonrası bir ayıklama adımı değil. Sonradan filtrelemede dizin en yakın adayları filtreden habersiz seçer; adayların çoğu elendiğinde geriye çok az sonuç kalır, kimi sorguda hiç kalmaz. Arama filtreyi bildiğinde ise adaylar zaten izin verilen küme içinden seçilir. Yetkide bu ayrım sadece kaliteyle ilgili de değildir: eleme adımındaki tek bir hata, kullanıcının görmemesi gereken metni bağlama taşır.
Yeniden sıralama ne zaman değer katar#
- 1Önce tavanı ölçün
Aday kümesini genişletip doğru parçanın adaylar arasına girme oranına bakın. Bu oran düşükse yeniden sıralayıcı işe yaramaz; olmayan parçayı yukarı taşıyamaz, önce getirme tarafı düzeltilir.
- 2Aday derinliğini seçin
Yeniden sıralayıcıya verilecek aday sayısı, tavana ulaşan en küçük sayı olmalı. Derinliği artırmak isabeti bir noktadan sonra artırmazken gecikmeyi büyütmeye devam eder.
- 3Gecikme bütçesini bölün
Kullanıcının kabul ettiği toplam süreden üretim adımının payını düşün; kalan süre getirme ve yeniden sıralamaya aittir. Katman bu payı aşıyorsa ya derinlik düşürülür ya da katman yalnızca belirli sorgu tiplerinde çalıştırılır.
- 4Ölçüp karşılaştırın
Aynı soru setini katmanlı ve katmansız koşturup ilk sıralardaki ilgili parça sayısını ayrı ayrı raporlayın. Fark ölçülebilir değilse katman gecikmeyi karşılıksız artırıyordur.
Sık yapılan hata#
Sahada en sık görülen yanılgı, yeniden sıralayıcıyı getirme sorununun çaresi saymaktır. Yeniden sıralayıcı yalnızca kendisine verilen adayların sırasını değiştirir; doğru parça aday kümesinde yoksa yapabileceği hiçbir şey yoktur ve eklenen gecikme tamamen boşa gider. İkinci yanılgı, iki arama yönteminin ağırlığını bir kez ayarlayıp sabitlemektir: sorgu dağılımı değiştikçe doğru ağırlık da değişir, bu yüzden ağırlık ölçümle birlikte yaşayan bir karardır.
LAB · UYGULAMALI ALIŞTIRMA
Sorgu günlüğünüzü üç arama düzeniyle koşturun
- 1Gerçek kullanıcı sorularından 20 tanesini seçin ve her birini iki sınıftan birine koyun: terim ağırlıklı (kod, madde numarası, ürün adı içeren) veya ifade ağırlıklı (kullanıcının kendi kelimeleri).
- 2Aynı dizinde üç arama koşturun: yalnız anlamsal, yalnız sözcük tabanlı ve sıra birleştirmeli hibrit.
- 3Her sorgu için ilk beş sonucu elle ilgili veya ilgisiz diye işaretleyin ve sayıları iki sorgu sınıfı için ayrı toplayın.
- 4Hibritin hangi sınıfta tek yöntemi geçtiğini, hangisinde altında kaldığını yazın.
- 5Aday derinliğini iki kademede deneyin (bu alıştırmada 20 ve 60 aday varsayın) ve her sorgu için iki şeyi ayrı yazın: işaretlediğiniz metin aday kümesine girdi mi (tavan) ve ilk beşe girdi mi.
- 6Tavana girip ilk beşe giremeyen sorguları sorgu sınıfına göre sayın; yeniden sıralamayı yalnızca bu sayının yüksek olduğu sınıfta denemeyi, tavanı zaten düşük olan sınıfta ise önce getirme tarafını düzeltmeyi öneren tek paragraflık bir karar notu yazın.
Beklenen çıktı
İki sorgu sınıfında üç arama düzeninin tavan ve ilk-beş isabet tablosu, artı yeniden sıralamanın hangi sorgu sınıfında deneneceğini tavan sayısına dayandıran yazılı bir karar notu.
Sık sorulan sorular
Hibrit aramada iki yönteme eşit ağırlık vermek doğru mu?
Eşit ağırlık makul bir başlangıçtır ama sonuç değildir. Doğru ağırlık sorgu dağılımınıza bağlıdır: kullanıcılar çoğunlukla belgedeki terimi birebir yazıyorsa sözcük tarafı, kendi ifadeleriyle soruyorsa anlamsal taraf daha ağır olmalıdır. Kararı kendi sorgu günlüğünüzle ölçün ve dağılım değiştikçe yeniden bakın.
Yeniden sıralayıcı neden aday kümesinin tamamına uygulanmıyor?
Çünkü maliyeti aday sayısıyla birlikte büyür: sorguyu ve parçayı birlikte okuyup her aday için ayrı bir geçiş yapar. Gömme araması ise parça vektörlerini önceden hesapladığı için aday kümesini büyütmeye çok daha dayanıklıdır. Hattın geniş getirip dar sıralamasının nedeni tam olarak bu maliyet farkıdır.
Yetki filtresini arama sonrasında uygulamak neden riskli?
Filtre arama sonrasına bırakıldığında kullanıcının görmemesi gereken parçalar dizin tarafından zaten seçilmiş olur ve onları yalnızca bir eleme adımı durdurur. O adımdaki tek bir aksaklık, örneğin eksik bir alan veya hata durumunda atlanan bir kod yolu, metni doğrudan bağlama taşır. Filtre aramanın parçası olduğunda o parçalar hiç seçilmez ve risk kaynağında kapanır.
LEARN
RAG Mühendisi rotasına devam et
Dersler tek başına da okunabilir, ama sıralı ilerlemek önkoşul boşluklarını kapatır.
