Membangun AI Agent dengan LangGraph: Tutorial Langkah demi Langkah

LangGraph AI agent ditampilkan sebagai kompas state bercabang dengan rute kondisional, checkpoint, dan interrupt

Turn this article into takeaways for your work.

Each assistant summarizes the article only for you and suggests best practices for your work.

LangGraph adalah framework tingkat rendah dari LangChain untuk membangun AI agent stateful sebagai graph eksplisit berisi node dan edge, yang memberi Anda kendali langsung atas cara agent bercabang, berhenti sejenak, dan menyimpan state selama tugas yang berjalan lama. Ini adalah jalur kode yang dipilih tim ketika sebuah pekerjaan membutuhkan logika kondisional, alur persetujuan multi-langkah, atau memori yang bertahan berhari-hari, bukan hanya satu percakapan. Panduan ini membahas apa sebenarnya LangGraph, cara menginstalnya, langkah pembangunan lengkap dengan dua contoh yang berfungsi, dan kapan ia menjadi platform yang tepat dibanding alternatifnya.

Apa Sebenarnya LangGraph Itu

LangGraph adalah framework orkestrasi tingkat rendah sekaligus runtime untuk membangun, mengelola, dan men-deploy agent stateful yang berjalan lama. Ia terpisah dari abstraksi tingkat tinggi LangChain, LangChain memberi Anda model, tools, dan pola agent siap pakai; LangGraph memberi Anda runtime berbasis graph di bawahnya, tempat Anda mendefinisikan node sebagai langkah komputasi, edge sebagai jalur di antaranya, dan objek state bersama yang mengalir sepanjang eksekusi. Ini keputusan desain yang disengaja: default yang masuk akal ketika Anda tidak butuh banyak kendali, graph eksplisit ketika Anda membutuhkannya.

Penggunaan produksi nyata mendukung klaim ini. Tulisan LangChain sendiri tentang LangGraph di produksi menyebut Uber (migrasi kode skala besar di platform developer-nya), LinkedIn (AI recruiter yang mengotomatiskan sourcing dan pesan ke kandidat), Replit (sistem multi-agent dengan tinjauan human-in-the-loop), dan Elastic (mengorkestrasi jaringan agent untuk deteksi ancaman real-time) sebagai pengguna produksi. Copilot manajemen properti AppFolio, yang juga dibangun di LangGraph, menghemat lebih dari 10 jam per minggu bagi para manajer propertinya dan menggandakan akurasi keputusan mereka, hasil yang konkret, bukan klaim adopsi yang samar.

Deployment semacam itu kini menjadi norma, bukan pengecualian. Gartner memproyeksikan 40% aplikasi enterprise akan menghadirkan AI agent khusus tugas pada akhir 2026, naik dari kurang dari 5% pada 2025, dan porsi yang berarti dari pergeseran itu terjadi di framework yang dibuat khusus untuk sistem multi-agent seperti LangGraph, tempat sebuah graph dapat memodelkan orchestrator yang menyerahkan pekerjaan ke beberapa node terspesialisasi, bukan satu model mengerjakan semuanya dalam satu putaran.

Kosakata LangGraph, Dipetakan ke 6 Blok Penyusun

Jika Anda sudah membaca cara membangun AI agent, Anda tahu enam blok yang dibutuhkan setiap agent: Peran, Alat, Aturan, Panduan skenario, Logika keputusan, dan Pagar pengaman. LangGraph memberi masing-masing tempat yang konkret di dalam kode.

Blok penyusun Rework Konsep LangGraph
Peran system_prompt yang diteruskan ke agent tingkat tinggi, atau instruksi milik sebuah node
Alat Fungsi Python yang diteruskan sebagai tools=[...], atau node pemanggil tool khusus
Aturan Instruksi yang ditulis dalam system prompt atau logika sebuah node
Panduan skenario Graph itu sendiri, node sebagai langkah, edge sebagai jalur di antaranya
Logika keputusan Conditional edge yang mengarahkan eksekusi ke node lain berdasarkan state
Pagar pengaman Panggilan interrupt() yang berhenti untuk tinjauan manusia, ditambah logika validasi di dalam node

Tidak ada di sini yang unik bagi LangGraph secara konseptual. Yang ditambahkan LangGraph adalah graph yang eksplisit dan dapat diperiksa, bukan loop kotak hitam, tepat jenis kendali yang menurut AI agent no-code vs kode sebaiknya Anda cari begitu logika sebuah pekerjaan benar-benar kustom.

Menginstal LangGraph

pip install -U langgraph langchain

langgraph adalah pustaka graph dan runtime inti. langchain menambahkan create_agent, titik masuk tingkat tinggi saat ini untuk agent pemanggil tool standar, yang berjalan di atas LangGraph di balik layar. Atur API key untuk penyedia model Anda sebagai environment variable dan Anda siap membangun.

Jalur Cepat: create_agent

Untuk satu agent yang hanya membutuhkan model, beberapa tools, dan system prompt, Anda tidak perlu menyentuh graph secara langsung:

