Knowledge Graph
Bilgi Grafiği
Varlıkları (kişi, şirket, kavram) düğüm; aralarındaki ilişkileri kenar olarak modelleyen yapısal bilgi temsili. Düz metin yerine yapı.
Bir knowledge graph (KG), bilgiyi düğümler (varlıklar) ve kenarlar
(ilişkiler) olarak modelleyen yapıdır. Düz bir metin "Anthropic
Claude'u üretir, San Francisco'da merkezli, CEO'su Dario Amodei"
yerine, KG bunu ayrık üçlüler (triple) olarak saklar:
(Anthropic) -[üretir]-> (Claude),
(Anthropic) -[merkez]-> (San Francisco),
(Anthropic) -[CEO]-> (Dario Amodei).
Avantajı: çok-adımlı sorgular ("Claude'u üreten şirketin CEO'su nerede yaşıyor?") tek query ile çözülür. Düz metin RAG bunu sentezde zorlanır; graph traversal mükemmel yapar.
Modern AI'da iki kullanım: 1. Graph RAG: belgeleri parse edip otomatik KG çıkar, sonra LLM sorgu için graph üzerinde dolaş. Microsoft'un open-source GraphRAG projesi bu yaklaşımın öncülerinden. 2. Hybrid retrieval: vektör araması + KG araması birlikte. Vektör benzerlik için, KG yapısal sorgular için.
Klasik KG sistemleri: Wikidata (Wikipedia'nın yapısallaşmış hali), Google Knowledge Graph (arama sonuçlarındaki "knowledge panel"), Neo4j, ArangoDB.
Bir kütüphanenin metin koleksiyonu (klasik RAG) vs aile soyağacı (KG). Metinde "John'un babasının kuzeni"ni bulmak için her sayfayı taraman gerek. Soyağacında 3 click — düğümleri takip et, yanıt çık. Yapısal bilgi her zaman düz metni yener — eğer yapıyı önceden çıkarabilirsen.
Microsoft GraphRAG (2024 sonu): Sherlock Holmes hikayelerini tek tek incele, otomatik KG çıkar: - Karakterler (Holmes, Watson, Moriarty) - İlişkiler (arkadaş, düşman, akraba) - Olaylar (cinayet, soruşturma, çözüm)
Klasik RAG: "Holmes'un en sık görüştüğü düşman kim?" sorusunda 50 chunk getirir, hangi düşmanın kaç kez geçtiğini saymakta zorlanır.
Graph RAG: aynı sorguda KG üzerinde "Holmes düşmanı" kenarlarını say, frekansı en yüksek düğümü dön. Sub-saniye, %100 doğru.
Microsoft kendi internal Q&A sistemlerinde Graph RAG ile %40-50 doğruluk artışı raporladı.
- Çok-adımlı sorgular (relationship traversal gerek)
- Yapısal entity'ler bol (kişiler, şirketler, ürünler arası ilişki)
- Otorite veri (Wikipedia, ontology, taxonomy) ile çalışma
- Halüsinasyon riskini düşürme — KG'den gelen veri doğrulanabilir
- Tıbbi/biyolojik araştırma (drug interactions, protein networks)
- Düz metin yeterliyse — KG çıkarma maliyeti gereksiz
- İlişkiler az / değişken — KG bakımı zor
- Anlamsal benzerlik yeter (vektör daha iyi)
- Hızlı prototip — KG kurmak haftalar alabilir
KG çıkarma kalitesi her şeyi belirler
Otomatik KG extraction (LLM ile yapılırsa) hatalı triple üretebilir. 'Apple' meyve mi şirket mi? Disambiguation şart. Yanlış KG = yanlış cevap; KG hiç olmamasından bile riskli.
Graph DB karmaşıklığı
Neo4j, ArangoDB özel sorgu dili (Cypher, AQL) ister. SQL bilen ekip hızla öğrenmiyor. SaaS alternatifleri (Memgraph, Dgraph) düşün.
Bakım maliyeti
Yeni belge geldikçe KG güncellenmeli, çakışmalar çözülmeli ('Acme şirketi' vs 'Acme Corp.'). Otomatik pipeline + insan denetimi gerek.