Contextual Retrieval'e Giriş
- Bir yapay zeka modelinin belirli bir bağlamda faydalı olabilmesi için arka plan bilgisine ihtiyacı vardır
- Müşteri destek chatbot'larının belirli bir işletmeye dair bilgiye, hukuki analiz botlarının ise geçmiş vakalara dair kapsamlı bilgiye ihtiyacı vardır
- Geliştiriciler genellikle yapay zeka modelinin bilgisini geliştirmek için Retrieval-Augmented Generation (RAG) kullanır
- Geleneksel RAG çözümleri, bilgiyi kodlarken bağlamı ortadan kaldırdığı için ilgili bilgileri bulup getirmekte çoğu zaman başarısız olur
Contextual Retrieval Yöntemi
- Contextual Retrieval, RAG'in getirme aşamasını büyük ölçüde iyileştiren bir yöntemdir
- Contextual Embeddings ve Contextual BM25 adlı iki alt teknoloji kullanır
- Başarısız arama sayısını %49 azaltır ve yeniden sıralama ile birleştirildiğinde bu oran %67'ye kadar çıkabilir
- Claude kullanılarak Contextual Retrieval çözümü kolayca devreye alınabilir
Sadece Daha Uzun Prompt Kullanmak
- Bilgi tabanı 200.000 token'ın altındaysa, tüm bilgi tabanını modele vermek daha iyi bir yöntem olabilir
- Claude'un prompt caching özelliği kullanılırsa bu yaklaşım daha hızlı ve daha maliyet etkindir
- Bilgi tabanı büyüdükçe daha ölçeklenebilir bir çözüme ihtiyaç duyulur
RAG'in Temel Kavramı
- RAG, büyük bilgi tabanlarını işlemek için kullanılır
- Bilgi tabanı küçük metin parçalarına bölünür ve anlamı kodlamak için embedding modeli kullanılır
- Veriler, anlamsal benzerliğe göre aranmak üzere bir vektör veritabanında saklanır
- BM25, tam kelime veya ifade eşleşmelerini bulmada etkilidir
Geleneksel RAG'in Sınırları
- Belgeleri küçük parçalara ayırma sürecinde bağlam bozulabilir
- Örneğin, belirli bir şirketin finansal bilgilerini arayan bir soru için yeterli bağlam içermeyen parçalar döndürülebilir
Contextual Retrieval Uygulaması
- Her parçaya açıklayıcı bağlam eklenerek embedding ve BM25 indeksleri oluşturulur
- Her parça için kısa ve öz bağlam üretmek üzere Claude kullanılır
- Maliyeti azaltmak için prompt caching kullanılabilir
Performans İyileştirmesi
- Contextual Embeddings, arama başarısızlık oranını %35 azaltır
- Contextual Embeddings ile Contextual BM25 birlikte kullanıldığında arama başarısızlık oranı %49 azalır
Uygulama Sırasında Dikkat Edilecekler
- Belgelerin nasıl parçalara ayrılacağı, embedding modelinin seçimi ve özel bağlamlandırma prompt'ları gibi noktalar dikkate alınmalıdır
- Daha fazla parça eklemek, ilgili bilgilerin dahil edilme olasılığını artırır
Yeniden Sıralama ile Performans Artışı
- Yeniden sıralama, yalnızca en ilgili parçaları modele ileterek yanıt kalitesini artırır
- Yeniden sıralanmış Contextual Embedding ve Contextual BM25, arama başarısızlık oranını %67 azaltır
Sonuç
- Embeddings ile BM25'i birleştirmek daha iyi sonuçlar sağlayabilir
- Voyage ve Gemini embedding'leri en etkili seçeneklerdir
- Modele en iyi sonucu vermek için ilk 20 parçanın iletilmesi en etkilidir
- Bağlam eklemek arama doğruluğunu önemli ölçüde artırır
- Yeniden sıralama performansı daha da iyileştirir
GN⁺ Özeti
- Contextual Retrieval, yapay zeka modellerinin arama doğruluğunu büyük ölçüde artırabilecek bir yöntemdir
- Özellikle büyük bilgi tabanlarıyla çalışırken faydalıdır
- Claude'un prompt caching özelliği kullanılarak maliyet etkin biçimde uygulanabilir
- Benzer işlevlere sahip diğer projeler arasında OpenAI'nin GPT-3'ü ve Google'ın BERT'i bulunur
1 yorum
Hacker News görüşleri
Birinci görüş
İkinci görüş
Üçüncü görüş
Dördüncü görüş
h1,h2,h3başlıklarına göre chunk'lara bölüp, chunk başına başlıkları ekleme yöntemi kullanılıyorBeşinci görüş
Altıncı görüş
Yedinci görüş
Sekizinci görüş
Dokuzuncu görüş
Onuncu görüş