İçeriğe atla
SinaptikLabAI KNOWLEDGE PLATFORM
RehberİleriGraf RAG

Graf RAG ile çok adımlı soru cevaplamak

Graf RAG'e ancak gerçek kullanıcı sorularının bir kısmı tek bir parçadan cevaplanamıyorsa geçilir: cevabı iki ayrı belgedeki olguyu birleştirmeyi gerektiren çok atlamalı sorular, tüm derlemi tarayan bütünsel sorular ve tarihe bağlı sorular. Kurulum sırası şudur: kapalı bir ontoloji (sabit varlık ve ilişki türleri), parça başına şema kısıtlı çıkarım, varlık tekilleştirme, her kenarda köken ve geçerlilik tarihi, ardından atlama ve dal sayısı sınırlı bir sorgu planlayıcı. Düz RAG varsayılan yol olarak kalır; graf yalnızca yönlendirici bu üç soru tipinden birini tespit ettiğinde devreye girer.

ÖNKOŞULLAR

  • Çalışan ve ölçülen bir düz geri getirme hattı — grafın karşılaştırılacağı taban çizgisi budur
  • Gerçek kullanıcı sorularından toplanmış, düz RAG'in cevaplayamadığı bir başarısızlık kümesi
  • Alan uzmanının onaylayacağı varlık ve ilişki türleri listesi
  • Graf veri yapısını tutabilecek ve gezinme sorgusu çalıştırabilecek bir depo

