Ketika klien bertanya "tolong buatkan AI Agent," saya selalu tanya balik: "Agent yang pakai komponen apa?"
Pertanyaan ini bukan untuk menunjukkan kepintaran — tapi karena pilihan komponen menentukan segalanya: cost, latency, kualitas output, dan kompleksitas maintenance. Artikel ini adalah peta lengkap semua komponen AI Agent dan kapan menggunakan masing-masing.
Peta Komponen AI Agent
LLM vs SLM vs Frontier Model
Ini adalah sumber kebingungan terbesar. Semua adalah "language model" — tapi skalanya berbeda drastis dan implication-nya juga berbeda.
| Kategori | Parameter | Contoh | Kelebihan | Kekurangan | Cocok untuk |
|---|---|---|---|---|---|
| Frontier Model | >100B (unknown) | Claude 3.5 Sonnet, GPT-4o, Gemini 1.5 Pro | Reasoning terbaik, multimodal, instruction following sangat baik | Mahal ($3–15/1M token), latency tinggi, tidak bisa self-host | Complex reasoning, code generation, customer-facing agent |
| Mid-size LLM | 7B–70B | Llama 3 70B, Mixtral 8x7B, Claude Haiku | Balance cost-performance, bisa fine-tune, lebih murah | Reasoning kurang dalam untuk task kompleks | Triage, classification, summarization, internal tools |
| SLM | 1B–7B | Phi-3 Mini, Gemma 2B, Llama 3.2 3B | Bisa jalan di CPU/edge, gratis, latency <100ms, privasi data | Kemampuan reasoning sangat terbatas | Edge inference, offline use, simple classification |
Gunakan SLM/mid-size untuk routing dan classification awal (murah, cepat), lalu panggil Frontier Model hanya untuk task yang benar-benar butuh reasoning mendalam. Ini bisa reduce cost 60–80% dibanding pakai Frontier Model untuk segalanya.
Embedding Model — Bukan Sekedar "Text to Vector"
Embedding model mengubah teks menjadi array angka (vektor) yang merepresentasikan "makna." Dua kalimat yang bermakna mirip akan menghasilkan vektor yang secara matematis dekat. Ini fondasi dari RAG, semantic search, dan clustering dokumen.
Jenis Embedding Model
Ada tiga kategori utama yang perlu dipahami:
text-embedding-3-small (OpenAI), embed-multilingual-v3 (Cohere). Untuk konten Bahasa Indonesia, Cohere multilingual konsisten lebih baik karena dilatih pada data lebih banyak bahasa.Multimodal Model — Lebih dari Sekedar "Lihat Gambar"
"Multimodal" artinya model bisa memproses lebih dari satu tipe data. Ini sudah bukan fitur premium — hampir semua frontier model sekarang multimodal by default.
| Modalitas | Input | Output | Model Contoh | Use Case Indonesia |
|---|---|---|---|---|
| Vision-Language | Gambar + teks | Teks | Claude 3, GPT-4V, Gemini | Analisis foto kerusakan properti, OCR KTP/NPWP |
| Audio-Language | Audio + teks | Teks | Whisper + LLM | Voice note WhatsApp ke teks + respons otomatis |
| Document AI | PDF/dokumen | Teks terstruktur | Claude + PDF, Gemini Flash | Ekstraksi invoice, kontrak, laporan keuangan |
| Text-to-Image | Teks | Gambar | DALL-E 3, Stable Diffusion | Mockup desain, ilustrasi konten marketing |
| Text-to-Speech | Teks | Audio | ElevenLabs, OpenAI TTS | Voice assistant, IVR, narasi video |
Untuk task yang pure text, model text-only masih sering lebih cepat dan lebih murah daripada multimodal model ekuivalen. Jangan pakai GPT-4V hanya karena "lebih canggih" jika input Anda tidak ada gambarnya.
Tipe Memory dalam AI Agent
Memory adalah salah satu komponen yang paling sering kurang diperhatikan. Tanpa memory yang tepat, agent harus "mulai dari nol" setiap sesi — kehilangan konteks yang sudah dibangun.
| Tipe Memory | Cara Kerja | Kapasitas | Kecepatan | Cocok Untuk |
|---|---|---|---|---|
| In-context (Working) | Ada di context window LLM saat ini | Terbatas (128K–1M token) | Sangat cepat | Conversation turn dalam satu sesi |
| External Vector | Disimpan di vector DB, di-retrieve via similarity | Unlimited | Butuh retrieval step | Knowledge base, dokumen referensi |
| Episodic | Log kejadian dengan timestamp, query by time/context | Unlimited | Query DB | Riwayat percakapan user, audit trail |
| Entity Memory | Graf relasi antar entitas (user, produk, tiket) | Unlimited | Graph query | CRM agent, personalization |
Tool Layer — "Tangan" Agent
Tools adalah apa yang membuat agent lebih dari sekedar chatbot cerdas. Tanpa tools, agent hanya bisa berbicara — dengan tools, ia bisa bertindak.
from langchain_core.tools import tool
from typing import Annotated
# Tool untuk setiap kapabilitas yang dibutuhkan agent
@tool
def search_knowledge_base(query: Annotated[str, "Query untuk mencari di knowledge base"]) -> str:
"""Cari informasi di knowledge base perusahaan menggunakan semantic search."""
return rag_retriever.invoke(query)
@tool
def create_support_ticket(
title: str,
description: str,
priority: Annotated[str, "HIGH, MEDIUM, atau LOW"]
) -> str:
"""Buat tiket support baru di sistem CRM."""
ticket = crm.create(title=title, body=description, priority=priority)
return f"Tiket #{ticket.id} berhasil dibuat"
@tool
def analyze_image(image_url: str) -> str:
"""Analisis gambar menggunakan Vision AI dan return deskripsi terstruktur."""
# Multimodal call ke Claude/GPT-4V
return vision_llm.invoke([{"type": "image_url", "url": image_url}])
# Agent hanya tahu nama dan deskripsi tool — tidak tahu implementasinya
# Ini separation of concerns yang membuat agent mudah di-test
tools = [search_knowledge_base, create_support_ticket, analyze_image]
Framework Memilih Komponen
Untuk proyek klien baru, saya selalu mulai dari pertanyaan ini secara berurutan:
Mulai dari komponen paling sederhana yang bisa menyelesaikan masalah. Tambahkan complexity hanya ketika ada kebutuhan nyata yang tidak bisa dipenuhi solusi sederhana.
Kesimpulan
AI Agent bukan satu produk — ini adalah komposisi dari 6 layer: UI, orchestrator, LLM/reasoning, embedding/retrieval, tools+memory+multimodal, dan infrastructure. Pilihan di setiap layer punya trade-off biaya, latency, dan capability yang berbeda.
Artikel berikutnya di series ini akan membahas setiap komponen lebih dalam — mulai dari bagaimana Midtrans payment flow benar-benar bekerja untuk developer Indonesia.