Yazılım Geliştirici
RAG Rehberi
RAG mimarisi, embedding, vector DB seçenekleri (pgvector, Qdrant, Pinecone), Türkçe RAG ipuçları ve adım adım proje kurulumu.
RAG (Retrieval-Augmented Generation), büyük dil modellerine kendi verilerinize dayalı, halüsinasyondan arındırılmış cevap verdirten mimari kalıbıdır. 2025-2026 döneminde kurumsal AI projelerinin %80+’si bir RAG katmanı içerir. Bu rehber RAG’ın ne olduğunu, neden çalıştığını, popüler vector DB seçeneklerini, Türkçe verilerle çalışma incelikleri ve başlangıç projesi nasıl kurulacağını anlatır.
RAG Mimarisi
Klasik LLM: kullanıcı sorar, model kendi eğitim verisinden cevap üretir. Sorun: eğitim sonrası gelişmeler bilinmez, kuruma özel bilgi yok, halüsinasyon riski yüksek.
RAG iki adımı birleştirir:
- Retrieval: Soruyla ilgili belgeleri bir veritabanından getir.
- Generation: Bu belgeleri prompt’a ekleyip modele “sadece bu kaynaklara dayanarak cevap ver” de.
Sonuç: model, sadece kendi eğitim verisi yerine sizin verinize dayanır. Halüsinasyon belirgin şekilde azalır; cevap kaynaklı (citable) olur.
Embedding ve Vector Search
Retrieval’ın kalbi embedding: bir metni sabit-boyutlu sayı vektörüne (genelde 768-3072 boyut) dönüştüren model. Anlamca yakın metinlerin vektörleri yakındır. Cosine similarity ile en yakın metni bulursunuz.
Türkçe için iyi embedding modelleri:
- OpenAI text-embedding-3-large/small: Çoklu-dil, Türkçe iyi.
- Cohere multilingual: 100+ dil, Türkçe testlerde başarılı.
- BGE-M3 (açık ağırlıklı): Çok-dilli, ücretsiz, yerel çalışır.
- Qwen3-Embedding: Açık, çok-dilli, Türkçe iyi.
Vector DB Seçenekleri
- pgvector (PostgreSQL eklentisi): Mevcut DB kullanıyorsanız ideal. Ücretsiz, ölçeklenir.
- Qdrant: Açık kaynak, Rust ile yazılı, hızlı.
- Weaviate: Açık kaynak, GraphQL arayüzü.
- Chroma: Python-odaklı, küçük projeler için hızlı kurulum.
- Pinecone: Yönetilen SaaS, kolay başlangıç, ölçeklenmiş projelerde pahalı.
- Milvus: Büyük ölçek için.
Türk projelerin %60’ı pgvector veya Qdrant ile başlar. Veri 100.000-1M doc altında kalıyorsa pgvector mevcut Postgres ile harika çalışır.
Adım Adım Basit RAG Projesi
- Veriyi parçalara böl (chunking): PDF, web sayfası, doc — 300-500 kelimelik bloklara bölün. Cümle veya paragraf sınırına saygı gösterin.
- Her parçanın embedding’ini al: Embedding modeline gönder, vektörü kaydet.
- Vector DB’ye yükle: text + embedding + metadata (kaynak, tarih).
- Sorgu zamanı: Kullanıcı sorusunu da embedding’e çevir, vector DB’den en benzer 5-10 chunk’ı çek.
- Generation: Çekilen chunk’ları prompt’a ekle: “Aşağıdaki bilgilere dayanarak soruyu cevapla. Bilgi yoksa ‘belirsiz’ yaz.” Modele gönder.
Türkçe RAG'da Dikkat
- Çoklu-dilli embedding seç: Türkçe-only model İngilizce dokümana karışan içeriği yakalayamaz; çoklu-dilli model her ikisini de kapsar.
- Token sayısı dikkati: Türkçe chunk’lar aynı kelime sayısı için daha çok token harcar. 500 kelime yerine 350-400 kelime sınırı pratik.
- Hibrit arama: Sadece vector arama bazen önemli kelimeleri kaçırır (KDV, BSMV gibi kısaltmalar). Vector + BM25 (keyword) hibrit en iyi sonucu verir; pgvector ve Qdrant bunu destekler.
- Reranker kullan: İlk 20 chunk’ı çek, Cohere veya BGE reranker ile yeniden sırala, en iyi 5’i modele ver. Doğruluk %15-30 artar.
RAG Alternatifleri
- Long-context model: Claude (1M), Gemini (2M) bağlam pencerelerine tüm dokümanı doğrudan vermek bir alternatif. Pratik: 50-200 sayfa için OK; 1000+ sayfa için RAG hâlâ daha iyi (maliyet ve hız).
- Fine-tuning: Bilgi modele “içselleştirilirse” sorgu zamanı bağlam yüklemek gerekmez. Sınırı: bilgi statik; güncellenmesi yeniden eğitim gerektirir.
- NotebookLM tarzı: Hazır RAG ürünleri (Google NotebookLM, Anthropic Projects). Hızlı başlangıç için iyi; özelleştirme sınırlı.
Sık Sorulan Sorular
RAG halüsinasyonu tamamen önler mi?
Hangi vector DB ile başlayayım?
Embedding maliyeti ne kadar?
RAG için hangi LLM en iyi?
Chunk boyutu ne olmalı?
Hibrit arama nedir?
GraphRAG nedir?
İlgili rehberler
- Prompt Mühendisliği Rehberi — Few-shot, chain of thought, format kontrolü, Türkçe için ipuçları — LLM'lerden s…
- LLM Fine-Tuning Rehberi — LoRA, QLoRA, full fine-tuning farkları, Türkçe veri hazırlama, Llama/Qwen/Mistra…
- Ollama Yerel LLM Rehberi — Ollama ile Llama, Qwen, DeepSeek, Mistral, Gemma modellerini kendi bilgisayarını…