GEREKEN ARAÇLAR

  • Şema kısıtlı yapılandırılmış çıktı üretebilen bir dil modeli erişimi
  • Gezinme sorgusu destekleyen bir graf veri deposu
  • Tohum düğüm çözümlemesi için vektör arama dizini
  • Çıkarım ve gezinme adımlarını kaydeden iz kaydı altyapısı
  • Varlık eşleştirme adaylarını insana gösteren bir inceleme arayüzü
  1. 01

    Grafa ihtiyacı kanıtla

    Düz RAG'in cevaplayamadığı gerçek soruları topla ve atlama sayısına göre sınıflandır; tek parçadan cevaplanabilen sorular grafın maliyetini haklı çıkarmaz.

    Vektör tabanlı geri getirme, soruya benzeyen parçaları getirir. Çok atlamalı bir soruda hiçbir parça sorunun tamamına benzemez: bir parça birinci olguyu, başka bir parça ikinciyi taşır ve ikisini birleştiren cümle hiçbir belgede yazmaz. Bu, model kalitesiyle ilgili bir sorun değil; benzerlik ekseninin yapısal sınırıdır ve daha iyi bir gömme modeliyle kapanmaz.

    Soru tipiÖrnek kalıpDüz RAG'in davranışı
    Tek olguBu maddenin yürürlük tarihi nedir?Çalışır; grafa gerek yok
    Çok atlamalıBu talebi onaylayan birimin bağlı olduğu yönetmelik hangisi?Parçalar ayrı ayrı gelir, birleşme hiç olmaz
    BütünselBu belge kümesinde tekrar eden üç risk teması nedir?İlk k parça derlemi temsil etmez
    ZamansalBu kararı veren kişi karar tarihinde hangi görevdeydi?Güncel kayıt gelir, tarihe uyan kayıt gelmez
    Üstteki satır grafın alanı değildir; alttaki üçü için graf kurulur.

    Doğrulama adımı: topladığınız başarısızlık kümesini bu dört kovaya dağıtın. Ağırlık birinci kovadaysa sorun geri getirmededir ve çözüm graf değil — yeniden sıralama, parçalama düzeltmesi ya da üst veri filtresi. Grafın maliyeti ancak alttaki üç kova gerçek trafikte anlamlı bir yer tutuyorsa karşılanır ve bu kararı vermeden önce sayıyı kendi kayıtlarınızdan çıkarın.

  2. 02

    Kapalı bir ontoloji yaz

    Varlık ve ilişki türlerini çıkarımdan önce sabit bir listeye bağla; açık uçlu çıkarım aynı ilişkiyi onlarca farklı adla üretir ve graf gezilemez hâle gelir.

    Bir dil modeline serbestçe ilişki çıkarttığınızda tedarik ediyor, tedarikçisidir, sağlıyor ve temin eder aynı grafta dört ayrı kenar türü olarak durur. Gezinme sorgusu kenar türünün adına dayandığı için hiçbiri diğerini bulmaz. Ontolojiyi sonradan toparlamak, üretilmiş bütün kenarları yeniden eşlemek demektir; küçük ve kapalı başlamak, sonradan genişletmekten her zaman ucuzdur.

    ÖğeKapalı liste örneğiNeden sınırlı tutulur
    Varlık türlerikurum, kişi, belge, madde, sistem, süreçHer tür kendi tekilleştirme kuralını ister
    İlişki türlerionaylar, bağlıdır, atıf yapar, sahibidir, yerine geçerGezinme sorguları kenar türünün adına dayanır
    Kenar nitelikleriköken, geçerlilik aralığı, güvenCevabın kaynaklanabilmesi ve düzeltilebilmesi için
    Liste alan uzmanıyla birlikte yazılır ve sürümlenir; sürüm numarası çıkarım çıktısına da işlenir.
    • Her ilişki türünün yönü tanımlı olsun: onaylar ilişkisinde kaynak ile hedefin yer değiştirmesi anlamı tersine çevirir.
    • Eş anlamlı ad kullanmayın; bir anlama bir ad, bir ada bir anlam.
    • Türü ontolojide olmayan bir ilişki çıkarsa çıktı reddedilsin, sessizce eklenmesin.
    • Reddedilen çıkarımları kaydedin: ontolojinin nerede eksik olduğunu tam olarak orası gösterir.
  3. 03

    Çıkarımı parça başına ve şema kısıtlı kur

    Her metin parçasından yalnızca ontolojideki türleri, şemaya uyan yapılandırılmış çıktı olarak çıkar ve çıkarımın girdisi olan parça kimliğini çıktıya taşı.

    Çıkarımın serbest metin değil şemaya bağlı yapılandırılmış çıktı olması iki şey sağlar: ontoloji dışına çıkan sonuçlar daha üretilirken elenir ve çıktı doğrudan graf yazımına beslenebilir. Parça kimliğinin çıktıya taşınması ise pazarlık konusu değildir; o kimlik olmadan kenarın nereden geldiği sonradan bulunamaz ve graf bir kara kutuya döner.

    json
    {
      "parca_kimligi": "tedarik-politikasi-v4#madde-12",
      "varliklar": [
        { "tur": "kurum", "ad": "Merkezi Satın Alma Birimi", "kanonik_kimlik": null },
        { "tur": "belge", "ad": "Tedarik Politikası", "surum": "v4" },
        { "tur": "madde", "ad": "Tedarik Politikası madde 12", "kanonik_kimlik": null }
      ],
      "iliskiler": [
        {
          "tur": "onaylar",
          "kaynak": "Merkezi Satın Alma Birimi",
          "hedef": "Tedarik Politikası madde 12",
          "ontoloji_surumu": 2
        }
      ]
    }
    
    // kaynak ve hedef yalnızca varliklar dizisinde tanımlı düğümleri gösterebilir;
    // dizide karşılığı olmayan bir uç çıktıyı geçersiz kılar.

    Maliyet derlem büyüklüğüyle doğru orantılıdır, çünkü her parça için bir çıkarım çağrısı yapılır. Bu yüzden güncellemelerde tüm derlem yeniden işlenmez, yalnızca değişen belgeler işlenir. Çıkarım istemini de sürümleyin: istem değiştiğinde üretilen graf değişir ve hangi kenarın hangi istemle çıkarıldığını bilmiyorsanız iki sürümü karşılaştıramazsınız.

  4. 04

    Varlıkları tekilleştir

    Aynı varlığın farklı yazımlarını tek düğümde birleştir: önce belirleyici anahtarlar, sonra normalize edilmiş ad karşılaştırması, eşiğin belirsiz kaldığı yerde insan onayı.

    Tekilleştirme yapılmadığında graf sessizce ikiye bölünür: aynı kurum üç ayrı düğüm olarak durur, her biri kenarların bir kısmını taşır ve çok atlamalı yol hiçbirinden tamamlanmaz. Sonuç boş cevap değil, eksik cevaptır — ki fark edilmesi çok daha zordur, çünkü sistem bir şey döndürmüştür.

    1. 1Belirleyici anahtarla eşle

      Vergi numarası, belge kimliği, sicil numarası gibi tek anlamlı bir anahtar varsa eşleştirme orada biter ve tartışmaya kapanır.

    2. 2Adları normalize et

      Harf katlamasını Türkçe yerelle yapın ve özel ada gelen kesme işaretli ekleri karşılaştırmadan önce ayırın; aksi hâlde aynı kurumun iki yazımı hiç eşleşmez.

    3. 3Bloklayıp aday çiftleri çıkar

      Tüm çiftleri karşılaştırmak yerine aynı türe ve ortak anahtar parçasına sahip olanları bloklayın; adaylar bu blokların içinden çıkar.

    4. 4Eşiği insan onayıyla kalibre et

      Sınırda kalan çiftleri uzmana gösterin ve eşiği onun kararlarına göre ayarlayın; eşiği ölçmeden seçmek keyfîdir.

  5. 05

    Her kenara köken ve geçerlilik yaz

    Kenar, hangi belgenin hangi parçasından ve hangi tarih aralığı için çıkarıldığını taşımalı; köken alanı olmayan bir kenar ne kaynaklanabilir ne de düzeltilebilir.

    Köken üç işi birden görür: cevabın altına kaynak koymayı mümkün kılar, yanlış bir cevabın hangi çıkarımdan geldiğini bulmayı sağlar ve bir belge yürürlükten kalktığında ondan türeyen kenarları seçip çıkarmaya yarar. Üçü de sonradan eklenemez; kenar üretilirken yazılmayan köken, geriye dönük olarak uydurulamaz.

    json
    {
      "kenar_kimligi": "kurum:msab--onaylar--belge:tedarik-v4-md12",
      "tur": "onaylar",
      "koken": {
        "belge_kimligi": "tedarik-politikasi",
        "surum": "v4",
        "parca_kimligi": "tedarik-politikasi-v4#madde-12"
      },
      "gecerlilik": { "baslangic": "2026-01-01", "bitis": null },
      "cikarim": { "istem_surumu": 3, "insan_onayi": false }
    }

    Çelişen kenarlar üzerine yazılmaz. Bir kişinin iki farklı dönemde iki farklı görevi varsa graf ikisini de taşır ve hangisinin geçerli olduğuna sorgu planlayıcısı, sorunun sorduğu tarihe bakarak karar verir. Eski kenarı silmek, zamansal soruları cevaplama yeteneğini de siler — ki graf kurmanızın nedenlerinden biri buydu.

  6. 06

    Küme özetlerini üret

    Bütünsel sorular için grafı yoğun bağlı topluluklara ayır ve her topluluğa kaynaklı bir özet yaz; bu özetler ilk k parçanın temsil edemediği derlem düzeyi soruları karşılar.

    Bu derlemde tekrar eden temalar nelerdir türünden bir soru, ilk k parçayla cevaplanamaz: hangi k seçilirse seçilsin derlemin küçük bir dilimidir ve seçim benzerliğe göre yapıldığı için zaten soruya benzeyen dilimdir. Topluluk tespiti grafı yoğun bağlı kümelere ayırır; her kümeye yazılan özet, derlemin o bölgesinin sıkıştırılmış hâlidir ve bütünsel sorular bu özetlerin üzerinden cevaplanır.

    • Her özet, dayandığı kenar ve düğüm kimliklerini taşısın; özetin de kökeni olmalı.
    • Özetler üretilmiş metindir; kaynak belge gibi değil, türetilmiş katman olarak işaretlenir.
    • Graf değiştiğinde hangi özetlerin bayatladığını topluluk kimliğinden izleyin, hepsini yeniden üretmeyin.
    • Tek olgu soruları özet katmanına hiç uğramasın; özet, ayrıntıyı tanımı gereği kaybeder.
  7. 07

    Sorgu planlayıcıyı atlama bütçesiyle kur

    Sorguyu üç aşamaya böl: tohum düğümleri anlamsal aramayla bul, atlama ve dal sayısı sınırlı gez, çıkan alt grafı bağlama koymadan önce yeniden sırala.

    Komşuluk çarpımsal büyür: her atlamada düğüm sayısı ortalama dereceyle çarpılır. Sınır koymayan bir gezinme iki üç atlamada bağlam penceresini dolduracak kadar düğüm toplar ve modele gürültü verir. Üstelik gürültünün bir maliyeti daha var: ilgisiz ama benzer görünen kenarlar, modelin doğru yolu seçmesini zorlaştırır.

    1. 1Tohum düğümleri çöz

      Sorudaki adları anlamsal arama ve tekilleştirme sözlüğüyle düğümlere bağlayın; tohum çözülemiyorsa graf hattına hiç girmeyin.

    2. 2Sınırlı gez

      Atlama sayısını, düğüm başına dal sayısını ve toplam alt graf boyutunu önceden sabitleyin; sınırlar sorgu tipine göre değişebilir ama her sorguda bir sınır olmalı.

    3. 3Alt grafı puanla

      Gezinmeden çıkan kenarları soruyla ilgisine ve kenar güvenine göre sıralayın; bağlama tamamı değil üst kısmı girer.

    4. 4Bağlam paketini kur

      Seçilen kenarları kaynak metin parçalarıyla birlikte verin; model yalnızca kenar etiketiyle değil, kenarın çıktığı cümleyle çalışsın.

    SınırNeyi engellerNasıl belirlenir
    Atlama sayısıKomşuluk patlamasıSoru tipi dağılımından; çoğu soru iki atlamayı aşmaz
    Düğüm başına dalMerkez düğümlerin her şeyi çekmesiDerece dağılımına bakarak, üst uçtaki düğümler ayrı ele alınır
    Alt graf boyutuBağlam taşmasıBağlam bütçesinden geri sayarak
    Kenar güven eşiğiZayıf çıkarımların cevaba karışmasıİnsan onaylı örneklemle kalibre edilerek

    Merkez düğümlere ayrı davranın. Derecesi çok yüksek düğümler — kurumun kendi adı, alanın genel terimi — neredeyse her şeye bağlıdır ve gezinmeyi kendilerine çeker. Bunları ya gezinme dışında bırakın ya da ağırlıklarını düşürün; bu tek karar, alt graf kalitesinde en görünür farkı üretir.

  8. 08

    Yönlendiriciyi kur, düz RAG varsayılan kalsın

    Her soruyu grafa sokma: yönlendirici yalnızca çok atlamalı, bütünsel ve zamansal soruları graf hattına göndersin, kalan trafik düz geri getirmede kalsın.

    Graf hattı hem daha yavaş hem daha pahalıdır; trafiğin tamamını oraya sokmak, tek olgu sorularına gereksiz gecikme ve maliyet bindirir. Doğru kurulum iki hatlı olandır: düz geri getirme varsayılan yoldur, graf yalnızca ihtiyaç kanıtlanmış soru tipleri için devreye girer. Yönlendiricinin kendisi de ölçülmeli; yanlış yönlendirme oranı raporlanmayan bir yönlendirici, sistemin en sessiz hata kaynağıdır.

    • Soruda birden fazla adlandırılmış varlık geçiyor ve aralarında bir ilişki soruluyor mu.
    • Soru karşılaştırma, sayma ya da tema çıkarma istiyor mu — bütünsel kova bunlardır.
    • Soru açık bir tarihe ya da döneme atıf yapıyor mu.
    • Düz geri getirme boş ya da düşük puanlı sonuç mu döndürdü — bu da bir yönlendirme sinyalidir.

    Geri düşme yolunu baştan kurun: graf hattı tohum düğüm çözemediğinde ya da alt graf boş kaldığında cevap üretmeye çalışmasın, soru düz geri getirmeye devredilsin. Boş bir alt grafla üretilen cevap, hiç cevap vermemekten kötüdür; çünkü grafın otoritesini taşır ama altında hiçbir kenar yoktur.

  9. 09

    İki hattı aynı soru kümesinde ölç

    Düz RAG ile graf hattını aynı soru kümesinde karşılaştır ve yalnızca cevabı değil yolu da denetle: doğru cevap yanlış kenarlardan gelmiş olabilir.

    Karşılaştırma soru sınıfı kırılımıyla raporlanmazsa hiçbir şey öğretmez. Grafın kazancı tek olgu sorularında görünmez, görünmemesi de gerekir; kazanç çok atlamalı, bütünsel ve zamansal kovalarda çıkmalıdır. Toplam ortalama bu farkı örter ve yatırımın haklı olup olmadığı sorusunu cevapsız bırakır.

    ÖlçütNasıl ölçülürNeyi yakalar
    Cevap doğruluğuUzman etiketli beklenen cevapla karşılaştırmaSon çıktının kalitesi
    Yol doğruluğuCevabın dayandığı kenarların incelenmesiŞans eseri doğru çıkan cevapları
    Kaynaklanma oranıİddia başına gösterilebilen kenar oranıDenetlenebilirliği
    Boş alt graf oranıPlanlayıcı kayıtlarındanTohum çözümleme ve tekilleştirme hatalarını
    Soru başına maliyet ve gecikmeÇıkarım, gezinme ve üretim adımlarının toplamıGrafın gerçekten haklı olup olmadığını
    Beş ölçüt de soru sınıfı kırılımıyla raporlanır; tek bir toplam sayı karar için yetersizdir.

