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

GraphRAG ve LightRAG Mimarisi: Vektör Veritabanlarının Göremediği Bağlantıları Bilgi Graflarıyla Çözmek

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

GraphRAG ve LightRAG, dokümanları yalnızca izole metin parçaları (chunk) olarak vektörleştirmek yerine metin içindeki varlıkları (Kişi, Kurum, Teknoloji) ve aralarındaki ilişkileri bir Bilgi Grafı (Knowledge Graph) olarak çıkaran ileri düzey RAG mimarileridir. LightRAG, çift katmanlı (Dual-Level) erişim mekanizmasıyla Microsoft GraphRAG'a kıyasla token maliyetini %90 düşürürken çok adımlı (multi-hop) sorularda %85'in üzerinde doğruluk sağlar.

Geleneksel Vektör RAG sistemleri (örneğin Ollama ve Qdrant ile Yerel RAG mimarimiz), "Şirketin iade süresi kaç gündür?" gibi tek bir paragrafta cevabı bulunan nokta atışı sorularda mükemmel çalışır. Ancak "Son 3 yıldaki tüm tedarikçi sözleşmelerimizde tekrar eden ortak hukuki risk örüntüleri nelerdir ve hangi alt yükleniciler birbirine dolaylı olarak bağlıdır?" gibi bütüncül (global) ve çok adımlı (multi-hop) bir soru sorduğunuzda standart vektör araması tamamen çöker. İşte bu darboğazı aşmak için Bilgi Grafı Destekli RAG (GraphRAG) ve açık kaynak dünyasında fırtına estiren HKUDS/LightRAG mimarisi geliştirilmiştir.

Standart Vektör RAG Neden Yetersiz Kalır? (3 Mimari Kör Nokta)

  1. Bağlam Parçalanması (Chunk Fragmentation): Dokümanlar 500 kelimelik sabit parçalara bölündüğünde, 1. sayfadaki bir şirket adı ile 45. sayfadaki bir yönetim kurulu kararı arasındaki nedensel bağ kopar.
  2. Kosinüs Benzerliği Yanılgısı: Vektör gömmeleri (Embeddings) yalnızca kelime ve semantik yakınlığı ölçer; iki kavram arasındaki "A şirketi B'yi satın aldı, B ise C'nin tedarikçisidir" şeklindeki geçişken (transitive) mantığı kuramaz.
  3. Global Özetleme İmkansızlığı: En yakın 5 metin parçasını (`Top-K = 5`) getiren bir sistem, 1.000 belgenin tamamına yayılan ana temaları asla sentezleyemez.

RAG Mimarileri Karşılaştırma Matrisi (Naive vs Hybrid vs GraphRAG vs LightRAG)

