Dalam era digital saat ini, penerapan kecerdasan buatan (AI) dalam e-commerce semakin menjadi kebutuhan utama untuk meningkatkan pengalaman pengguna dan efisiensi operasional. Salah satu cara inovatif untuk mengembangkan agen AI yang cerdas dan adaptif adalah dengan menggunakan AgentKit atau Agents SDK. Artikel ini mengulas secara mendalam bagaimana membangun agen AI untuk aplikasi e-commerce, khususnya toko online fiktif bernama "ShopAI" yang menjual produk elektronik.
Contoh sketsa implementasi ini menampilkan sebuah agen cerdas yang mampu membantu pelanggan dalam mencari produk, membandingkan harga, memfilter hasil pencarian, serta memasukkan produk ke dalam keranjang belanja secara otomatis. Meskipun beberapa modul seperti AgentKit visual dan ChatKit mungkin belum tersedia secara publik secara penuh, konsep dan logika dasarnya dapat dibangun menggunakan Agents SDK.
Skenario dan Tujuan
- Anda memiliki toko online "ShopAI" yang menyediakan berbagai produk elektronik.
- Mengembangkan agen bernama ProductAgent yang dapat memenuhi permintaan pengguna, seperti "Cari laptop gaming di bawah Rp 20 juta".
- Agen ini akan mengambil data produk dari database atau API toko, membandingkan dan memfilter hasil berdasarkan rating, stok, dan harga.
- Memberikan daftar produk terbaik beserta rekomendasi yang relevan.
- Jika pengguna memilih produk, agen akan melakukan commit ke keranjang melalui API dan menyediakan link untuk checkout.
- Untuk manajemen yang lebih terstruktur, peran agen dapat dibagi menjadi sub-agen seperti SearchAgent, FilterAgent, dan CartAgent, serta memungkinkan proses handoff antar agen sesuai kebutuhan.
Dependensi dan Setup Awal dengan Python
Langkah pertama adalah memasang library Agents SDK yang menjadi fondasi pengembangan agen AI. Berikut adalah perintah instalasinya:
pip install openai-agents openaiSelanjutnya, konfigurasi API key OpenAI diperlukan untuk otentikasi dan akses layanan AI:
import os
from agents import Agent, run, Handoff, input_guardrail, OutputGuardrailTripwireTriggered
from typing import List, Optional
from pydantic import BaseModel
# Konfigurasi API key OpenAI
os.environ["OPENAI_API_KEY"] = "sk-…your_key…"Definisikan Model Output dan Guardrails
Untuk memastikan agen berfungsi sesuai harapan dan aman, kita mendefinisikan model output menggunakan pydantic.BaseModel dan menerapkan input guardrails untuk mencegah permintaan yang tidak pantas atau terlalu luas.
class SearchOutput(BaseModel):
product_ids: List[str]
reasoning: str
class CartOutput(BaseModel):
success: bool
message: str
# Guardrail: mencegah permintaan terlalu luas atau tidak sopan
@input_guardrail
async def input_guard(ctx, agent, user_input: str):
# contoh sederhana: larang karakter aneh atau kata kasar
if "hack" in user_input.lower():
raise OutputGuardrailTripwireTriggered("Permintaan tidak diperbolehkan")
return NoneMendefinisikan Agen-Agen
Agen utama yang dibutuhkan adalah SearchAgent untuk pencarian produk dan CartAgent untuk mengelola keranjang belanja. Berikut contoh inisialisasinya:
# Agen pencarian produk
search_agent = Agent(
name="SearchAgent",
instructions="You search products in our shop database via API and return relevant IDs and reasoning.",
output_type=SearchOutput,
)
# Agen keranjang
cart_agent = Agent(
name="CartAgent",
instructions="You add product to cart via ShopAI API given product_id, and return success or failure message.",
output_type=CartOutput,
)Fungsi Tool dan API Helper
Untuk menghubungkan agen dengan sistem toko online, kita membutuhkan fungsi helper yang berkomunikasi dengan API ShopAI. Contoh fungsi asynchronous untuk pencarian produk dan penambahan ke keranjang adalah sebagai berikut:
import httpx
SHOP_API_BASE = "https://api.shopai.com"
async def fetch_products(query: str) -> List[dict]:
resp = await httpx.get(f"{SHOP_API_BASE}/search", params={"q": query})
return resp.json().get("products", [])
async def add_to_cart(product_id: str, user_id: str) -> bool:
resp = await httpx.post(f"{SHOP_API_BASE}/cart/add",
json={"user_id": user_id, "product_id": product_id})
return resp.status_code == 200Fungsi-fungsi tersebut dapat dibungkus sebagai tool yang dapat dipanggil langsung oleh agen selama proses interaksi dengan pengguna.
Orkestrasi dan Jalur Utama Agen
Berikut adalah contoh fungsi utama yang mengorkestrasi jalannya agen mulai dari pencarian hingga penambahan produk ke keranjang:
from agents import run as run_agent
async def handle_user_request(user_input: str, user_id: str):
# 1. Pencarian produk
search_result = await run_agent(
search_agent,
user_input,
input_guardrails=[input_guard],
)
ids = search_result.final_output.product_ids
# 2. Bila ada hasil, ambil top (misalnya top 3) dan tampilkan ke pengguna
top = ids[:3]
# Simulasikan: user memilih salah satu, mis: top[0]
selected = top[0]
# 3. Tambahkan ke keranjang lewat cart_agent
cart_result = await run_agent(
cart_agent,
selected,
input_guardrails=[input_guard],
)
return {
"search": search_result.final_output,
"cart": cart_result.final_output
}Proses ini menunjukkan bagaimana permintaan pengguna diproses secara bertahap oleh agen yang berbeda, memanfaatkan kemampuan AI dan integrasi API secara mulus.
Contoh Input dan Eksekusi
Untuk menguji prototipe agen, gunakan kode berikut yang mengeksekusi fungsi utama secara asynchronous:
import asyncio
resp = asyncio.run(handle_user_request(
"Cari smartphone flagship di bawah 10 juta",
user_id="user123"
))
print(resp["search"])
print(resp["cart"])Output hipotetis dari eksekusi ini bisa berupa:
{
"search": {
"product_ids": ["p123", "p987", "p456"],
"reasoning": "Saya memilih produk berdasarkan rating > 4.5 dan harga di bawah 10 juta."
},
"cart": {
"success": true,
"message": "Produk berhasil ditambahkan ke keranjang"
}
}Pengembangan Lebih Lanjut dan Integrasi AgentKit
- AgentKit Visual Canvas: Setelah prototipe dasar berjalan, Anda dapat memindahkan workflow ke AgentKit visual canvas atau Agent Builder untuk menyusun alur kerja yang lebih kompleks dan bercabang, serta mengelola handoff antar agen secara efisien.
- Connector Registry: Memudahkan integrasi agen dengan berbagai sistem backend seperti inventaris, CRM, dan sistem pembayaran secara modular dan scalable.
- ChatKit: Memungkinkan agen AI diembed sebagai chat interface interaktif langsung di situs e-commerce, memberikan pengalaman percakapan yang natural kepada pengguna.
- Evals dan Trace Grading: Fitur evaluasi kualitas reasoning agen yang membantu menilai relevansi produk yang dipilih dan melakukan optimasi prompt untuk meningkatkan performa agen secara berkelanjutan.
Dengan pendekatan ini, pengembangan agen AI untuk e-commerce menjadi lebih terstruktur, modular, dan mudah dikembangkan sesuai kebutuhan bisnis. AgentKit menyediakan fondasi yang kuat untuk menghadirkan agen cerdas yang dapat meningkatkan engagement pelanggan sekaligus mengotomatisasi fungsi penting dalam toko online.
Semoga artikel ini memberikan gambaran jelas dan langkah awal yang praktis bagi Anda yang ingin membangun agen AI e-commerce menggunakan AgentKit. Selamat mencoba dan kembangkan agen Anda agar semakin pintar dan membantu pelanggan dengan lebih baik!