0Pricing
AI Agents · Pelajaran

Perutean dan Percabangan Bersyarat

Gunakan add_conditional_edges untuk mengarahkan alur berdasarkan keadaan—agen menentukan tujuan berikutnya.

Perutean dan Percabangan Bersyarat adalah pelajaran AI Agents gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar AI Agents, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus AI Agents mencakup 4 pelajaran total.

Bagian dari pelajaran ini belum diterjemahkan dan ditampilkan dalam bahasa Inggris.

Mengapa Sisi Bersyarat?

Agen nyata mengambil keputusan. Setelah suatu langkah, langkah berikutnya bergantung pada keadaan saat ini. Sisi bersyarat menyandikan logika tersebut.

Menambahkan Sisi Bersyarat

Tiga komponen: simpul sumber, fungsi pengarah, peta tujuan:

def route_after_planning(state: AgentState) -> str:
    if state.get('confidence', 0) > 0.8:
        return 'execute'
    return 'replan'

graph.add_conditional_edges(
    'planner',
    route_after_planning,
    {
        'execute': 'executor',
        'replan': 'planner'
    }
)

Tanda Tangan Fungsi Pengarah

Pengarah menerima keadaan lengkap dan mengembalikan string (atau daftar string untuk cabang paralel).

Perulangan Mandiri

Sebuah sisi dapat kembali ke simpul yang sama — digunakan untuk percobaan ulang:

graph.add_conditional_edges(
    'validator',
    lambda s: 'retry' if not s['valid'] else 'done',
    {'retry': 'planner', 'done': END}
)

Cabang Paralel

Kembalikan daftar nama simpul untuk menjalankan beberapa simpul hilir secara paralel:

def fan_out(state):
    return ['search_news', 'search_arxiv', 'search_github']

graph.add_conditional_edges('planner', fan_out)

Menggabungkan Cabang Paralel

Cabang paralel kembali bertemu di simpul hilir yang sama. Penggabungan keadaan menggabungkan keluaran mereka (gunakan pereduksi untuk daftar/dict).

Pengarahan Berdasarkan Pemanggilan Alat

Pola klasik: setelah LLM merespons, periksa tool_calls dan arahkan alur sesuai hasilnya:

def should_use_tool(state):
    last_msg = state['messages'][-1]
    if last_msg.tool_calls:
        return 'tools'
    return END

graph.add_conditional_edges('agent', should_use_tool, {'tools': 'tools', END: END})

Pengarahan Multi-Jalur

Logika switch-case:

def route_by_intent(state):
    intent = classify(state['messages'][-1])
    return {'q': 'qa_agent', 'order': 'order_agent', 'support': 'support_agent'}.get(intent, 'fallback')

Pengarahan dengan Pemanggilan LLM

Anda dapat menggunakan LLM untuk menentukan tujuan berikutnya:

def llm_router(state):
    decision = llm.invoke(f'Route this to: search, calculate, or end?\nState: {state}').content.strip()
    return decision  # 'search' / 'calculate' / END

Hindari Perulangan Tak Terbatas

Tanpa penghitung langkah, agen dapat berulang selamanya. Tambahkan penghitung ke keadaan:

class State(TypedDict):
    step: int
    ...

def route(state):
    if state['step'] >= MAX_STEPS:
        return END
    return 'continue'

Increment Counter Reducer

def add(old: int, new: int) -> int:
    return old + new

class State(TypedDict):
    step: Annotated[int, add]

def any_node(state):
    return {'step': 1}   # increments by 1

Memvisualisasikan Cabang

Diagram Mermaid dari graf dengan sisi bersyarat menampilkan bentuk wajik keputusan — berguna untuk peninjauan:

print(app.get_graph().draw_mermaid())

Sisi Bersyarat

Apa yang dikembalikan fungsi pengarah dalam add_conditional_edges?

Ringkasan

Sisi bersyarat adalah cara agen mengambil keputusan. Tambahkan penghitung langkah untuk menghindari perulangan, dan visualisasikan graf agar Anda tetap dapat mengendalikan alurnya.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Perutean dan Percabangan Bersyarat” gratis?

Ya — teks lengkap “Perutean dan Percabangan Bersyarat” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus AI Agents, upgrade ke CoddyKit PRO. Kursus AI Agents mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Perutean dan Percabangan Bersyarat”?

Gunakan add_conditional_edges untuk mengarahkan alur berdasarkan keadaan—agen menentukan tujuan berikutnya. Kamu berlatih AI Agents dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai AI Agents?

Tidak diperlukan pengalaman sebelumnya. AI Agents di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.

Berapa lama pelajaran “Perutean dan Percabangan Bersyarat” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran AI Agents ini?

Ya. Setiap pelajaran AI Agents menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Mengapa Graf Mengungguli Rantai Datar
  2. Simpul, Sisi, dan Keadaan
  3. Perutean dan Percabangan Bersyarat
  4. Menyimpan Keadaan Graf (Titik Pemeriksaan)
← Kembali ke AI Agents