Home Blog Series B B01
Series B: System Design for Indonesian Developers · B01 AI & Agentic Systems 1 September 2025 12 min read

Anatomy of an AI Agent — Semua Komponen yang Perlu Anda Tahu

LLM, SLM, Frontier Model, embedding, multimodal, memory, tools — peta lengkap semua komponen AI Agent dan kapan menggunakan masing-masing.

RM
Ryan Muliadi
Digital Systems Architect · Ryzen Digital Systems

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

Anatomy of an AI Agent — 6 Layer
LAYER 6 · USER INTERFACE Chat UI · WhatsApp · API endpoint · Telegram bot · Slack LAYER 5 · ORCHESTRATOR / AGENT FRAMEWORK LangGraph · LangChain · CrewAI · AutoGen · Custom loop (Plan→Act→Observe) LAYER 4A · LLM / REASONING Frontier: Claude 3.5 Sonnet · GPT-4o · Gemini 1.5 Pro SLM: Llama 3 · Phi-3 · Mistral · Gemma LAYER 4B · EMBEDDING / RETRIEVAL text-embedding-3-small · Cohere multilingual Vector DB: ChromaDB · Pgvector · Pinecone LAYER 3 · TOOLS Web search · Code exec File I/O · API calls · DB LAYER 3 · MEMORY In-context (short-term) External DB (long-term) LAYER 3 · MULTIMODAL Vision: foto, screenshot Audio: Whisper STT/TTS LAYER 1–2 · INFRASTRUCTURE Cloud (AWS/GCP) · Serverless (Cloudflare Workers) · On-premise · Monitoring · Auth · Rate limiting

LLM vs SLM vs Frontier Model

Ini adalah sumber kebingungan terbesar. Semua adalah "language model" — tapi skalanya berbeda drastis dan implication-nya juga berbeda.

Taksonomi Model
Frontier Model ⊃ LLM ⊃ SLM. Frontier adalah ujung terdepan capability. LLM adalah model besar (>7B parameter) secara umum. SLM adalah model kecil yang bisa jalan di hardware terbatas.
KategoriParameterContohKelebihanKekuranganCocok 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
💡 Strategi Hybrid yang Saya Pakai

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:

01
Text Embedding
Paling umum. Mengubah teks menjadi vektor dense. Contoh: 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.
02
Multimodal Embedding
Mengubah teks DAN gambar ke vector space yang sama. Ini memungkinkan pencarian "cari gambar yang mirip dengan deskripsi teks ini." Contoh: CLIP (OpenAI), ImageBind (Meta). Dipakai untuk e-commerce visual search atau analisis dokumen dengan gambar.
03
Code Embedding
Dioptimalkan untuk memahami struktur kode, bukan hanya teks. Contoh: CodeBERT, StarCoder embedding. Berguna untuk code search, duplicate detection, dan RAG di atas codebase besar.

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.

ModalitasInputOutputModel ContohUse Case Indonesia
Vision-LanguageGambar + teksTeksClaude 3, GPT-4V, GeminiAnalisis foto kerusakan properti, OCR KTP/NPWP
Audio-LanguageAudio + teksTeksWhisper + LLMVoice note WhatsApp ke teks + respons otomatis
Document AIPDF/dokumenTeks terstrukturClaude + PDF, Gemini FlashEkstraksi invoice, kontrak, laporan keuangan
Text-to-ImageTeksGambarDALL-E 3, Stable DiffusionMockup desain, ilustrasi konten marketing
Text-to-SpeechTeksAudioElevenLabs, OpenAI TTSVoice assistant, IVR, narasi video
⚠️ Multimodal Bukan Selalu Lebih Baik

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 MemoryCara KerjaKapasitasKecepatanCocok Untuk
In-context (Working)Ada di context window LLM saat iniTerbatas (128K–1M token)Sangat cepatConversation turn dalam satu sesi
External VectorDisimpan di vector DB, di-retrieve via similarityUnlimitedButuh retrieval stepKnowledge base, dokumen referensi
EpisodicLog kejadian dengan timestamp, query by time/contextUnlimitedQuery DBRiwayat percakapan user, audit trail
Entity MemoryGraf relasi antar entitas (user, produk, tiket)UnlimitedGraph queryCRM 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.

Python · Tool Layer Pattern
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:

01
Apakah butuh reasoning yang dalam?
Ya → Frontier Model (Claude, GPT-4o). Tidak / task sederhana → SLM atau mid-size LLM untuk hemat biaya.
02
Apakah ada dokumen/knowledge base internal?
Ya → butuh embedding model + vector DB (RAG). Untuk konten Indonesia, Cohere multilingual-v3 lebih baik dari OpenAI.
03
Apakah ada input selain teks?
Foto / dokumen → butuh multimodal model atau OCR pipeline. Audio → Whisper untuk transcription + LLM untuk response.
04
Apakah perlu ingat konteks lintas sesi?
Ya → external memory (PostgreSQL + pgvector atau ChromaDB). Tidak → in-context conversation history cukup.

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.