0Pricing
AI Agents · Ders

Düğümler, Kenarlar ve Durum

Bir TypedDict durumu tanımlayın, onu değiştiren düğüm işlevleri yazın ve bunları yönlü kenarlarla bağlayın.

Düğümler, Kenarlar ve Durum, CoddyKit'te ücretsiz bir AI Agents dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, AI Agents öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. AI Agents kursu toplamda 4 dersten oluşur.

Bu dersin bazı bölümleri henüz çevrilmemiş olup İngilizce olarak gösterilmektedir.

State Nesnesi

Her LangGraph aracısı türü belirlenmiş bir duruma sahiptir — genellikle bir TypedDict:

from typing import TypedDict
from typing_extensions import Annotated
import operator

class AgentState(TypedDict):
    messages: Annotated[list, operator.add]   # appends instead of replaces
    plan: str
    answer: str

Durum Güncellemeleri Nasıl Çalışır?

Her düğüm kısmi bir sözlük döndürür. LangGraph:

  1. Geçerli durumu okur
  2. Düğümü bu durumla çağırır
  3. Döndürülen kısmi sözlüğü geri birleştirir

operator.add kullanılan liste alanlarında yeni öğeler mevcut değerlerin üzerine yazmak yerine eklenir.

Defining a Node

def planner(state: AgentState) -> dict:
    prompt = f'User wants: {state["messages"][-1].content}'
    plan = llm.invoke(prompt).content
    return {'plan': plan}

Registering the Node

from langgraph.graph import StateGraph, END

graph = StateGraph(AgentState)
graph.add_node('planner', planner)

Kenarları Tanımlama

Statik kenarlar koşulsuz olarak çalışır:

graph.set_entry_point('planner')
graph.add_edge('planner', 'researcher')
graph.add_edge('researcher', 'writer')
graph.add_edge('writer', END)

Koşullu Kenarlar

Dallanma için sıradaki düğümü seçen bir işlev kaydedin:

def route(state: AgentState) -> str:
    if state['needs_research']:
        return 'researcher'
    return 'writer'

graph.add_conditional_edges(
    'planner',
    route,
    {'researcher': 'researcher', 'writer': 'writer'}
)

END Özeldir

END son düğümdür. END'e giden herhangi bir kenar grafı sonlandırır ve geçerli durumu döndürür.

Compiling the Graph

app = graph.compile()
result = app.invoke({'messages': [...]})
print(result['answer'])

Durum Güncellemelerinin Akışı

Durum değişikliklerini gerçek zamanlı olarak izleyin:

for event in app.stream({'messages': [...]}):
    print(event)
# Each event is the state diff from the just-completed node.

Azaltıcı İşlevler

Karmaşık durum birleştirmeleri için özel bir azaltıcı kullanın:

def merge_facts(old, new):
    return {**old, **new}

class State(TypedDict):
    facts: Annotated[dict, merge_facts]

Alt Graflar

Bir düğüm, kendisi derlenmiş başka bir graf olabilir — hiyerarşik aracılar için kullanışlıdır:

subgraph = StateGraph(SubState).compile()
graph.add_node('subprocess', subgraph)

Eşzamansız Düğümler

Düğümler eşzamansız işlevler olabilir:

async def fetch_node(state):
    data = await fetch_async(state['url'])
    return {'data': data}

result = await app.ainvoke({...})

Düğümlerdeki Hatalar

Bir düğüm hata üretirse LangGraph hatayı yayar ve durur. Hatanın kontrollü biçimde ele alınmasını istiyorsanız düğüm içinde yakalayın:

def safe_search(state):
    try:
        return {'results': search(state['query'])}
    except Exception as e:
        return {'error': str(e), 'results': []}

Durum Güncellemeleri

Bir düğüm sözlük olarak {'plan': '...'} döndürdüğünde ne olur?

Özet

Bir TypedDict durumu tanımlayın, kısmi güncellemeler döndüren işlevler yazın, düğümler ve kenarlar ekleyin, derleyin ve çalıştırın. LangGraph budur.

Sıkça Sorulan Sorular

“Düğümler, Kenarlar ve Durum” dersi ücretsiz mi?

Evet — “Düğümler, Kenarlar ve Durum” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve AI Agents kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. AI Agents kursu toplamda 4 dersten oluşur.

“Düğümler, Kenarlar ve Durum” dersinde ne öğreneceğim?

Bir TypedDict durumu tanımlayın, onu değiştiren düğüm işlevleri yazın ve bunları yönlü kenarlarla bağlayın. AI Agents ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

AI Agents öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te AI Agents, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.

“Düğümler, Kenarlar ve Durum” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu AI Agents dersinde kod yazıp çalıştırabilir miyim?

Evet. Her AI Agents dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Grafikler Düz Zincirlerden Neden Daha İyidir
  2. Düğümler, Kenarlar ve Durum
  3. Koşullu Yönlendirme ve Dallanma
  4. Grafik Durumunu Kalıcılaştırma (Kontrol Noktaları)
← AI Agents Sayfasına Dön