Retrieval-Augmented Generation (RAG) sistemlerini bir demodan üretim (production) servisine taşıyan ekipler, yararlı bir asistan ile gürültülü bir asistanı birbirinden ayıran birkaç kritik kararla karşılaşırlar. Beş tasarım tercihi —chunking (parçalara ayırma), embedding modeli, vektör deposu, hibrit arama ve değerlendirme— gerçek kullanıcıların deneyimlediği kesinliği (precision), geri çağırmayı (recall) ve gecikmeyi (latency) kontrol eder.
Prototipten üretime geçiş neden önemlidir
Çoğu eğitim rehberi, bir RAG hattını birkaç düzine satır kodla çalıştırır, ancak canlı trafik için gereken mühendislik titizliğine ulaşmadan durur.
1. Chunking stratejisi – ilk kalite kapısı
Chunk (parça) boyutu en önemli unsurdur. Büyük parçalar, ilgisiz metinlerle sinyali boğar; çok küçük parçalar ise modelin tutarlı yanıtlar üretmek için ihtiyaç duyduğu çevre bağlamını yok eder. Sabit boyutlu bölme işlemi, kaynak materyalin doğal yapısını göz ardı eder.
Pratik kural
- Mantıksal sınırlardan bölün: belgelerdeki başlıklar, makalelerdeki paragraf geçişleri, koddaki fonksiyon tanımları.
- Parçaları hassas bir geri çağırma (retrieval) için yeterince küçük tutun ancak LLM'in üretim adımı için daha büyük olan ana bölümü (parent section) saklayın. Bu "ebeveyn-çocuk" (parent-child) deseni, getiricinin (retriever) tam noktaya odaklanmış bir kesit sunmasını sağlarken, üreticinin (generator) gerçeklere sadık kalmak için yeterli bağlamı görmesine olanak tanır.
2. Embedding modelleri – benzerlik nasıl yargılanır
Embedding modeli, metni benzerlik arama motorunun karşılaştırabileceği vektörlere dönüştürür. OpenAI'ın text-embedding-3-large modeli gibi güçlü bir genel amaçlı model, çoğu alan için sağlam bir temel oluşturur. Eğer veri kümesi (corpus) oldukça uzmanlaşmış bir alandaysa —hukuki görüşler, tıbbi kayıtlar, teknik şartnameler— alana özgü bir modeli test edin, ancak bunu yalnızca kendi verilerinizde somut bir artış ölçtükten sonra yapın.
Ne zaman geçiş yapmalı
- Yalnızca uygulamanız için önemli olan alaka düzeyi puanlarında (örneğin, daha yüksek bağlam kesinliği) ölçülebilir bir kazanç görürseniz geçiş yapın.
3. Vektör veritabanı – depolamayı ölçeklendirme
Mevcut altyapınıza ve beklenen vektör sayısına uygun bir vektör deposu seçin.
- pgvector PostgreSQL içinde çalışır ve yaklaşık bir milyon vektöre kadar olan miktarı rahatlıkla yönetir. Halihazırda ilişkisel bir veritabanı işleten ve düşük bakım gerektiren bir çözüme ihtiyaç duyan ekipler için idealdir.
- Qdrant, 1 M–100 M aralığında parlar; daha büyük veri kümeleri için daha yüksek veri işleme kapasitesi (throughput) ve daha düşük gecikme süresi sunar.
- Pinecone, kendi kendine barındırmanın (self-hosting) operasyonel yükünü ortadan kaldıran, tamamen yönetilen bir bulut hizmeti sağlar.
4. Hibrit arama ve yeniden sıralama (reranking) – anlam ve kesinlik dengesi
Saf vektör araması anlamsal benzerlikte mükemmeldir ancak kullanıcıların beklediği tam anahtar kelime eşleşmelerini kaçırabilir. Hibrit arama, geleneksel bir BM25 anahtar kelime indeksini vektör indeksinin üzerine katman olarak ekler ve ardından iki sonuç listesini birleştirir. Reciprocal Rank Fusion (RRF), her adaya her iki listedeki sıralamasına göre bir puan atar ve her iki listede de üst sıralarda görünen öğeleri öne çıkararak bunları birleştirir.
Yeniden sıralama (reranking), son bir kesinlik filtresi ekler. Hibrit geri çağırmadan sonra, en iyi N adayı (genellikle 50) bir sorgu-doküman çiftini ortaklaşa puanlayan bir cross-encoder modeline besleyin. Cross-encoder'ın puanları orijinal benzerlik sayıları ile değiştirilir; böylece parçayı LLM'e iletmeden önce en alakalı olanı seçebilirsiniz. Bu ekstra adım, özellikle uzun veya gürültülü veri kümeleri için yanıt kalitesinde genellikle fark edilir bir artış sağlar.
5. Değerlendirme ve çekinme (abstention) – önemli olanı ölçmek
Ölçemediğiniz bir sistemi geliştiremezsiniz. RAGAS çerçevesi, bir RAG hattının sağlığını birlikte yakalayan dört metrik önerir:
- Bağlam Kesinliği (Context Precision) – geri çağrılan parçaların gerçekte yanıtı içeren oranı.
- Bağlam Geri Çağırma (Context Recall) – geri çağrılan tüm alakalı parçaların payı.
- Sadakat (Faithfulness) – üretilen yanıtın, halüsinasyonlardan kaçınarak geri çağrılan bağlam içinde kalma derecesi.
- Yanıt Alakalılığı (Answer Relevance) – nihai yanıtın orijinal sorguyu ne kadar iyi karşıladığı.
Bu metrikleri, üretim trafiğini yansıtan, sürekli güncellenen bir test seti üzerinde takip edin.
Son olarak, genellikle gözden kaçan bir koruma yöntemi de çekinmedir (abstention). Modeli düşük güvenle yanıt vermeye zorlamak yerine, sadakat veya alaka düzeyi puanı için bir eşik değer belirleyerek bir "Bilmiyorum" yanıtını tetikleyin. Kullanıcılar, kendinden emin ama yanlış bir yanıttansa belirsizliğin açıkça kabul edilmesini tercih ederler ve bu yedek plan, sonraki aşamalardaki destek maliyetlerini azaltır.
Bu beş alanın her birini "ayarla ve unut" şeklinde bir yapılandırma yerine bir karar noktası olarak ele alırsanız, RAG'ı gösterişli bir demodan güvenilir bir üretim servisine taşıyabilirsiniz. Sonuç: hızlı yanıt veren, konu dışına çıkmayan ve ne zaman sessiz kalması gerektiğini bilen bir sistem.
