Ana içeriğe geç

AI Proxy'ye AI RAG Injection Politikası Eklenmesi

Bu senaryoda daha önce oluşturulan Knowledge Base, bir AI Proxy üzerine AI RAG Injection politikası eklenerek bağlanacaktır.

Böylece istemciden gelen soru önce Knowledge Base içinde aranır; bulunan doküman parçaları chat modeline bağlam olarak eklenir ve model bu bağlama göre cevap üretir.

Aşağıdaki grafikte yer alan numaralandırmalar işlemlerin yapılış sırasına aittir.

  • API Client soruyu AI Proxy'ye gönderir.
  • AI RAG Injection soruyu embedding'e çevirip Knowledge Base / Vector DB içinde arar.
  • Bulunan parçalar isteğe system / context olarak eklenir.
  • Chat LLM bağlama göre cevap üretir.
  • Yanıt API Client'a döner.
bilgi

Bu senaryo öncesi şu yapılandırmaların hazır olması gerekir:

  1. Embedding Provider + Vector DB
    RAG için Embedding Provider ve Vector DB Oluşturulması
  2. Knowledge Base ve indexlenmiş doküman
    Knowledge Base Oluşturulması ve Doküman Indexlenmesi
  3. Chat modeli tanımlı bir AI Proxy
    (ör. DeepSeek / deepseek-chat)
uyarı

AI Proxy Primary Routing alanına embedding modeli (all-minilm) konulmamalıdır.

  • Primary Routing / LLM Provider = chat modeli (deepseek-chat, phi3:mini vb.)
  • Embedding = Knowledge Base ve AI RAG Injection içinde kullanılır

AI Proxy'nin Seçilmesi

AI Gateway menüsü altında yer alan AI Proxies seçeneğine tıklanır.

Chat için kullanılacak proxy seçilir. Bu senaryoda örnek olarak DeepSeek chat modeli tanımlı bir AI Proxy kullanılır.

AI RAG Injection Politikasının Eklenmesi

Seçilen AI Proxy içinde Develop sekmesine tıklanır.

Request hattında Actions ardından Add Policy butonuna tıklanır.

Açılan politika listesinde AI Policies altında yer alan AI RAG Injection seçilir.

Add AI RAG Injection

Politika Alanlarının Doldurulması

Connection Settings

AlanDeğer
EnabledAçık
Knowledge BaseÖnceki senaryoda oluşturulan KB
Vector DB ConnectionPgVector bağlantısı (KB seçilince otomatik dolar)
Embedding ProviderOllama Embedding provider
Collection Nameollama_kb
RAG Connection Settings
ipucu

Knowledge Base dropdown'ından KB seçildiğinde Vector DB, Embedding Provider ve Collection Name alanları otomatik doldurur.

Retrieval Parameters

AlanÖnerilen DeğerAçıklama
Top K Results4Döndürülecek en yakın parça sayısı
Similarity Threshold0.50Benzerlik eşiği; çok yüksek tutulursa (0.70+) eşleşme kaçabilir
Max Context Characters8000Modele eklenecek bağlam üst sınırı
Embedding Model<embedding-modeliniz>Knowledge Base ile aynı model
Embedding Dimension384all-minilm için zorunlu
uyarı

Embedding Model alanında varsayılan olarak text-embedding-3-small gelebilir. Bu değer mutlaka all-minilm:latest olarak değiştirilmelidir.

Embedding Dimension alanında 1536 geliyorsa 384 yapılmalıdır. Aksi halde arama/index uyumsuzluğu oluşur.

Injection Settings

AlanÖnerilen Değer
Injection ModePrepend to System Message
On No MatchPass Through (no context)
Injection TemplateVarsayılan template kullanılabilir

Örnek template:

<CONTEXT>
{{context}}
</CONTEXT>

{{prompt}}

İsteğe bağlı olarak modelin yalnızca bağlama dayanmasını sağlamak için template güçlendirilebilir:

Aşağıdaki CONTEXT dışındaki bilgilere dayanma. Sadece CONTEXT'ten cevap ver.
<CONTEXT>
{{context}}
</CONTEXT>

Politika kaydedilir.

Yapılan işlemin geçerli olması için AI Proxy Deploy edilir.

Test Edilmesi

AI Proxy test ekranı veya istemci üzerinden yeni bir sohbet ile soru gönderilir.

Örnek istek:

{
"model": "deepseek-chat",
"messages": [
{
"role": "user",
"content": "Apinizer nedir?"
}
],
"stream": true
}
ipucu

Test sırasında:

  • Yeni sohbet açılması önerilir. Eski geçmiş, modelin Knowledge Base yerine önceki genel cevaplara bakmasına yol açabilir.
  • Knowledge Base içeriğine özgü bir soru sorulmalıdır (ör. dokümanda geçen ifade).

RAG'ın Çalıştığının Doğrulanması

AI Traffic üzerinden ilgili istek açılır ve Request to Target API sekmesine bakılır.

RAG çalışıyorsa target body içinde Knowledge Base dokümanına ait metin system veya context alanında görünür.

Request to Target with CONTEXT

Beklenen cevap, Knowledge Base dokümanındaki bilgiye yakın olmalıdır.

Örnek:

Apinizer, API ve AI trafiğini yönetmek, güvenlik ve politikalar uygulamak için kullanılan bir API ve AI Gateway ürünüdür.

bilgi

Target request içinde bağlam görünüyor ancak cevap genel bilgiye kayıyorsa, sohbet geçmişini temizleyip tek mesajla yeniden test edin. Gerekirse Injection Template'e "sadece CONTEXT'ten cevap ver" kuralı eklenebilir.

Özet

Bu senaryoda:

  • Chat AI Proxy seçildi
  • AI RAG Injection politikası eklendi
  • Knowledge Base / Embedding / Collection bağlandı
  • Proxy deploy edilerek RAG akışı test edildi

Böylece Embedding Provider → Vector DB → Knowledge Base → AI RAG Injection zinciri tamamlanmış olur.