Cache KV
Cache KV menyimpan vektor kunci dan nilai yang telah dikira oleh pengubah untuk token sebelumnya, jadi ia tidak perlu mengiranya semula untuk setiap perkataan baharu yang dijananya.
Gambaran keseluruhan
It is the single biggest reason text generation is fast — and the main thing eating your GPU memory during long conversations.
Menyelam dalam
Transformer menjana teks satu token pada satu masa, dan setiap lapisan perhatian token baharu perlu dibandingkan dengan setiap token sebelumnya. Mekanisme perhatian mengubah setiap token menjadi pertanyaan, kunci dan vektor nilai. Tanpa caching, menjana nombor token 1,000 bermakna pengiraan semula kunci dan nilai untuk semua 999 token awal pada setiap langkah — kerja kuadratik dan membazir. Cache KV menyimpan vektor kunci dan nilai tersebut selepas ia mula-mula dikira dan menggunakannya semula, jadi setiap langkah baharu hanya mengira vektor untuk token terbaharu tunggal dan hadir melalui cache yang disimpan. Ini mengecilkan kos setiap token daripada penskalaan dengan panjang jujukan kepada kira-kira malar. Tukar ganti ialah ingatan: cache berkembang secara linear dengan panjang konteks, bilangan lapisan dan kepala perhatian, selalunya menjadi pengguna memori dominan dalam penyajian konteks panjang.
Wawasan Teknikal
Semasa fasa 'praisi' model memproses keseluruhan gesaan dan mengisi cache; semasa 'nyahkod' ia menambahkan satu K/V token setiap langkah dan hadir semula. Skala saiz cache sebagai 2 (K dan V) × lapisan × kepala × head_dim × jujukan_panjang × kelompok, dalam ketepatan yang dipilih. Untuk menjinakkan ini, model moden menggunakan perhatian berkelompok atau berbilang pertanyaan untuk berkongsi kunci/nilai merentas kepala, dan sistem penyajian seperti vLLM menggunakan PagedAttention untuk memperuntukkan cache dalam blok tidak bersebelahan, memotong pemecahan dan sisa.
Kesan Strategik
Kelajuan dan skala
Aliran kerja bahasa boleh bergerak lebih pantas tanpa mengorbankan konsistensi.
Akses dan capai
Ia meluaskan akses merentas bahasa dan gaya komunikasi.
Keputusan yang lebih jelas
Pasukan boleh menghabiskan lebih banyak masa untuk membuat pertimbangan manakala automasi mengendalikan pengulangan.
Masa Depan KV Cache
Apabila tetingkap konteks menjangkau ratusan ribu token, cache KV menjadi kesesakan pusat, jadi inovasi adalah sengit: kuantisasi cache kepada 8 atau 4 bit, dasar pengusiran yang menjatuhkan token berkepentingan rendah, perkongsian awalan permintaan silang dan pemunggahan ke CPU atau cakera. Peralihan seni bina seperti perhatian terpendam berbilang kepala memampatkan cache itu sendiri. Jangkakan reka bentuk bersama berterusan varian perhatian dan sistem memori yang bertujuan untuk menyediakan konteks yang sangat panjang dengan murah dan pada daya pemprosesan yang tinggi.
Pelaksanaan Dunia Sebenar
Mempercepatkan balasan chatbot dengan menggunakan semula kunci/nilai cache daripada sejarah perbualan dan bukannya memproses semula setiap giliran.
Cache awalan yang berkongsi cache untuk gesaan sistem yang panjang merentas ramai pengguna, mengurangkan kos dan kependaman.
vLLM's PagedAttention menguruskan cache KV dalam blok untuk melayani banyak permintaan serentak pada satu GPU dengan cekap.
Mengkuantumkan cache KV kepada ketepatan yang lebih rendah untuk menyesuaikan konteks yang lebih panjang ke dalam memori GPU yang terhad.
Risiko & Pengawal
Fakta halusinasi boleh memasukkan laporan, aliran sokongan atau hasil penyelidikan secara senyap-senyap.
Sensitiviti segera boleh mencipta hasil yang tidak konsisten merentas permintaan yang serupa.
Data teks sensitif mungkin terdedah jika kawalan akses lemah.
Hala Tuju Pelaksanaan
Tentukan format output, nada dan standard kualiti sebelum pelancaran.
Respons asas dengan sumber yang dipercayai apabila ketepatan penting.
Simpan pusat pemeriksaan semakan manusia untuk output berkepentingan tinggi.
Jejaki corak kegagalan dan latih semula gesaan atau aliran kerja dengan kerap.
Teruskan Meneroka
Free newsletter
Get the daily AI briefing
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Take the KV Cache quiz
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
Panduan seterusnya
Pengoptimuman Cache KV
Soalan lazim
What is KV Cache?
Cache KV menyimpan vektor kunci dan nilai yang telah dikira oleh pengubah untuk token sebelumnya, jadi ia tidak perlu mengiranya semula untuk setiap perkataan baharu yang dijananya. Ia adalah satu-satunya sebab terbesar penjanaan teks adalah pantas — dan perkara utama memakan memori GPU anda semasa perbualan yang panjang.
Apakah yang disimpan oleh cache KV?
Cache KV memegang vektor kunci dan nilai daripada token terdahulu supaya perhatian boleh menggunakannya semula dan bukannya mengira semula.
Apakah masalah yang paling utama diselesaikan oleh cache KV?
Tanpa caching, setiap token baharu memerlukan pengiraan semula K/V untuk setiap token sebelumnya, yang membazir; cache menjadikan kos per-token kira-kira malar.
Apakah kelemahan utama cache KV?
Cache berkembang dengan panjang jujukan, lapisan dan kepala, sering menjadi pengguna dominan memori GPU dalam penyajian konteks panjang.
Teknik manakah yang mengurangkan saiz cache KV dengan berkongsi kunci dan nilai merentas pusat perhatian?
Perhatian pertanyaan berkumpulan dan berbilang pertanyaan membolehkan berbilang ketua pertanyaan berkongsi lebih sedikit set kunci/nilai, mengecutkan cache dengan ketara.
Apakah dua fasa inferens pengubah berbanding cache KV?
Praisi mengisi cache dengan K/V gesaan; nyahkod menambahkan satu K/V token baharu setiap langkah dan mencatat semula di atas cache.