Langsung ke konten

Apa itu KV Cache (Key-Value Caching AI)?

Mekanisme penyimpanan matriks Key dan Value token sebelumnya di memori GPU guna mencegah kalkulasi berulang selama proses inferensi autoregresif.

Apa itu KV Cache?

KV Cache (Key-Value Cache) adalah teknik optimasi memori pada proses inferensi model bahasa besar (Large Language Models) berbasis arsitektur Transformer. Pada saat model AI menghasilkan respons teks kata demi kata (proses autoregresif), model harus memperhatikan seluruh token yang telah muncul sebelumnya untuk memprediksi token berikutnya.

Tanpa adanya KV Cache, model terpaksa menghitung ulang seluruh matriks Key (kunci) dan Value (nilai) dari semua kata di awal prompt setiap kali satu kata baru dibuat. Hal ini menyebabkan proses inferensi menjadi sangat lambat dan membebani komputasi GPU secara berlebihan. Dengan mengaktifkan KV Cache, nilai representasi matematis dari token yang sudah diproses disimpan langsung di memori grafis (VRAM) GPU, sehingga mesin inferensi hanya perlu menghitung proyeksi token yang paling baru.

Cara kerja KV Cache pada proses inferensi

  1. Fase Prefill (Membaca Prompt Awal): Ketika pengguna mengirimkan prompt (misalnya dokumen 500 kata), model membaca dan memproses seluruh token masukan secara paralel. Matriks Key ($K$) dan Value ($V$) untuk ke-500 token tersebut dihitung pada setiap lapisan modul perhatian, lalu disimpan secara terstruktur di memori VRAM.
  2. Fase Decoding (Menghasilkan Respons Token per Token): Saat menghasilkan token pertama respons, model mengambil tensor $K$ dan $V$ yang sudah tersimpan di cache, menggabungkannya dengan tensor token baru, dan menghasilkan token kedua.
  3. Penyimpanan Berkelanjutan: Token kedua yang baru terbentuk langsung ditambahkan ke dalam KV Cache. Langkah ini terus berulang hingga model mengeluarkan tanda selesai (end-of-sequence / EOS).

Melalui mekanisme ini, kompleksitas komputasi generasi teks autoregresif per langkah berkurang dari $O(N^2)$ menjadi $O(N)$, menghasilkan akselerasi kecepatan generasi (throughput) yang sangat drastis.

Tantangan dan konsumsi VRAM

Meskipun memangkas waktu komputasi, KV Cache menimbulkan tantangan baru berupa ledakan konsumsi kapasitas VRAM:

  • Ukuran memori KV Cache tumbuh secara linear mengikuti panjang konteks ($N$), jumlah lapisan Transformer, jumlah attention head, dan jumlah permintaan konkuren (batch size).
  • Pada dokumen panjang (misalnya 32.000 token) dengan model 70B di lingkungan produksi yang melayani puluhan pengguna sekaligus, memori yang dihabiskan untuk menampung KV Cache bahkan bisa melampaui ukuran bobot parameter model itu sendiri.
  • Inovasi modern seperti PagedAttention pada pustaka vLLM (mengadopsi konsep memori virtual sistem operasi untuk mencegah fragmentasi VRAM) dan teknik kuantisasi KV Cache (menyimpan matriks dalam format FP8 atau INT4) dirancang khusus untuk mengatasi masalah ini.

Batasan dan salah paham umum

  • Beda dengan Prompt Caching penyedia API: KV Cache pada tingkat mesin inferensi dasar bersifat dinamis per sesi request di VRAM server. Sedangkan fitur komersial Prompt Caching (seperti pada API Anthropic atau OpenAI) menyimpan prefix KV Cache di tingkat klaster server secara persisten untuk memotong tarif token masukan pengguna berulang.
  • Hanya bermanfaat saat inferensi autoregresif: KV Cache tidak digunakan selama fase pelatihan (training) karena saat pelatihan seluruh urutan kalimat masukan dan label target sudah diketahui sebelumnya dan dapat diproses secara paralel menggunakan causal masking.
  • Konsumsi memori VRAM GPU bersifat dinamis: Mesin penyedia LLM dapat mengalami error Out of Memory (OOM) di tengah jalan saat teks jawaban pengguna sangat panjang jika alokasi pool KV Cache server habis terpakai.

Rujukan resmi

  • vLLM Team: vLLM Architecture and KV Cache Management Documentation (Pengecekan: 30 September 2026, rujukan resmi: docs.vllm.ai/en/latest/features/quantization/quantized_kvcache/).
  • Kwon et al. (UC Berkeley): Efficient Memory Management for Large Language Model Serving with PagedAttention (Pengecekan: 30 September 2026, rujukan resmi: arxiv.org/abs/2309.06180).
  • Hugging Face Transformers Documentation: Generation with LLMs and Key-Value Caching (Pengecekan: 30 September 2026, rujukan resmi: huggingface.co/docs/transformers/main/en/kv_cache).

Istilah Terkait

Inferensi AI (AI Inference)Transformer (Arsitektur Jaringan AI)Context Window (Jendela Konteks)Cached Token (Prompt Caching)Token AI