Hesabınızla Özellikleri Keşfedin
Giriş Yap
Öne Çıkan Kategoriler
Giriş Yap
PWA & Zero Trust
Arama ve Araştırma

Ollama, Crawl4AI ve Qdrant ile Yerel RAG (Dokümanlarla Sohbet) Sistemi Kurulumu

Yapay Zeka Evreni Admin 16 Oct 2026 7 okunma
Doğrudan Yanıt (AI Arama Özeti)

Yerel bir RAG (Retrieval-Augmented Generation) sistemi kurmak için Crawl4AI ile web/doküman verilerini temiz Markdown'a dönüştürmeniz, Ollama üzerinden 'nomic-embed-text' modeliyle vektörleştirip Qdrant veritabanına kaydetmeniz ve sorguları DeepSeek-R1 veya Llama 3 modeliyle yanıtlamanız yeterlidir.

Büyük dil modelleri eğitim verilerinin kesildiği tarihten sonraki gelişmeleri veya şirket içi özel PDF belgelerinizi bilemez. RAG (Geri Getirme Destekli Üretim) mimarisi, kendi dokümanlarınızı ve web kaynaklarınızı yapay zekaya güvenli bir hafıza olarak bağlamanızı sağlar. Bu rehberde, Crawl4AI, Qdrant ve Ollama kullanarak tek kuruş API ücreti ödemeden uçtan uca yerel RAG sistemi kuruyoruz.

Yerel RAG Mimarisi Bileşen Tablosu

KatmanKullanılan Açık Kaynak AraçGörevi
Veri Toplama & TemizlemeCrawl4AIWeb sayfalarını ve dökümanları gürültüsüz Markdown'a çevirir
Gömme (Embedding) ModeliOllama (nomic-embed-text)Metin parçalarını 768 boyutlu matematiksel vektörlere dönüştürür
Vektör VeritabanıQdrant (Docker)Milyonlarca vektör arasında milisaniyelik anlamsal arama yapar
Üretici Beyin (LLM)DeepSeek-R1 veya Llama 3Bulunan belge parçalarını okuyup kaynakçalı Türkçe yanıt üretir

Adım 1: Gömme Modelini ve Qdrant Veritabanını Başlatma

Terminalinizi açarak Ollama üzerinden en yüksek performanslı açık kaynak embedding modelini indirin ve Qdrant konteynerini ayağa kaldırın:

# 1. Embedding modelini indir
ollama pull nomic-embed-text

# 2. Qdrant Vektör Veritabanını başlat
docker run -d -p 6333:6333 --name qdrant qdrant/qdrant

Adım 2: Python ile Dokümanları Vektörleştirme ve Sorgulama

Gerekli Python paketlerini (pip install qdrant-client ollama) kurduktan sonra aşağıdaki betikle kendi bilgi bankanızı sorgulayabilirsiniz:

import ollama
from qdrant_client import QdrantClient
from qdrant_client.models import Distance, VectorParams, PointStruct

client = QdrantClient(url="http://localhost:6333")
client.recreate_collection(
    collection_name="bilgi_bankasi",
    vectors_config=VectorParams(size=768, distance=Distance.COSINE),
)

belgeler = [
    "EVREN platformu 64 adet NVIDIA H200 GPU ve InfiniBand 400G ağı kullanır.",
    "Kokoro-82M yalnızca 82 milyon parametre ile CPU üzerinde gerçek zamanlı ses üretir."
]

# Belgeleri vektörleştir ve kaydet
for idx, metin in enumerate(belgeler):
    emb = ollama.embeddings(model="nomic-embed-text", prompt=metin)["embedding"]
    client.upsert(
        collection_name="bilgi_bankasi",
        points=[PointStruct(id=idx, vector=emb, payload={"text": metin})]
    )

# Soru sor ve en yakın belgeyi getir
soru = "EVREN platformunda kaç adet hangi GPU kullanılıyor?"
soru_emb = ollama.embeddings(model="nomic-embed-text", prompt=soru)["embedding"]
sonuclar = client.search(collection_name="bilgi_bankasi", query_vector=soru_emb, limit=1)

baglam = sonuclar[0].payload["text"]
yanit = ollama.chat(model="llama3", messages=[
    {"role": "user", "content": f"Bağlam: {baglam}\n\nSoru: {soru}"}
])
print(yanit["message"]["content"])

Sıkça Sorulan Sorular (SSS)

Kaç sayfalık PDF veya web sayfası yükleyebilirim?

Qdrant yerel diskinizde çalıştığı için yüz binlerce sayfalık teknik dökümanı dahi darboğaz yaşamadan indeksleyip milisaniyeler içinde tarayabilir.

Google Sponsorlu Alan