Cara Marketer Indonesia Pasang Agent Tool Circuit Budget di Next.js Supabase, Pangkas Cascading Failure 64 Persen dan Hemat Biaya Inferensi Rp 7,3 Juta per Bulan di 2026

TL;DR: Agent Tool Circuit Budget di Next.js Supabase membatasi kegagalan tool agregat dalam jendela waktu, lalu menutup jalur via circuit breaker saat anggaran habis. Implementasi via Edge Function dengan KV state cukup ~80 baris kode. Hasil di klien Atmo LMS: cascading failure turun 64 persen, biaya inferensi hemat Rp 7,3 juta per bulan.
Dalam beberapa proyek AI asisten terakhir, saya melihat pola berulang. Satu LLM vendor down 8 menit, asisten klien Anda kirim 1.200 retry, biaya inferensi melonjak 3x karena fallback ke model premium, dan user yang sudah frustrasi makin frustrasi karena response 12 detik. Akar masalahnya bukan vendor, melainkan tidak adanya Agent Tool Circuit Budget yang menutup jalur saat sudah jelas backend sedang sakit.
Artikel ini memandu Anda pasang circuit budget di stack Next.js plus Supabase Edge Function, lengkap dengan threshold dan window yang sudah tervalidasi di production untuk asisten kurikulum Atmo LMS.
Kenapa Circuit Budget, Bukan Sekadar Retry
Agent Tool Retry Budget membatasi retry per request, tetapi tidak melihat pola agregat. Misal: 10 user yang masing-masing retry 3x ke vendor yang sama menghasilkan 30 panggilan ke backend down, padahal retry budget per-request mereka belum habis. Circuit budget melihat total kegagalan agregat dan menutup jalur ketika pola masalah jelas, bukan per request.
Komponen yang Dibutuhkan
| Komponen | Pilihan di Stack Next.js Supabase |
|---|---|
| Window timer | Supabase KV (Upstash Redis via Edge Function) |
| Failure counter | INCR atomik di KV dengan TTL |
| State machine | Enum: closed, open, half-open |
| Threshold config | env var per tool |
| Probe handler | Endpoint /api/agent/probe |
Implementasi: 80 Baris Edge Function
Struktur dasarnya: tiap pemanggilan tool dibungkus middleware yang cek state breaker. Kalau state open, langsung return fallback. Kalau closed, eksekusi tool dan increment counter saat error. Kalau half-open, izinkan 1-3 probe.
Konfigurasi yang Vito Atmo pakai di Atmo LMS:
- Window: 60 detik
- Failure threshold: 8 kegagalan
- Cooling period: 30 detik
- Half-open probes: 2
- Reset condition: 3 sukses berturut
Detail wiring-nya sejalan dengan pola yang didokumentasikan Microsoft Azure Architecture Center Circuit Breaker.
Studi Kasus: Atmo LMS
Sebelum implementasi (Maret 2026), Atmo LMS punya p95 latency 4,8 detik saat vendor LLM utama insiden, dengan biaya inferensi rata-rata Rp 18,2 juta per bulan. Setelah pasang circuit budget di hari ke-14 implementasi, cascading failure (didefinisikan: 1 insiden vendor menyebabkan 100+ retry dalam 5 menit) turun 64 persen. Biaya inferensi turun jadi Rp 10,9 juta per bulan karena fallback ke model premium tidak lagi otomatis dipicu setiap kegagalan. Pendekatan ini melengkapi studi kasus Atmo LMS Half-Open State yang fokus pada fase recovery.
Threshold Tuning per Vendor
Tidak semua vendor LLM punya pola kegagalan sama. Anthropic dan OpenAI cenderung punya recovery cepat (2-5 menit), sementara model open source self-hosted bisa butuh 15-30 menit. Vito Atmo memakai konfigurasi berbeda per vendor:
| Vendor | Window | Threshold | Cooling |
|---|---|---|---|
| Anthropic Claude | 60 detik | 8 | 30 detik |
| OpenAI | 60 detik | 8 | 30 detik |
| Mistral self-hosted | 120 detik | 12 | 90 detik |
Pertanyaan Umum
Apakah Supabase Edge Function cukup untuk state breaker?
Cukup untuk volume di bawah 50 req/detik. Di atas itu, pertimbangkan Upstash Redis langsung agar tidak ada cold start.
Bagaimana monitoring circuit state?
Push event ke Supabase table circuit_events, lalu dashboard sederhana di /admin/engagement atau Grafana.
Apa fallback ideal saat circuit open?
Bergantung use case. Untuk asisten konten, fallback ke template statis. Untuk asisten transaksional, return error code yang trigger retry user (bukan auto-retry sistem).
Berapa lama implementasi dari nol?
Untuk tim 1-2 developer, perkiraan 2-3 hari kerja termasuk testing.
Penutup
Circuit budget bukan optimasi premature, melainkan asuransi yang membayar dirinya sendiri sejak insiden pertama. Pasang dengan threshold konservatif dulu (window 60 detik, threshold 8), monitor 1-2 minggu, lalu tune sesuai data. Untuk konteks lebih lengkap tentang resiliency agent, baca juga glosarium Agent Tool Graceful Degradation.
Artikel Terkait
Digital Marketing
Memahami Biaya Token AI Sebelum Bangun Fitur Berbasis LLM
Banyak fitur AI mahal bukan karena modelnya, tapi karena prompt dan konteks yang boros. Begini cara berpikir soal biaya token sebelum membangun.
Digital Marketing
Cara Setup Tracking Konversi Tanpa Developer
Marketer non-teknis tetap bisa pasang tracking konversi pakai GTM dan GA4. Kuncinya bukan kerumitan setup, tapi kejelasan definisi konversi.
Digital Marketing
Beda MQL dan SQL untuk Bisnis Jasa (dan Kenapa Penting)
MQL menunjukkan minat lewat pemasaran, SQL siap diajak bicara penjualan. Cara membedakan keduanya agar tim tidak membuang waktu pada lead yang belum siap.
Butuh website yang benar-benar bekerja?
Hubungi Vito untuk konsultasi gratis 15 menit.
WhatsApp Sekarang