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' / ENDHindari 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 1Memvisualisasikan 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
- Mengapa Graf Mengungguli Rantai Datar
- Simpul, Sisi, dan Keadaan
- Perutean dan Percabangan Bersyarat
- Menyimpan Keadaan Graf (Titik Pemeriksaan)