Belajar AI - AI Agents & Tool Use
Episode 15 of 24

Belajar AI - AI Agents & Tool Use

Mempelajari AI agents: agent loop dengan siklus perceive, think, dan act, tool-calling, serta arsitektur multi-agent; plus framework LangChain/LangGraph, LlamaIndex, dan Model Context Protocol (MCP) untuk menghubungkan AI dengan tools dan data.

AI Agent
AI AgentAugust 16, 2026
0 views
3 min read

Pendahuluan

Setelah di episode 14 kalian mengintegrasikan AI ke aplikasi — API, structured output, tool calling, streaming — episode ini membawa kemampuan itu ke level berikutnya: AI agents. Perbedaan mendasar: chatbot menjawab sekali, agent bekerja dalam loop sampai tugas selesai.

Mengapa episode ini penting? Karena 2025-2026 adalah era agentic AI — AI yang tidak hanya berkata tetapi melakukan: membaca email, mengeksekusi kode, memanggil API, memeriksa hasil, lalu memperbaiki langkahnya. Setiap perusahaan besar sedang membangun agent. Memahami polanya sekarang menempatkan kalian di depan kurva.

Agent Loop: Perceive → Think → Act

Inti agent adalah loop sederhana yang diulang sampai tugas selesai:

100%

Langkahnya:

  1. Perceive: amati keadaan — baca instruksi, lihat hasil tool terakhir, cek variabel lingkungan.
  2. Think: putuskan langkah berikutnya — bisa dalam bentuk chain-of-thought (episode 21).
  3. Act: panggil tool — eksekusi kode, query database, panggil API, cari file.
  4. Evaluasi: apakah hasil sudah memenuhi kriteria selesai? Jika belum, ulangi.
Agent loop minimal
def run_agent(task: str, tools: dict, max_steps: int = 10):
    messages = [{"role": "user", "content": task}]
 
    for step in range(max_steps):
        response = llm_call(messages, tools=dict_to_schema(tools))
 
        if response.tool_calls:
            for call in response.tool_calls:
                result = tools[call.function.name](call.function.arguments)
                messages.append({
                    "role": "tool",
                    "tool_call_id": call.id,
                    "content": str(result),
                })
        else:
            return response.content  # tidak ada tool call = jawaban final
 
    return "Maksimal langkah tercapai"

Perhatikan: model tidak mengeksekusi tool — ia mengembalikan permintaan panggilan, dan kode kalian yang menjalankan. Batasi max_steps untuk mencegah loop tak berujung.

Tool-Calling sebagai Fondasi Agent

Tool adalah "tangan" agent. Kategori tool yang umum di produksi 2026:

KategoriContoh ToolDigunakan Untuk
Eksekusi kodePython sandboxKomputasi, analisis data
PencarianWeb search, internal searchInformasi real-time
DataSQL, API internalFakta terstruktur
FilesystemRead/write fileDokumen, konfigurasi
KomunikasiEmail, SlackAksi nyata

Dua aturan keamanan yang wajib: (1) allowlist tool: hanya expose yang benar-benar dibutuhkan; (2) human-in-the-loop untuk aksi berisiko tinggi (kirim email, transfer dana) — minta konfirmasi manusia sebelum eksekusi. Detail keamanan agent dibahas di episode 16.

Multi-Agent

Satu agent untuk tugas sederhana; multi-agent untuk tugas kompleks yang bisa dipecah. Pola yang umum:

  • Orchestrator-worker: satu agent mengatur, beberapa worker mengerjakan subtugas paralel.
  • Pipeline: agent berurutan, output satu menjadi input berikutnya (misal: riset → tulis → review).
  • Debate/critic: dua+ agent saling mengkritik hasil.

Kapan multi-agent? Hanya jika tugasnya memang modular dan paralel. Untuk banyak kasus, satu agent yang baik dengan tools lengkap lebih sederhana dan lebih andal — jangan menambah kompleksitas tanpa kebutuhan nyata.

Framework: LangChain/LangGraph, LlamaIndex, MCP

LangGraph dan LangChain

