【けーぶいきゃっしゅ】
KVキャッシュ とは?
最終更新:
💡 一度計算したことは覚えておく、Transformerの記憶術
📌 このページのポイント
- Attention計算で過去トークンのKeyとValueを再利用し、推論を高速化する
- トークン生成のたびに全履歴を再計算する無駄を省ける
- 長い文脈ほどメモリ消費が大きくなるのが課題
- MQA、GQA、PagedAttentionなどKVキャッシュの効率化手法が活発に研究されている
キャッシュしないとどうなるの?
キャッシュがあれば全部解決?
メモリ問題はどうやって解決するの?
いろんな工夫があるよ。GQA(Grouped Query Attention)はKeyとValueのヘッド数を減らしてキャッシュサイズを削減する。vLLMで使われるPagedAttentionはOSの仮想メモリのようにキャッシュを管理して無駄を減らすんだ。KVキャッシュの効率化は今のLLM推論で最もホットな研究テーマの一つだね
まとめ:ざっくりこれだけ覚えればOK!
「KVキャッシュ」って出てきたら「LLMが過去の計算結果を使い回して高速化する仕組み」と思えればだいたいOK!
📖 おまけ:英語の意味
「KV Cache (Key-Value Cache)」 = キー・バリューキャッシュ
💬 KはKey(検索キー)、VはValue(値)の略。Attentionの仕組みで使うKey行列とValue行列をキャッシュしておくからこの名前だよ