Pendahuluan


Dalam pengembangan aplikasi berbasis Large Language Model (LLM) seperti Claude, efisiensi adalah segalanya.

Dua konsep yang sering muncul untuk mengoptimalkan performa adalah :

  • KV Cache
  • Prompt Caching.

Meskipun terdengar serupa, keduanya menangani aspek yang berbeda dalam siklus hidup inferensi AI.

  • KV Cache berfokus pada kecepatan saat AI sedang “menulis” jawaban
  • sementara Prompt Caching berfokus pada penghematan saat AI sedang “membaca” konteks yang panjang.

Implementasi keduanya secara tepat dapat menurunkan latensi hingga 80% dan memangkas biaya operasional secara drastis.


🤔 Kenapa KV Cache Dibutuhkan ?


Masalah utama pada arsitektur Transformer adalah sifatnya yang autoregressive.

Artinya, untuk menghasilkan token ke-101, model harus memproses kembali token 1 hingga 100.

Tanpa cache, terjadi redundansi komputasi yang masif.

Tujuan utama KV Cache adalah :

  • Menghilangkan Redundansi: Menyimpan hasil kalkulasi matematis dari token sebelumnya agar tidak dihitung ulang.
  • Meningkatkan TPOT (Time Per Output Token): Memastikan kecepatan pengetikan AI tetap stabil meskipun teks sudah sangat panjang.

Bagaimana mekanisme nya ?


Saat proses self-attention berlangsung, setiap token direpresentasikan dalam tiga matriks:

  • Query (Q)
  • Key (K)
  • Value (V).

  1. Prefill Phase: Model membaca prompt input dan menghitung semua nilai K dan V, lalu menyimpannya di memori GPU (VRAM).
  2. Decoding Phase: Saat menghasilkan token baru, model hanya menghitung nilai Query (Q) untuk token tersebut.
  3. Lookup: Model mengambil nilai K dan V milik token-token sebelumnya dari cache untuk melakukan kalkulasi attention.
  4. Update: Nilai K dan V dari token yang baru saja dihasilkan ditambahkan kembali ke dalam cache untuk digunakan pada token berikutnya.

Claude Prompt Caching


Anthropic memperkenalkan Prompt Caching (Server-side caching) yang memungkinkan kita menyimpan state KV Cache secara persisten di server mereka selama jangka waktu tertentu (TTL 5 menit).

Dengan fitur ini, jika Anda memiliki dokumen referensi setebal 100 halaman, Anda tidak perlu membayar biaya “membaca” dokumen tersebut setiap kali bertanya.

Anda cukup membayarnya sekali, menyimpannya di cache, dan pertanyaan selanjutnya hanya akan dikenakan biaya token yang jauh lebih murah (Cache Hit).

Perbandingan Efisiensi

Fitur KV Cache Standar Claude Prompt Caching
Lokasi Penyimpanan Memori aktif (VRAM) selama sesi inferensi berlangsung. Ephemeral storage (Server-side) pada infrastruktur Anthropic.
Fokus Utama Mengurangi beban komputasi saat menghasilkan token satu per satu (decoding). Mengurangi waktu dan biaya saat memproses input yang besar dan berulang (prefill).
Masa Aktif (TTL) Hilang segera setelah proses request-response selesai. Bertahan selama 5 menit (reset setiap kali ada cache hit).
Dampak Biaya Tetap membayar biaya penuh untuk setiap token input yang dikirim. Memberikan diskon signifikan (hingga ~90%) untuk token yang berhasil dipanggil dari cache.
Dampak Latensi Mempercepat kecepatan pengetikan AI (tokens per second). Mempercepat waktu tunggu pertama kali AI menjawab (Time To First Token).
Penggunaan Ideal Menjaga responsivitas pada percakapan pendek atau menengah. Analisis dokumen panjang, basis kode besar (codebase), atau instruksi sistem yang kompleks.

Penutup


Memahami KV Cache adalah kunci bagi pengembang yang ingin membangun sistem AI yang scalable.

Dengan memanfaatkan mekanisme caching pada Claude, kita bisa membangun asisten AI yang memiliki memori jangka panjang terhadap dokumen teknis yang besar tanpa harus khawatir akan latensi yang lambat atau tagihan API yang membengkak.