SIK DÜŞÜLEN TUZAKLAR

  • Açık uçlu ilişki çıkarımı

    Model serbest bırakıldığında aynı ilişkiyi onlarca farklı adla üretir. Gezinme sorgusu kenar türünün adına dayandığı için hiçbiri diğerini bulmaz ve graf teknik olarak dolu, pratikte gezilemez olur.

  • Varlık tekilleştirmeyi sonraya bırakmak

    Aynı kurum üç düğüme bölündüğünde kenarlar da bölünür ve çok atlamalı yol tamamlanmaz. Sistem boş değil eksik cevap döndürür; bu yüzden hata izlerde bir arıza olarak değil, sadece yetersiz bir cevap olarak görünür.

  • Gezinmeye sınır koymamak

    Komşuluk her atlamada ortalama dereceyle çarpılır. İki üç atlamada alt graf bağlam penceresini doldurur; model hem taşma hem gürültü nedeniyle doğru yolu bulamaz ve gecikme öngörülemez hâle gelir.

  • Kenarda köken tutmamak

    Kaynağı yazılmamış bir kenar ne gösterilebilir ne düzeltilebilir. Belge yürürlükten kalktığında ondan türeyen kenarları seçip çıkarmanın da yolu kalmaz; graf yanlış bilgiyi sessizce taşımaya devam eder.

  • Her soruyu graf hattına sokmak

    Tek olgu soruları düz geri getirmede daha hızlı ve daha ucuz cevaplanır. Tüm trafiği grafa yönlendirmek, kazanç sağlamadığı sorularda gecikme ve çıkarım maliyeti biriktirir.

