Mengapa Graf Mengungguli Rantai Datar
Agen nyata memerlukan perulangan, percobaan ulang, dan kondisi—DAG serta graf dapat mengekspresikan hal-hal yang tidak dapat diekspresikan rantai.
Mengapa Graf Mengungguli Rantai Datar adalah pelajaran AI Agents gratis di CoddyKit. Ini adalah pelajaran 1 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.
Keterbatasan Rantai
Rantai LCEL sangat cocok untuk alur linear: A -> B -> C. Rantai ini kesulitan ketika Anda memerlukan:
- Perulangan (mencoba ulang hingga berhasil)
- Percabangan bersyarat (memutuskan A atau B berdasarkan keadaan)
- Jeda dengan manusia dalam proses
- Keadaan yang tersimpan di antara pemanggilan
Agen Nyata Berbentuk Graf
Agen mengambil keputusan langkah demi langkah. Agen nyata mungkin akan:
- Merencanakan
- Mencari informasi
- Jika ditemukan, menyusun jawaban; jika tidak, mencari lagi
- Memvalidasi
- Jika tidak valid, merevisi; jika valid, mengembalikan
Ini adalah graf, bukan garis.
Memperkenalkan LangGraph
LangGraph (oleh tim LangChain) memungkinkan Anda mendefinisikan agen sebagai graf:
- Simpul — fungsi yang membaca dan memperbarui keadaan
- Sisi — simpul yang dijalankan berikutnya
- Keadaan — dict bersama yang tersimpan secara permanen
Nodes Are Just Functions
from langgraph.graph import StateGraph
class AgentState(TypedDict):
messages: list
plan: str
answer: str
def plan_step(state: AgentState) -> AgentState:
plan = generate_plan(state['messages'])
return {'plan': plan}Edges Connect Nodes
from langgraph.graph import StateGraph, END
graph = StateGraph(AgentState)
graph.add_node('plan', plan_step)
graph.add_node('search', search_step)
graph.add_node('answer', answer_step)
graph.set_entry_point('plan')
graph.add_edge('plan', 'search')
graph.add_edge('search', 'answer')
graph.add_edge('answer', END)
app = graph.compile()Running the Graph
result = app.invoke({'messages': [{'role': 'user', 'content': 'What is RAG?'}]})
print(result['answer'])Pembaruan Keadaan Digabungkan
Saat sebuah simpul mengembalikan dict sebagian, LangGraph menggabungkannya ke dalam keadaan. Anda tidak perlu menulis seluruh keadaan pada setiap langkah.
Percabangan Bersyarat
Gunakan add_conditional_edges untuk mengarahkan alur berdasarkan keadaan:
def needs_more_info(state):
if state['confidence'] < 0.7:
return 'search'
return 'answer'
graph.add_conditional_edges('plan', needs_more_info, {
'search': 'search',
'answer': 'answer'
})Loops Are Just Edges Back
graph.add_edge('search', 'plan') # loop back to planner
# The planner decides if more search is needed.Visualisasi
LangGraph menghasilkan diagram Mermaid dari graf Anda — sangat berguna untuk men-debug struktur:
from IPython.display import Image
Image(app.get_graph().draw_mermaid_png())Dibandingkan Perulangan Bersyarat Buatan Sendiri
Anda dapat melakukan ini dengan perulangan Python. LangGraph menambahkan:
- Struktur graf eksplisit (dapat divisualisasikan)
- Pembuatan titik pemeriksaan bawaan
- Pengaliran pembaruan keadaan
- Primitif manusia dalam proses
LangGraph + LCEL
Simpul dapat berupa callable apa pun — termasuk rantai LCEL. Padukan sesuka Anda:
summarise_chain = prompt | model | parser
def summarise_node(state):
return {'summary': summarise_chain.invoke(state['text'])}Kapan Menggunakan Graf
Skenario mana yang paling diuntungkan dari LangGraph dibandingkan rantai LCEL datar?
Ringkasan
Graf > rantai saat Anda memerlukan perulangan, percabangan, penyimpanan permanen, atau manusia dalam proses. LangGraph menyediakan strukturnya.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Mengapa Graf Mengungguli Rantai Datar” gratis?
Ya — teks lengkap “Mengapa Graf Mengungguli Rantai Datar” 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 “Mengapa Graf Mengungguli Rantai Datar”?
Agen nyata memerlukan perulangan, percobaan ulang, dan kondisi—DAG serta graf dapat mengekspresikan hal-hal yang tidak dapat diekspresikan rantai. 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 1 dari 4.
Berapa lama pelajaran “Mengapa Graf Mengungguli Rantai Datar” 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)