{"id":2700,"date":"2026-11-02T08:32:30","date_gmt":"2026-11-02T01:32:30","guid":{"rendered":"https:\/\/komunitech.com\/blog\/?p=2700"},"modified":"2026-11-02T08:32:30","modified_gmt":"2026-11-02T01:32:30","slug":"cara-membuat-multi-agent-system-langgraph-2026","status":"publish","type":"post","link":"https:\/\/komunitech.com\/blog\/ai-agent\/cara-membuat-multi-agent-system-langgraph-2026\/","title":{"rendered":"Cara Membuat Multi-Agent System dengan LangGraph: Panduan Step-by-Step (2026)"},"content":{"rendered":"<div style=\"background:#f8fafc;border-left:4px solid #3b82f6;padding:16px 20px;margin:24px 0;border-radius:0 6px 6px 0\">\n<p style=\"margin:0;font-size:15px;line-height:1.6;color:#1e293b\"><strong>TL;DR:<\/strong> LangGraph adalah framework open-source (lisensi MIT) dari tim LangChain untuk menyusun AI agent sebagai graph: node, edge, dan state yang tersimpan. Cara paling cepat membuat multi-agent system dengan LangGraph per November 2026 adalah pola supervisor lewat tool calling, yaitu agen spesialis dibungkus jadi tool lalu dikoordinasi satu agen utama. Dokumentasi resmi LangChain kini menyarankan pola ini dibanding library langgraph-supervisor yang masih dipakai banyak tutorial lama. Pilih LangGraph kalau kamu developer Python yang butuh kontrol per langkah; kalau tidak mau ngoding, framework lain lebih cocok.<\/p>\n<\/div>\n<div style=\"background:#f0f9ff;border-left:4px solid #0284c7;padding:16px 20px;margin:24px 0;border-radius:0 6px 6px 0\">\n<p style=\"margin:0 0 8px;font-size:12px;font-weight:700;letter-spacing:0.05em;text-transform:uppercase;color:#0284c7\">\ud83d\udca1 KEY TAKEAWAY<\/p>\n<ul style=\"margin:0;padding-left:1.2em;font-size:15px;line-height:1.6;color:#0c4a6e\">\n<li style=\"margin-bottom:6px\"><strong>Kekuatan utama:<\/strong> LangGraph bisa mencampur langkah pasti (kode biasa) dan langkah yang diputuskan AI dalam satu alur kerja.<\/li>\n<li style=\"margin-bottom:6px\"><strong>Pola rekomendasi terbaru:<\/strong> supervisor via tool calling, bukan library langgraph-supervisor.<\/li>\n<li style=\"margin-bottom:6px\"><strong>Syarat:<\/strong> Python 3.10 ke atas dan API key model AI.<\/li>\n<li style=\"margin-bottom:0\"><strong>Keamanan:<\/strong> beberapa CVE pernah menimpa paket checkpoint LangGraph, jadi selalu pakai versi terbaru.<\/li>\n<\/ul>\n<\/div>\n<p>Banyak developer pertama kali mencoba multi-agent lewat framework berbasis peran: bikin &#8220;agen riset&#8221;, &#8220;agen penulis&#8221;, lalu biarkan mereka mengobrol. Hasilnya cepat jadi, tapi susah dikendalikan begitu alurnya harus pasti, misalnya pesanan wajib dicek stoknya dulu sebelum dicatat. LangGraph mengambil arah sebaliknya: kamu menggambar alurnya sendiri sebagai graph, lalu menentukan di titik mana AI boleh mengambil keputusan.<\/p>\n<h2>Apa Itu LangGraph?<\/h2>\n<p>LangGraph adalah framework orkestrasi tingkat rendah untuk membangun agen yang berjalan lama dan menyimpan state. <a href=\"https:\/\/docs.langchain.com\/oss\/python\/langgraph\/overview\" rel=\"noopener nofollow\" target=\"_blank\">Dokumentasi resmi LangGraph<\/a> menyebut kemampuan intinya: eksekusi yang tahan gangguan (durable execution), streaming, human-in-the-loop, dan persistence. Per November 2026, versi terbaru di <a href=\"https:\/\/pypi.org\/project\/langgraph\/\" rel=\"noopener nofollow\" target=\"_blank\">PyPI<\/a> adalah langgraph 1.2.19 dengan lisensi MIT.<\/p>\n<p>Tiga istilah yang akan sering muncul:<\/p>\n<ul>\n<li><strong>State:<\/strong> data bersama yang dibawa sepanjang alur, misalnya isi pesan pelanggan dan jawaban sementara.<\/li>\n<li><strong>Node:<\/strong> satu langkah kerja. Bisa berupa fungsi Python biasa atau pemanggilan agen AI.<\/li>\n<li><strong>Edge:<\/strong> jalur dari satu node ke node berikutnya. Conditional edge memilih jalur berdasarkan isi state.<\/li>\n<\/ul>\n<p>LangGraph tidak wajib dipakai bersama LangChain, tapi dokumentasi resminya memakai komponen LangChain untuk model dan tool. Tutorial di halaman ini mengikuti pola yang sama.<\/p>\n<h2>Kapan Perlu Multi-Agent, dan Kapan Tidak<\/h2>\n<p><a href=\"https:\/\/docs.langchain.com\/oss\/python\/langchain\/multi-agent\" rel=\"noopener nofollow\" target=\"_blank\">Panduan multi-agent LangChain<\/a> justru membuka dengan peringatan: tidak semua tugas kompleks butuh banyak agen, karena satu agen dengan tool dan prompt yang tepat sering memberi hasil serupa. Multi-agent baru masuk akal kalau kamu butuh salah satu dari ini:<\/p>\n<ul>\n<li><strong>Context window terlalu penuh.<\/strong> Satu agen yang memegang puluhan tool mulai salah pilih tool.<\/li>\n<li><strong>Tim berbeda memegang bagian berbeda.<\/strong> Agen stok dirawat tim gudang, agen CS dirawat tim layanan.<\/li>\n<li><strong>Langkah bisa jalan paralel.<\/strong> Beberapa pengecekan dikerjakan bersamaan supaya respons lebih cepat.<\/li>\n<\/ul>\n<p>Kalau kebutuhanmu belum sampai ke situ, mulai dari satu agen dulu. Penjelasan pola arsitektur yang lebih umum ada di <a href=\"https:\/\/komunitech.com\/blog\/ai-agent\/apa-itu-multi-agent-system-pola-arsitektur-kapan-butuh-2026\/\">panduan apa itu multi-agent system dan pola arsitekturnya<\/a>.<\/p>\n<h2>Empat Pola Multi-Agent di Ekosistem LangGraph<\/h2>\n<p>Dokumentasi LangChain membagi pola multi-agent menjadi beberapa jenis, plus opsi custom workflow yang dibangun langsung dengan LangGraph. Mereka juga membandingkan jumlah panggilan model di tiga skenario uji:<\/p>\n<table>\n<thead>\n<tr>\n<th>Pola<\/th>\n<th>Cara kerja<\/th>\n<th>Permintaan sekali<\/th>\n<th>Permintaan berulang<\/th>\n<th>Lintas domain<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Subagents (supervisor)<\/td>\n<td>Agen utama memanggil agen spesialis sebagai tool<\/td>\n<td>4 panggilan<\/td>\n<td>8 panggilan<\/td>\n<td>5 panggilan, \u00b19K token<\/td>\n<\/tr>\n<tr>\n<td>Handoffs<\/td>\n<td>Agen menyerahkan kendali ke agen lain lewat perubahan state<\/td>\n<td>3 panggilan<\/td>\n<td>5 panggilan<\/td>\n<td>7+ panggilan, \u00b114K+ token<\/td>\n<\/tr>\n<tr>\n<td>Skills<\/td>\n<td>Satu agen memuat prompt khusus sesuai kebutuhan<\/td>\n<td>3 panggilan<\/td>\n<td>5 panggilan<\/td>\n<td>3 panggilan, \u00b115K token<\/td>\n<\/tr>\n<tr>\n<td>Router<\/td>\n<td>Langkah klasifikasi mengarahkan input ke agen yang tepat<\/td>\n<td>3 panggilan<\/td>\n<td>6 panggilan<\/td>\n<td>5 panggilan, \u00b19K token<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Angka di tabel berasal dari skenario uji LangChain sendiri, bukan pengukuran kami. Pola subagents paling boros panggilan di permintaan sederhana, tapi paling mudah dipecah antartim dan paling kuat untuk eksekusi paralel. Tutorial di bawah memakai pola subagents, lalu menambahkan router deterministik dengan LangGraph.<\/p>\n<h2>Persiapan: Instalasi LangGraph<\/h2>\n<p>Siapkan Python 3.10 atau lebih baru, lalu instal paketnya sesuai <a href=\"https:\/\/docs.langchain.com\/oss\/python\/langgraph\/install\" rel=\"noopener nofollow\" target=\"_blank\">halaman instalasi resmi<\/a>:<\/p>\n<pre><code>pip install -U langgraph langchain \"langchain[anthropic]\"\nexport ANTHROPIC_API_KEY=\"isi-api-key-kamu\"<\/code><\/pre>\n<p>Contoh di halaman ini memakai model Claude seperti quickstart resmi. Kamu bisa menggantinya dengan provider lain yang didukung LangChain, misalnya OpenAI, dengan mengganti nama model dan paket integrasinya. Kalau belum punya API key, langkahnya ada di <a href=\"https:\/\/komunitech.com\/blog\/tutorial\/claude-api-key-cara-daftar-bikin-pakai-ai-agent-2026\/\">panduan membuat Claude API key<\/a>.<\/p>\n<h2>Tutorial: Bikin Multi-Agent Stok dan Order untuk Toko Online<\/h2>\n<p>Studi kasusnya sederhana tapi dekat dengan bisnis kecil di Indonesia: pelanggan bertanya stok atau memesan lewat chat. Satu agen khusus mengurus stok, satu agen khusus mencatat pesanan, dan satu supervisor membagi tugas. Kode di bawah diadaptasi dari <a href=\"https:\/\/docs.langchain.com\/oss\/python\/langchain\/supervisor\" rel=\"noopener nofollow\" target=\"_blank\">tutorial supervisor resmi LangChain<\/a>; datanya masih contoh statis supaya mudah dicoba.<\/p>\n<h3>Langkah 1: Definisikan model dan tool<\/h3>\n<pre><code>from langchain.tools import tool\nfrom langchain.chat_models import init_chat_model\n\nmodel = init_chat_model(\"claude-sonnet-4-6\", temperature=0)\n\nSTOK = {\"kopi susu\": 12, \"matcha latte\": 0}\n\n@tool\ndef cek_stok(nama_produk: str) -&gt; str:\n    \"\"\"Cek sisa stok satu produk di gudang.\"\"\"\n    jumlah = STOK.get(nama_produk.lower())\n    if jumlah is None:\n        return f\"Produk {nama_produk} tidak terdaftar.\"\n    return f\"Stok {nama_produk}: {jumlah} pcs\"\n\n@tool\ndef catat_pesanan(nama_produk: str, jumlah: int, nama_pelanggan: str) -&gt; str:\n    \"\"\"Catat pesanan baru ke sistem order.\"\"\"\n    return f\"Pesanan {jumlah} {nama_produk} atas nama {nama_pelanggan} tercatat.\"<\/code><\/pre>\n<p>Docstring tiap tool penting karena model membacanya untuk memutuskan kapan tool dipakai. Di sistem nyata, isi fungsi diganti dengan panggilan ke database atau spreadsheet stokmu.<\/p>\n<h3>Langkah 2: Buat agen spesialis<\/h3>\n<pre><code>from langchain.agents import create_agent\n\nagen_stok = create_agent(\n    model,\n    tools=[cek_stok],\n    system_prompt=\"Kamu petugas gudang. Jawab pertanyaan stok hanya dari hasil tool cek_stok.\",\n)\n\nagen_order = create_agent(\n    model,\n    tools=[catat_pesanan, cek_stok],\n    system_prompt=(\n        \"Kamu petugas order. Selalu cek stok dulu. \"\n        \"Kalau stok 0 atau kurang, jangan catat pesanan dan jelaskan alasannya.\"\n    ),\n)<\/code><\/pre>\n<p>Tiap agen hanya memegang tool yang relevan. Inilah manfaat utama multi-agent: pilihan tool per agen jadi sempit, jadi peluang salah pilih ikut turun.<\/p>\n<h3>Langkah 3: Bungkus agen spesialis jadi tool<\/h3>\n<pre><code>@tool\ndef urus_stok(permintaan: str) -&gt; str:\n    \"\"\"Tanyakan ketersediaan stok produk dengan bahasa biasa.\"\"\"\n    hasil = agen_stok.invoke({\"messages\": [{\"role\": \"user\", \"content\": permintaan}]})\n    return hasil[\"messages\"][-1].text\n\n@tool\ndef urus_pesanan(permintaan: str) -&gt; str:\n    \"\"\"Proses pesanan pelanggan: nama produk, jumlah, dan nama pemesan.\"\"\"\n    hasil = agen_order.invoke({\"messages\": [{\"role\": \"user\", \"content\": permintaan}]})\n    return hasil[\"messages\"][-1].text<\/code><\/pre>\n<p>Supervisor hanya melihat dua tool tingkat tinggi ini, bukan tool teknis di dalamnya. Yang dikembalikan ke supervisor cuma jawaban akhir agen spesialis, bukan seluruh proses berpikirnya, sehingga context supervisor tetap ramping.<\/p>\n<h3>Langkah 4: Buat supervisor dan jalankan<\/h3>\n<pre><code>supervisor = create_agent(\n    model,\n    tools=[urus_stok, urus_pesanan],\n    system_prompt=(\n        \"Kamu admin toko online. Pecah permintaan pelanggan jadi tugas stok \"\n        \"atau pesanan, panggil tool yang sesuai, lalu rangkum jawabannya.\"\n    ),\n)\n\nhasil = supervisor.invoke({\n    \"messages\": [{\"role\": \"user\", \"content\": \"Kopi susu masih ada? Kalau ada pesan 3 atas nama Rina.\"}]\n})\nprint(hasil[\"messages\"][-1].text)<\/code><\/pre>\n<p>Untuk permintaan seperti contoh di atas, supervisor idealnya memanggil <code>urus_stok<\/code> lalu <code>urus_pesanan<\/code>, kemudian merangkum hasilnya dalam satu balasan. Urutan pastinya tetap diputuskan model, jadi uji beberapa variasi kalimat sebelum dipakai ke pelanggan sungguhan.<\/p>\n<div style=\"background:#f0f9ff;border-left:4px solid #0284c7;padding:16px 20px;margin:24px 0;border-radius:0 6px 6px 0\">\n<p style=\"margin:0 0 8px;font-size:12px;font-weight:700;letter-spacing:0.05em;text-transform:uppercase;color:#0284c7\">\ud83d\udca1 KEY TAKEAWAY<\/p>\n<ul style=\"margin:0;padding-left:1.2em;font-size:15px;line-height:1.6;color:#0c4a6e\">\n<li style=\"margin-bottom:6px\"><strong>Rumus pola supervisor:<\/strong> tool kecil \u2192 agen spesialis \u2192 agen dibungkus jadi tool \u2192 supervisor.<\/li>\n<li style=\"margin-bottom:0\"><strong>Deskripsi tool menentukan routing:<\/strong> tulis docstring yang spesifik, karena supervisor memilih agen dari situ.<\/li>\n<\/ul>\n<\/div>\n<h2>Tambah Alur Pasti dengan StateGraph<\/h2>\n<p>Pola supervisor menyerahkan pembagian tugas ke model. Kalau kamu ingin sebagian alur dijamin pasti, misalnya setiap pesan yang mengandung kata &#8220;pesan&#8221; atau &#8220;beli&#8221; selalu masuk jalur order, gunakan <code>StateGraph<\/code> dari <a href=\"https:\/\/docs.langchain.com\/oss\/python\/langgraph\/graph-api\" rel=\"noopener nofollow\" target=\"_blank\">Graph API LangGraph<\/a>. Di sinilah LangGraph berbeda dari framework berbasis peran.<\/p>\n<pre><code>from typing import Literal\nfrom typing_extensions import TypedDict\nfrom langgraph.graph import StateGraph, START, END\n\nclass State(TypedDict):\n    pesan: str\n    jenis: str\n    jawaban: str\n\ndef klasifikasi(state: State):\n    teks = state[\"pesan\"].lower()\n    jenis = \"order\" if (\"pesan\" in teks or \"beli\" in teks) else \"stok\"\n    return {\"jenis\": jenis}\n\ndef node_stok(state: State):\n    hasil = agen_stok.invoke({\"messages\": [{\"role\": \"user\", \"content\": state[\"pesan\"]}]})\n    return {\"jawaban\": hasil[\"messages\"][-1].text}\n\ndef node_order(state: State):\n    hasil = agen_order.invoke({\"messages\": [{\"role\": \"user\", \"content\": state[\"pesan\"]}]})\n    return {\"jawaban\": hasil[\"messages\"][-1].text}\n\ndef pilih_rute(state: State) -&gt; Literal[\"node_stok\", \"node_order\"]:\n    return \"node_order\" if state[\"jenis\"] == \"order\" else \"node_stok\"\n\nbuilder = StateGraph(State)\nbuilder.add_node(\"klasifikasi\", klasifikasi)\nbuilder.add_node(\"node_stok\", node_stok)\nbuilder.add_node(\"node_order\", node_order)\nbuilder.add_edge(START, \"klasifikasi\")\nbuilder.add_conditional_edges(\"klasifikasi\", pilih_rute, [\"node_stok\", \"node_order\"])\nbuilder.add_edge(\"node_stok\", END)\nbuilder.add_edge(\"node_order\", END)\ngraph = builder.compile()\n\nprint(graph.invoke({\"pesan\": \"Mau beli 2 matcha latte atas nama Doni\"})[\"jawaban\"])<\/code><\/pre>\n<p>Node <code>klasifikasi<\/code> adalah kode Python biasa tanpa AI, jadi hasilnya selalu sama untuk input yang sama dan mudah diaudit. AI baru bekerja di node agen. Aturan kata kunci di contoh ini sengaja dibuat sederhana; di produksi kamu bisa menggantinya dengan pengklasifikasi yang lebih ketat.<\/p>\n<h2>Menyimpan Memori Percakapan dengan Checkpointer<\/h2>\n<p>Secara default, graph tidak mengingat percakapan sebelumnya. <a href=\"https:\/\/docs.langchain.com\/oss\/python\/langgraph\/persistence\" rel=\"noopener nofollow\" target=\"_blank\">Lapisan persistence LangGraph<\/a> menyimpan state di setiap langkah lewat checkpointer, sehingga agen punya memori jangka pendek per thread percakapan.<\/p>\n<pre><code>from langgraph.checkpoint.memory import InMemorySaver\n\ngraph = builder.compile(checkpointer=InMemorySaver())\nconfig = {\"configurable\": {\"thread_id\": \"pelanggan-rina\"}}\ngraph.invoke({\"pesan\": \"Kopi susu masih ada?\"}, config)<\/code><\/pre>\n<p><code>InMemorySaver<\/code> hilang saat program berhenti, jadi cocok untuk uji coba saja. Untuk produksi, LangGraph menyediakan checkpointer berbasis database seperti SQLite dan Postgres. Checkpointer juga menjadi dasar fitur human-in-the-loop, misalnya pesanan di atas nominal tertentu harus disetujui admin dulu.<\/p>\n<h2>LangGraph vs CrewAI vs OpenClaw: Pilih yang Mana?<\/h2>\n<table>\n<thead>\n<tr>\n<th>Aspek<\/th>\n<th>LangGraph<\/th>\n<th>CrewAI<\/th>\n<th>OpenClaw<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Cara berpikir<\/td>\n<td>Graph: node, edge, state<\/td>\n<td>Tim berbasis peran (role, goal, task)<\/td>\n<td>Agen siap pakai dengan skill dan sub-agent<\/td>\n<\/tr>\n<tr>\n<td>Perlu ngoding<\/td>\n<td>Ya, Python atau JavaScript<\/td>\n<td>Ya, Python<\/td>\n<td>Konfigurasi, tanpa ngoding untuk pemakaian dasar<\/td>\n<\/tr>\n<tr>\n<td>Kontrol alur<\/td>\n<td>Sangat detail, per langkah<\/td>\n<td>Sedang, lewat proses sequential\/hierarchical<\/td>\n<td>Lewat konfigurasi agen dan skill<\/td>\n<\/tr>\n<tr>\n<td>Cocok untuk<\/td>\n<td>Developer yang butuh alur pasti dan bisa diaudit<\/td>\n<td>Prototipe tim agen yang cepat<\/td>\n<td>Pemilik bisnis yang ingin agen jalan di WhatsApp\/Telegram<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Kalau kamu ingin mencoba versi berbasis peran, ikuti <a href=\"https:\/\/komunitech.com\/blog\/ai-agent\/membangun-multi-agent-system-dengan-crewai-panduan-lengkap\/\">tutorial multi-agent dengan CrewAI<\/a>. Perbandingan yang lebih lebar, termasuk AutoGen dan Claude, ada di <a href=\"https:\/\/komunitech.com\/blog\/ai-agent\/framework-multi-agent-ai-terbaik-2026-langgraph-crewai-autogen-claude-openclaw\/\">daftar framework multi-agent AI terbaik 2026<\/a>.<\/p>\n<p>Komunitech mengajarkan pembuatan AI Agent berbasis OpenClaw untuk pebisnis yang tidak mau ngoding, sementara LangGraph lebih pas untuk tim IT yang membangun sistem sendiri dari kode. Kalau tujuanmu menjalankan tim agen untuk operasional bisnis tanpa menulis Python, lihat <a href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-bikin-tim-sub-agent-openclaw-untuk-otomatisasi-bisnis\/\">cara bikin tim sub-agent OpenClaw untuk otomatisasi bisnis<\/a>.<\/p>\n<h2>Kesalahan Umum dan Catatan Keamanan<\/h2>\n<ul>\n<li><strong>Memakai tutorial lama tanpa cek ulang.<\/strong> README resmi <a href=\"https:\/\/github.com\/langchain-ai\/langgraph-supervisor-py\" rel=\"noopener nofollow\" target=\"_blank\">langgraph-supervisor<\/a> kini menyarankan pola supervisor via tool dibanding library itu untuk sebagian besar kasus. Banyak tutorial di internet masih memakai <code>create_supervisor<\/code> dan <code>create_react_agent<\/code>.<\/li>\n<li><strong>Langsung multi-agent padahal satu agen cukup.<\/strong> Setiap agen tambahan berarti panggilan model tambahan, latensi tambahan, dan biaya token tambahan.<\/li>\n<li><strong>Deskripsi tool terlalu umum.<\/strong> Docstring seperti &#8220;fungsi untuk data&#8221; membuat supervisor salah memilih agen.<\/li>\n<li><strong>Tidak memperbarui paket checkpoint.<\/strong> Basis data <a href=\"https:\/\/nvd.nist.gov\/vuln\/search\/results?query=langgraph\" rel=\"noopener nofollow\" target=\"_blank\">NVD<\/a> mencatat beberapa CVE pada ekosistem LangGraph, antara lain CVE-2026-27794 (remote code execution di lapisan cache, diperbaiki di langgraph-checkpoint 4.0.0) dan CVE-2026-48776 (kritis, langgraph-sdk versi 0.3.14 ke bawah). Per November 2026, versi terbaru di PyPI adalah langgraph-checkpoint 4.3.1 dan langgraph-sdk 0.4.11.<\/li>\n<\/ul>\n<p>Satu batasan jujur: kode di halaman Komunitech yang sedang kamu baca diadaptasi dari dokumentasi resmi dan ditulis ulang dengan contoh lokal, tapi belum kami jalankan di lingkungan produksi. Uji di environment terpisah dulu, terutama bagian yang menulis data.<\/p>\n<h2>Pertanyaan yang Sering Ditanya<\/h2>\n<h3>Apakah LangGraph gratis?<\/h3>\n<p>Library LangGraph open-source dengan lisensi MIT dan gratis dipakai. Yang berbayar adalah pemakaian model AI lewat API, serta layanan tambahan seperti LangSmith kalau kamu memakainya untuk tracing atau deployment.<\/p>\n<h3>Apa beda LangGraph dan LangChain?<\/h3>\n<p>LangChain menyediakan komponen siap pakai seperti integrasi model, tool, dan fungsi create_agent. LangGraph adalah runtime orkestrasi tingkat rendah di bawahnya untuk mengatur alur, state, dan persistence. Agen yang dibuat dengan create_agent di LangChain berjalan di atas LangGraph.<\/p>\n<h3>Apakah LangGraph bisa dipakai dengan model selain Claude?<\/h3>\n<p>Bisa. LangGraph mendukung berbagai provider lewat integrasi LangChain, termasuk OpenAI, Google, dan Azure. Kamu cukup mengganti paket integrasi dan nama model di init_chat_model.<\/p>\n<h3>Apakah LangGraph tersedia untuk JavaScript?<\/h3>\n<p>Ya, LangGraph punya versi JavaScript\/TypeScript dengan konsep yang sama. Tutorial di halaman ini memakai versi Python.<\/p>\n<h3>Perlu berapa agen untuk mulai?<\/h3>\n<p>Mulai dari dua agen spesialis dan satu supervisor seperti contoh di atas. Tambah agen baru hanya kalau satu agen sudah memegang terlalu banyak tool atau ada tim lain yang perlu merawat bagiannya sendiri.<\/p>\n<h2>Kesimpulan<\/h2>\n<p>LangGraph cocok untuk multi-agent system yang alurnya perlu dikendalikan dan diaudit: pola supervisor via tool calling untuk pembagian tugas, lalu StateGraph untuk bagian yang wajib pasti. Kekuatan itu datang dengan harga: kamu harus menulis kode Python dan merawat versi paketnya.<\/p>\n<p>Langkah praktisnya: jalankan contoh toko online di atas dengan data dummy, ganti fungsi stok dengan data aslimu, lalu tambahkan checkpointer sebelum dipakai ke pelanggan sungguhan.<\/p>\n<h2>Referensi<\/h2>\n<ul>\n<li>LangChain. <a href=\"https:\/\/docs.langchain.com\/oss\/python\/langgraph\/overview\" rel=\"noopener nofollow\" target=\"_blank\">LangGraph overview<\/a>. Diakses 2 November 2026.<\/li>\n<li>LangChain. <a href=\"https:\/\/docs.langchain.com\/oss\/python\/langchain\/supervisor\" rel=\"noopener nofollow\" target=\"_blank\">Build a personal assistant with subagents<\/a>. Diakses 2 November 2026.<\/li>\n<li>LangChain. <a href=\"https:\/\/docs.langchain.com\/oss\/python\/langchain\/multi-agent\" rel=\"noopener nofollow\" target=\"_blank\">Multi-agent<\/a>. Diakses 2 November 2026.<\/li>\n<li>LangChain. <a href=\"https:\/\/docs.langchain.com\/oss\/python\/langgraph\/persistence\" rel=\"noopener nofollow\" target=\"_blank\">Persistence<\/a>. Diakses 2 November 2026.<\/li>\n<li>LangChain. <a href=\"https:\/\/github.com\/langchain-ai\/langgraph-supervisor-py\" rel=\"noopener nofollow\" target=\"_blank\">langgraph-supervisor-py README<\/a>. Diakses 2 November 2026.<\/li>\n<li>PyPI. <a href=\"https:\/\/pypi.org\/project\/langgraph\/\" rel=\"noopener nofollow\" target=\"_blank\">langgraph<\/a>. Diakses 2 November 2026.<\/li>\n<li>NIST. <a href=\"https:\/\/nvd.nist.gov\/vuln\/search\/results?query=langgraph\" rel=\"noopener nofollow\" target=\"_blank\">National Vulnerability Database: langgraph<\/a>. Diakses 2 November 2026.<\/li>\n<\/ul>\n<h2>Disclaimer<\/h2>\n<p>Contoh kode disediakan untuk tujuan edukasi dan diadaptasi dari dokumentasi resmi LangChain per November 2026. API dan versi paket bisa berubah; selalu cek dokumentasi terbaru sebelum dipakai di produksi. Komunitech tidak berafiliasi dengan LangChain.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>TL;DR: LangGraph adalah framework open-source (lisensi MIT) dari tim LangChain untuk menyusun AI agent sebagai graph: node, edge, dan state yang tersimpan. Cara paling cepat membuat multi-agent system dengan LangGraph per November 2026 adalah pola supervisor lewat tool calling, yaitu agen spesialis dibungkus jadi tool lalu dikoordinasi satu agen utama. Dokumentasi resmi LangChain kini menyarankan [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":2702,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[5],"tags":[],"class_list":["post-2700","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ai-agent"],"acf":[],"_links":{"self":[{"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/posts\/2700","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/comments?post=2700"}],"version-history":[{"count":1,"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/posts\/2700\/revisions"}],"predecessor-version":[{"id":2701,"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/posts\/2700\/revisions\/2701"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/media\/2702"}],"wp:attachment":[{"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/media?parent=2700"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/categories?post=2700"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/tags?post=2700"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}