Jalur cepat LangGraph create_agent ditampilkan sebagai kunci pintas yang menyatukan system prompt, model, dan soket tool

from langchain.agents import create_agent

def get_account_status(company: str) -> str:
    """Look up a customer account's status by company name."""
    return f"{company}: active, plan tier Growth, renewal in 45 days."

agent = create_agent(
    model="claude-sonnet-4-6",
    tools=[get_account_status],
    system_prompt="You are a support assistant. Answer only from tool results, never guess.",
)

result = agent.invoke(
    {"messages": [{"role": "user", "content": "What's the status of Acme Corp's account?"}]}
)
print(result["messages"][-1].content)

Ini adalah mekanisme cara AI agent menggunakan tools yang sama dengan yang diandalkan setiap platform: deskripsikan sebuah fungsi, biarkan model memutuskan kapan memanggilnya, lalu masukkan kembali hasilnya. create_agent menggantikan helper create_react_agent LangGraph yang lebih lama sebagai titik awal yang direkomendasikan, ide yang sama, API yang lebih bersih.

Lebih Rendah Levelnya: Graph Kustom dengan Conditional Routing

Jalur cepat mencakup banyak hal, tetapi tidak dapat mengungkapkan "lakukan X, lalu bercabang ke langkah tinjauan manusia hanya jika risiko ditandai." Untuk itu, Anda membangun graph secara langsung. Berikut alur tinjauan kontrak yang disederhanakan, mirip dengan cetak biru AI Contract Review Agent: menganalisis kontrak, lalu mengarahkan ke peninjau manusia atau menyetujui otomatis tergantung temuan analisis.

Conditional routing LangGraph mengirim kapsul state kontrak ke tinjauan manusia atau persetujuan otomatis berdasarkan risiko

from typing import TypedDict
from langgraph.graph import StateGraph, START, END
from langgraph.checkpoint.memory import InMemorySaver

class ReviewState(TypedDict):
    contract_text: str
    risk_flagged: bool
    summary: str

def analyze_contract(state: ReviewState) -> dict:
    # call the model here to extract terms and set risk_flagged
    return {"risk_flagged": True, "summary": "Non-standard liability cap on page 4."}

def route_on_risk(state: ReviewState) -> str:
    return "human_review" if state["risk_flagged"] else "auto_approve"

def human_review(state: ReviewState) -> dict:
    return {"summary": state["summary"] + " Routed to legal for review."}

def auto_approve(state: ReviewState) -> dict:
    return {"summary": state["summary"] + " Auto-approved, no flags."}

graph = StateGraph(ReviewState)
graph.add_node("analyze", analyze_contract)
graph.add_node("human_review", human_review)
graph.add_node("auto_approve", auto_approve)

graph.add_edge(START, "analyze")
graph.add_conditional_edges("analyze", route_on_risk, {
    "human_review": "human_review",
    "auto_approve": "auto_approve",
})
graph.add_edge("human_review", END)
graph.add_edge("auto_approve", END)

app = graph.compile(checkpointer=InMemorySaver())

add_conditional_edges adalah blok logika keputusan yang diwujudkan secara harfiah: setelah analyze berjalan, route_on_risk memeriksa state dan mengirim eksekusi ke salah satu dari dua jalur bernama. Itu percabangan yang tidak dapat diungkapkan dengan rapi oleh satu loop pemanggil tool yang linear, dan itulah alasan tim memilih LangGraph begitu sistem multi-agent atau alur persetujuan multi-langkah masuk ke dalam gambaran.

Persistence dan Memory

Argumen checkpointer pada compile() adalah yang membuat graph dapat dilanjutkan, bukan stateless. InMemorySaver, seperti ditunjukkan di atas, cukup untuk pengujian lokal tetapi hilang saat proses dimulai ulang. Graph produksi menggunakan backend persisten, checkpoint saver SQLite atau Postgres tersedia sebagai paket terpisah yang dapat diinstal, dengan kunci thread_id sehingga state eksekusi tertentu dapat dimuat ulang dan dilanjutkan berhari-hari kemudian. Itu adalah pembedaan working memory versus persistent memory yang sama yang dibahas secara umum di memori AI agent: checkpointer adalah jawaban konkret LangGraph untuk persistent memory.

Persistence checkpoint LangGraph ditampilkan sebagai gulungan state graph yang disimpan per thread di brankas yang dapat dilanjutkan

Human-in-the-Loop dengan Interrupt

Fungsi interrupt() LangGraph menjeda eksekusi graph di titik tertentu dan menunggu input eksternal sebelum melanjutkan, tepat yang dibutuhkan node human_review di atas dalam implementasi nyata, bukan logika placeholder yang ditampilkan. Seseorang (atau sistem lain) meninjau state yang dijeda dan merespons, graph melanjutkan dari titik persis itu menggunakan state yang di-checkpoint, bukan mulai dari awal. Ini mekanisme konkret di balik gerbang persetujuan yang dibahas secara umum di human-in-the-loop untuk AI agent: graph tidak menebak kapan manusia harus turun tangan, Anda memasang keputusan itu langsung ke dalam logika routing.