KONTROL LİSTESİ

  • Grafın hangi soru sınıfları için kurulduğu gerçek kullanıcı sorularıyla kanıtlandı
  • Varlık ve ilişki türleri kapalı listede, sürümlü ve alan uzmanınca onaylı
  • Çıkarım şema kısıtlı çalışıyor ve parça kimliği çıktıya taşınıyor
  • Varlık tekilleştirme eşiği insan onaylı bir örneklemle kalibre edildi
  • Her kenarda köken ve geçerlilik aralığı var; çelişen kenarlar üzerine yazılmıyor
  • Gezinme atlama, dal ve alt graf boyutu sınırlarıyla çalışıyor; merkez düğümler ayrı ele alınıyor
  • Yönlendirici düz RAG'i varsayılan tutuyor ve yanlış yönlendirme oranı raporlanıyor
  • İki hat aynı soru kümesinde, soru sınıfı kırılımıyla ve yol doğruluğuyla birlikte ölçülüyor

Maddelerin tamamı işaretlenmeden kurulum üretime alınmamalı.

Sık sorulan sorular

Graf RAG düz RAG'den ne zaman daha iyi olur?

Cevabın tek bir parçada bulunmadığı üç soru tipinde: iki ayrı belgedeki olgunun birleştirilmesini gerektiren çok atlamalı sorular, derlemin tamamına bakan bütünsel sorular ve belirli bir tarihteki durumu soran zamansal sorular. Tek olgu sorularında graf bir kazanç sağlamaz, yalnızca gecikme ve maliyet ekler; bu yüzden kararı kendi başarısızlık kümenizi bu kovalara dağıtarak verin.