Mimari Kriter Standart Vektör RAG Hibrit RAG (BM25 + Reranker) Microsoft GraphRAG LightRAG (HKUDS)
Veri Temsili Yalnızca Metin Vektörleri Vektör + Anahtar Kelime İndeksi Hiyerarşik Topluluk (Leiden) Grafı Çift Katmanlı Graf + Vektör Hibriti
Çok Adımlı (Multi-Hop) Muhakeme Zayıf (%30–40) Orta (%50–60) Çok Yüksek (%85+) Çok Yüksek (%88+)
İndeksleme Token Maliyeti Çok Düşük (1x) Düşük (1.2x) Çok Yüksek (50x–100x LLM Çağrısı) Optimize (GraphRAG'dan %90 Daha Ucuz)
Yeni Belge Ekleme (Incremental Update) Anlık (Milisaniye) Anlık Zor (Toplulukların yeniden hesaplanması gerekir) Dinamik Graf Birleştirme (Yeniden İndekslemesiz)
Sorgu Gecikmesi (Latency) ~200 ms ~450 ms 5 – 15 Saniye (Map-Reduce) ~1.2 Saniye (Tek Çağrıda Hibrit Çekim)

LightRAG'ın Çift Katmanlı (Dual-Level Retrieval) Sırrı Nedir?

LightRAG, Microsoft GraphRAG'ın en büyük sorunu olan yüksek indeksleme maliyetini ve yavaş Map-Reduce sorgularını çözmek için sorguları iki eşzamanlı katmanda işler:

  • Düşük Seviyeli (Low-Level) Erişim: Spesifik varlıklara (örneğin "NVIDIA H200" düğümüne ve onun doğrudan komşularına) odaklanarak kesin teknik gerçekleri çeker.
  • Yüksek Seviyeli (High-Level) Erişim: Varlıklar arasındaki ilişki kenarlarını (Edges) ve kavramsal temaları (örneğin "Veri Egemenliği ve Milli Süper Bilgisayar Altyapısı") tarayarak bütüncül soruları yanıtlar.

Adım 1: LightRAG Kurulumu ve Ortam Hazırlığı

Dokümanlarınızı önce IBM Docling veya Crawl4AI ile temiz Markdown formatına dönüştürdükten sonra LightRAG paketini kurun:

pip install lightrag-hku
# Veya doğrudan API ve Görsel Graf Arayüzü (WebUI) ile kurmak için:
pip install "lightrag-hku[api]"

Adım 2: Python ile Bilgi Grafı Oluşturma ve 4 Modlu Sorgulama

Aşağıdaki üretim kodu, metinlerinizden otomatik olarak varlık-ilişki (Entity-Relationship) grafını çıkarır ve 4 farklı erişim modunda (`naive`, `local`, `global`, `hybrid`) sorgulama yapar:

import os
from lightrag import LightRAG, QueryParam
from lightrag.llm.openai import gpt_4o_mini_complete, openai_embed

# Çalışma dizini (Graf düğümleri ve vektörler burada saklanır)
WORKING_DIR = "./kurumsal_hafiza_grafi"
os.makedirs(WORKING_DIR, exist_ok=True)

# LightRAG Motorunu Başlatma (OpenAI, EVREN API veya yerel Ollama bağlanabilir)
rag = LightRAG(
    working_dir=WORKING_DIR,
    embedding_func=openai_embed,
    llm_model_func=gpt_4o_mini_complete,
)

# 1. Dokümanları Bilgi Grafına İndeksleme (Varlık ve İlişki Çıkarımı)
dokumanlar = [
    "SSYZ EVREN platformu 64 adet NVIDIA H200 GPU ve InfiniBand NDR 400G ağı üzerinde çalışır.",
    "SAYZEK kümelenmesi ASELSAN, HAVELSAN, ROKETSAN ve üniversiteleri EVREN altyapısında buluşturur.",
    "DeepSeek-R1 modeli MLA mimarisi sayesinde H200 GPU kümesinde %93 daha az KV önbellek tüketir."
]
for doc in dokumanlar:
    rag.insert(doc)

# 2. Hibrit Modda (Hem Yerel Varlıklar Hem Global İlişkiler) Sorgulama
soru = "SAYZEK üyesi kurumların kullandığı altyapıda DeepSeek-R1 neden bellek avantajı sağlar?"
yanit = rag.query(soru, param=QueryParam(mode="hybrid"))
print(yanit)

Adım 3: Yerel Modellerle (Ollama + Qwen 2.5 / DeepSeek) %100 Ücretsiz Çalıştırma

Bilgi grafı çıkarımı sırasında binlerce varlık tespit edildiği için bulut API'leri yerine yerel Qwen 2.5 (14B/32B) ve bge-m3 gömme modelini kullanmak maliyeti sıfıra indirir:

# LightRAG Sunucusunu Ollama ile başlatıp görsel graf arayüzünü açma:
lightrag-server --host 0.0.0.0 --port 9621 \
  --llm-binding ollama --llm-model qwen2.5:14b \
  --embedding-binding ollama --embedding-model bge-m3

Sıkça Sorulan Sorular (SSS)

Ne zaman Standart Vektör RAG, ne zaman LightRAG kullanmalıyım?

Belgeleriniz birbirinden bağımsız kısa SSS maddelerinden oluşuyorsa standart Vektör RAG yeterlidir. Ancak hukuki sözleşmeler, tıbbi araştırmalar, istihbarat analizleri veya büyük yazılım kod tabanları gibi kavramların birbirine bağlı olduğu senaryolarda LightRAG zorunludur.

Oluşturulan bilgi grafını Neo4j veritabanına aktarabilir miyim?

Evet, LightRAG varsayılan olarak yerel NetworkX grafı kullanır ancak kurumsal ölçekte tek satır yapılandırmayla doğrudan Neo4j ve PostgreSQL (AGE + pgvector) üzerine bağlanabilir.

Google Sponsorlu Alan