Interrupt human-in-the-loop LangGraph menjeda kapsul state tersimpan untuk ditinjau sebelum dilanjutkan

Guardrails dan Pengujian Sebelum Rilis

Conditional edge hanya sebaik logika yang menentukan arah routing-nya, jadi validasi logika itu sebelum menyentuh kontrak, tiket, atau catatan yang nyata. Tambahkan pemeriksaan eksplisit di dalam node (tolak atau coba ulang keluaran yang gagal pada aturan yang Anda tentukan) alih-alih hanya mengandalkan penilaian model, disiplin yang dibahas di guardrails AI agent. Dan jangan menganggap graph selesai setelah satu uji coba yang bersih. Cara mengevaluasi dan menguji AI agent membahas cara menyusun set uji nyata dari kasus historis, termasuk kasus berantakan yang seharusnya diarahkan ke tinjauan manusia, sebelum agent LangGraph apa pun menyentuh volume produksi.

Biaya dan Batasan

LangGraph sendiri gratis dan open source. Yang Anda bayar adalah penggunaan API LLM, dan graph dengan lebih banyak node dan cabang melakukan lebih banyak panggilan model daripada satu agent dengan cakupan yang baik yang mengerjakan hal yang sama, tradeoff yang sama yang dibahas di sistem multi-agent. Jika Anda tidak ingin meng-host dan memantau graph sendiri, LangChain juga menawarkan LangGraph Platform, opsi deployment terkelola berbayar dengan persistence dan observability bawaan; menjalankannya sendiri tidak dikenai biaya selain infrastruktur Anda dan panggilan model.

Batasan sebenarnya bukan harga, melainkan bahwa LangGraph tidak menyediakan pembuat visual dan konektor aplikasi siap pakai. Setiap integrasi, setiap kebijakan retry, setiap penanganan error adalah kode yang Anda tulis, yang merupakan imbal langsung untuk kendali yang diberikan graph dibanding logika terbatas pada platform no-code.

Kapan Memilih LangGraph vs Alternatif

Jika Anda menginginkan... Pertimbangkan
Kendali maksimum atas percabangan, state, dan persistence jangka panjang, sebagai graph eksplisit LangGraph
API berbasis peran yang lebih mudah dibaca untuk pekerjaan multi-agent CrewAI
Tim bisnis yang membangun tanpa menulis kode Lihat AI agent no-code vs kode
Jalur tercepat ke agent yang berfungsi di seluruh katalog aplikasi yang sudah Anda pakai Zapier atau Make
Platform enterprise dengan grounding Microsoft 365 dan tata kelola bawaan Microsoft Copilot Studio
Kendali penuh langsung pada model OpenAI, abstraksi minimal Responses API OpenAI

Key Facts

  • LangGraph adalah framework orkestrasi dan runtime tingkat rendah, open source, untuk agent stateful, terpisah tetapi melengkapi abstraksi tingkat tinggi LangChain.
  • Pengguna produksi yang terdokumentasi meliputi Uber, LinkedIn, Replit, dan Elastic; copilot AppFolio yang dibangun dengan LangGraph menghemat 10+ jam per minggu bagi manajer properti dan menggandakan akurasi keputusan.
  • create_agent di paket langchain adalah titik masuk tingkat tinggi yang direkomendasikan saat ini, menggantikan helper create_react_agent yang lebih lama, dan berjalan di atas LangGraph.
  • StateGraph dengan add_conditional_edges memungkinkan agent bercabang berdasarkan keluarannya sendiri, mekanisme di balik alur persetujuan dan logika keputusan multi-langkah.
  • checkpointer (in-memory untuk pengujian, SQLite atau Postgres untuk produksi) membuat graph dapat dilanjutkan lintas sesi, dengan kunci thread_id.

Langkah Selanjutnya

LangGraph adalah satu jalur kode menuju agent yang berfungsi, bukan satu-satunya. Membangun AI agent dengan CrewAI membahas framework yang lebih berbasis peran untuk pekerjaan multi-agent, dan jika Anda masih menimbang antara menulis kode dan memakai pembuat visual sama sekali, memilih platform AI agent membahas keputusan itu secara langsung di antara opsi no-code, framework, dan terkelola. Setelah graph berfungsi andal dalam pengujian, men-deploy AI agent ke produksi membahas rencana rollout dan rollback sebelum menyentuh volume nyata. Rangkuman alat dev dan panduan membeli asisten coding AI adalah tujuan berikutnya yang berguna untuk menulis dan merawat kodenya dengan lebih cepat.

About the author

Victor Hoang

Victor Hoang

Co-Founder, Rework.com

Victor Hoang is Co-Founder and CMO of Rework. He spent 12+ years scaling B2B SaaS growth, building a lead engine that generated over 1 million leads and $10M+ in annual recurring revenue. Today he builds AI agents and MCP servers into Rework's products to empower customers across growth and operations. He writes about what actually works.