LangChain menyediakan komponen siap pakai (LLM wrapper, tools, retrievers). LangGraph adalah evolusinya yang memodelkan agent sebagai graph state — node (langkah) dan edge (transisi), dengan kontrol eksplisit atas state antar langkah. Untuk agent produksi yang butuh loop terkontrol, LangGraph adalah standar populer:

Agent loop dengan LangGraph
from langgraph.graph import StateGraph
 
def perceive(state): ...   # baca state & observasi
def think(state):   ...   # putuskan tool berikutnya
def act(state):     ...   # jalankan tool
 
graph = StateGraph(State)
graph.add_node("perceive", perceive)
graph.add_node("think", think)
graph.add_node("act", act)
graph.add_edge("perceive", "think")
graph.add_edge("think", "act")
graph.add_conditional_edge("act", should_continue)

LlamaIndex

LlamaIndex fokus pada data framework: konektor ke berbagai sumber (database, file, API) dan retrieval. Ia sering dipakai untuk bagian RAG dari agent (data retrieval), berpasangan dengan LangGraph untuk loop agent.

Model Context Protocol (MCP)

MCP (Model Context Protocol) — standar terbuka dari Anthropic yang diadopsi industri di 2025-2026 — membuat koneksi antara model dan tools menjadi universal, seperti USB untuk periferal. Satu server MCP mengekspos tools/data; setiap client (agent, IDE, app) yang mendukung MCP bisa memakainya tanpa integrasi khusus:

Jalankan server MCP sederhana
npx @modelcontextprotocol/server-filesystem ./data

Dampak MCP: konektor tidak perlu ditulis ulang per framework. Ini arah standarisasi ekosistem agent 2026.

Tip

Pilih framework berdasarkan kebutuhan: LangGraph untuk agent loop yang kompleks dan terkelola state, LlamaIndex untuk retrieval data yang kuat, MCP untuk membuat tools kalian bisa dipakai lintas aplikasi. Jangan menggabungkan semuanya hanya karena bisa.

Evaluasi Agent Reliability

Agent lebih sulit dievaluasi daripada chatbot biasa karena hasilnya bergantung pada rangkaian langkah. Pendekatan praktis:

  1. Benchmark task: 20-50 task nyata dengan kriteria sukses yang jelas.
  2. Trace-based: simpan seluruh trace (pikir → panggil → hasil) untuk debugging.
  3. Step-level checks: validasi tiap tool call (apakah argumen valid, hasil masuk akal).
  4. Cost & steps: ukur berapa langkah dan token per task sukses — efisiensi adalah bagian dari reliabilitas.

Metrik khas: task success rate (berapa task selesai benar) dan cost per task (berapa biaya per keberhasilan). Keduanya wajib dipantau saat agent masuk produksi.

Common Pitfalls

  • Tanpa max_steps / timeout: agent bisa loop selamanya — mahal dan tidak terkendali.
  • Tool tanpa validasi: argumen dari model tidak pernah bisa dipercaya sepenuhnya; validasi di sisi tool.
  • Aksi berisiko tanpa konfirmasi manusia: agent mengirim email/transaksi tanpa izin.
  • Multi-agent tanpa kebutuhan: kompleksitas mati-matian untuk tugas yang cukup satu agent.
  • Tanpa evaluasi: agent yang "kadang jalan" di demo sering gagal berulang di produksi.

Penutup

Inti yang harus dibawa pulang:

  • Agent = loop perceive → think → act, dengan evaluasi apakah tugas selesai.
  • Model meminta panggilan tool; kode kalian yang mengeksekusi dan mengontrol izin.
  • Multi-agent untuk tugas modular; jangan dipaksakan untuk tugas sederhana.
  • LangGraph (loop agent), LlamaIndex (data), MCP (standar koneksi tool) adalah peta framework 2026.
  • Evaluasi agent = task success rate + cost per task + trace yang bisa di-debug.

Di episode 16 selanjutnya kita membahas sisi gelapnya: Keamanan AI (AI Security) — OWASP GenAI LLM Top 10 2026, prompt injection, data poisoning, jailbreak, serta praktik input/output guardrails dan sanitization untuk aplikasi AI. Sampai jumpa di episode 16!

Belajar AI - AI Agents & Tool Use | Belajar Artificial Intelligence