← Semua pembelajaran / AI Engineer Nol → Production
Fase 7 · Deployment ke Production

Cost management — token, caching, model routing

Server biasa punya biaya yang relatif stabil. Biaya API LLM bertambah setiap token yang dikirim dan diterima — riwayat chatbot yang terus dikirim ulang (Fase 6) berarti biaya per percakapan bisa naik terus tanpa disadari.

Sumber asli docs.claude.com Resmi Rangkuman ~8 menit baca

Intisari

  • Biaya dihitung per token, dengan harga input dan output yang berbeda — dan riwayat percakapan yang dikirim ulang tiap turn (Fase 6) berarti token yang sama dibayar berkali-kali.
  • Prompt caching: bagian prompt yang sama persis di banyak panggilan (system prompt panjang, riwayat percakapan yang stabil) bisa di-cache oleh provider — panggilan berikutnya membayar jauh lebih murah untuk bagian yang sama itu.
  • Model routing: pakai model kecil/murah untuk tugas sederhana (klasifikasi, query rewriting dari Fase 6) dan model besar/mahal hanya untuk yang benar-benar butuh penalaran kompleks.
  • Batasi max_tokens secara realistis, dan potong konteks RAG (Fase 5) ke yang benar-benar relevan — token yang terkirim tapi tidak terpakai tetap dibayar.
  • Pasang budget alert dan batas biaya per pengguna/percakapan sejak awal — sama seperti budget AWS, tagihan API LLM pertama sering jadi kejutan kalau tidak dipantau sejak hari pertama.

Biaya bertambah per token, bukan per bulan

Server tradisional punya biaya yang relatif tetap (harga instance per jam). Biaya LLM API bertambah linear dengan pemakaian — setiap token input dan output punya harga sendiri, biasanya output lebih mahal dari input. Chatbot yang riwayatnya (Fase 6) terus dikirim ulang tiap turn berarti kamu membayar ulang token yang sama, berkali-kali, sepanjang percakapan.

Percakapan dengan 10 turn, riwayat terus bertambah tanpa dipangkas:
Turn 1:  100 token riwayat dikirim
Turn 2:  250 token riwayat dikirim  (turn 1 dikirim ULANG + pesan baru)
Turn 3:  450 token riwayat dikirim  (turn 1-2 dikirim ULANG + pesan baru)
...
Turn 10: 2000+ token riwayat dikirim setiap kali

Total token yang DIBAYAR sepanjang 10 turn jauh lebih besar dari total token PERCAKAPAN itu sendiri.

Prompt caching: membayar lebih murah untuk bagian yang berulang

Kalau sebagian besar prompt sama persis dari satu panggilan ke panggilan berikutnya — system prompt yang panjang, atau riwayat percakapan yang stabil — provider bisa meng-cache bagian itu, dan panggilan berikutnya membayar jauh lebih murah untuk token yang sudah pernah diproses.

response = client.messages.create(
    model="claude-sonnet-4-5",
    max_tokens=1024,
    system=[{
        "type": "text",
        "text": instruksi_panjang_dan_konteks_perusahaan,  # ribuan token, sama di setiap panggilan
        "cache_control": {"type": "ephemeral"},  # tandai bagian ini untuk di-cache
    }],
    messages=riwayat_percakapan,
)

Cache paling efektif untuk konten yang panjang & stabil — system prompt detail, dokumen referensi yang sering dipakai ulang, atau bagian awal riwayat percakapan panjang yang tidak lagi berubah. Untuk chatbot dengan riwayat yang terus bertambah, menandai bagian riwayat "lama" (yang stabil, tidak berubah lagi) untuk di-cache bisa memangkas biaya percakapan panjang secara signifikan.

Model routing: jangan pakai model termahal untuk semuanya

Ingat dari Fase 6: query rewriting memakai model kecil (Haiku) karena tugasnya sederhana, sementara jawaban final ke pengguna memakai model yang lebih mampu. Ini pola umum yang layak diterapkan sengaja di seluruh sistem:

Jenis tugasModel yang cocokContoh dari roadmap ini
Klasifikasi/ekstraksi sederhanaModel kecil/murahQuery rewriting (Fase 6), deteksi eskalasi (Fase 6)
Percakapan & penalaran umumModel menengahJawaban chatbot standar (Fase 6)
Penalaran kompleks, agent multi-langkahModel besar/paling mampuOrchestrator agent (Fase 3), keputusan berisiko tinggi

Jangan kirim token yang tidak perlu

Pasang budget alert sejak hari pertama

Sama seperti pelajaran dari akun cloud (budget alert AWS): pasang batas anggaran & alert di dashboard provider LLM sebelum trafik nyata masuk, dan pertimbangkan batas biaya per pengguna/percakapan di level aplikasi (mis. hentikan agent kalau sudah menghabiskan lebih dari X token dalam satu sesi — pengaman yang sama dari Fase 3).

Latihan: ambil log token dari latihan materi sebelumnya, hitung total biayanya memakai harga resmi model yang kamu pakai (input dan output dihitung terpisah). Lalu hitung ulang seandainya system prompt di-cache — bandingkan selisihnya untuk skenario 10 turn percakapan dengan system prompt yang sama di setiap turn.

Rangkuman ini sengaja dipangkas ke bagian yang dipakai di roadmap. Buka sumber aslinya saat kamu butuh detail lengkap atau referensi parameter.