LangGraph nedir, LangChain'den farkı nedir? Nodes, edges, state ve human-in-the-loop kavramları.
LangGraph nedir, LangChain'den farkı
LangChain zincirleri çoğunlukla doğrusaldır. LangGraph ise döngü ve dallanma içeren akışları açıkça modellemeni sağlar — koşula göre farklı düğüme git, gerekirse bir adıma geri dön. Karmaşık, durumlu agent'lar için daha uygundur.
Temel kavramlar: Node, Edge, State
State: akış boyunca taşınan ortak veri (örneğin kullanıcı mesajı, ara sonuçlar). Node: bu state'i alıp güncelleyen bir fonksiyon/adım. Edge: bir node'dan diğerine geçiş; conditional edge ise koşula göre dallanma sağlar.
Conditional edges + human-in-the-loop
Koşullu kenarlarla 'eğer güven düşükse insana sor, yüksekse otomatik devam et' gibi mantık kurarsınız. Kritik adımlarda akışı duraklatıp insan onayı bekletmek (human-in-the-loop) üretim sistemlerinde güvenliğin temelidir.
# Basit LangGraph iskeleti (Python)
from langgraph.graph import StateGraph, END
def arastir(state): # düğüm: bilgi topla
...
return state
def karar(state): # koşullu dallanma
return "insan_onay" if state["riskli"] else "tamamla"
g = StateGraph(dict)
g.add_node("arastir", arastir)
g.add_node("insan_onay", lambda s: s)
g.add_conditional_edges("arastir", karar)
g.set_entry_point("arastir")
app = g.compile()Kopyala-Kullan Prompt
LangGraph akışı tasarlama
Aşağıdaki iş akışım için LangGraph kodu yaz (Python): Adımlar: 1. [Başlangıç: ne tetikliyor] 2. [İlk karar: hangi koşulda ne olur] 3. [Süreç A] 4. [Süreç B] 5. [Bitiş: çıktı ne] İnsan onayı gerekli mi: [hangi adımda] Kullanılacak araçlar: [web search / API / vb.] Her node için Türkçe yorum satırı ekle; conditional edge mantığını açıkla.
Örnek Senaryo (temsilî)
Bir müşteri destek ekibi, gelen talebi LangGraph ile 3 kademeye ayırdı: otomatik yanıtlanabilir / uzmana yönlendir / insana devret. Conditional edge'ler talebi doğru kademeye taşıdı, kritik durumlar insana düştü. (Temsilî senaryo.)
Sık sorulan sorular
LangGraph öğrenmek için ileri Python gerekir mi?
Temel Python yeterlidir. Node'lar basit fonksiyonlardır; zorluk kavramsaldır (state ve dallanmayı düşünmek), sözdizimsel değil.
LangGraph mı LangChain mi?
Doğrusal, basit zincirler için LangChain yeter. Döngü, dallanma ve insan onayı içeren durumlu agent'lar için LangGraph daha uygundur.