Bilgi grafını elle mi kurmalıyım, modelle mi çıkarmalıyım?

İkisi aynı katmanın farklı parçalarıdır. Ontoloji, yani varlık ve ilişki türlerinin kapalı listesi elle ve alan uzmanıyla yazılır; bunu modele bıraktığınızda gezilemeyen bir graf çıkar. Kenarların çıkarımı ise modelle yapılır, çünkü ölçek elle kurmaya izin vermez. Kritik olan çıkarımın şemayla kısıtlanması ve her kenarın kökeniyle birlikte yazılmasıdır.

Çok atlamalı sorularda kaç atlama yeterli?

Sınırı kural olarak değil, kendi soru dağılımınızdan çıkarın; pratikte soruların çoğu iki atlamayı aşmaz ve sınır koymamanın maliyeti yüksektir, çünkü komşuluk her atlamada ortalama dereceyle çarpılır. Atlama sayısıyla birlikte düğüm başına dal sayısını ve toplam alt graf boyutunu da sınırlayın; üçü birlikte çalışmazsa tek başına atlama sınırı yetmez.

Graf RAG halüsinasyonu ortadan kaldırır mı?

Hayır, azaltır. Belirli hata türlerini — özellikle birleştirilemeyen olgular yüzünden ortaya çıkan uydurmaları — zayıflatır, ama yanlış çıkarılmış bir kenar kendinden emin ve kaynak gösteren bir yanlış cevap üretir. Bu tür hatalar sıradan halüsinasyondan daha zor yakalanır; bu yüzden değerlendirmede yalnızca cevabı değil cevabın dayandığı yolu da denetlemek gerekir.

Kaynaklar

  1. 01From Local to Global: A Graph RAG Approach to Query-Focused Summarization — Microsoft Research · Makale
  2. 02Graf veritabanı ve gezinme sorgusu dokümantasyonları — Graf veri deposu sağlayıcıları · Dokümantasyon
  3. 03Sinaptik Research — graf destekli geri getirme uygulama notları — Sinaptik Lab · Teknik rapor

BUILD

Bu rehberi kurumunuzda uygulayalım mı?

Aynı mimariyi kendi verinizle kurmak için discovery oturumundan üretime kadar birlikte ilerliyoruz.