一文定義
Transformerのアテンション計算でKey・Valueテンソルをキャッシュして再計算を省略し推論を高速化する技術。長いコンテキストほど効果が大きい。
詳細解説
KVキャッシュ(KV Cache、Key-Value Cache)とは、Transformerモデルのアテンション計算において、過去のトークンに対応するKey(K)とValue(V)テンソルをメモリに保持(キャッシュ)しておくことで、新しいトークンを生成する際に過去分を再計算せずに済むようにする推論最適化技術です。
仕組みとして、自己回帰的なテキスト生成では各トークンを生成するたびにアテンション計算が必要ですが、過去トークンのKVは変化しないため再計算は無駄です。KVキャッシュはこの再計算を省略し、推論速度(トークン/秒)を大幅に向上させます。コンテキスト長が長いほど節約できる計算量が増えるため、長文処理・長い会話履歴での効果が特に顕著です。
トレードオフとして、KVキャッシュはVRAMを消費します。バッチサイズ・シーケンス長・モデルの層数・ヘッド数に比例してメモリが増加するため、大規模モデルを長いコンテキストで動かす場合のメモリ管理が課題です。Multi-Query Attention(MQA)やGrouped Query Attention(GQA)はKVキャッシュのメモリ消費を削減するアーキテクチャ改善として注目されています。
Anthropicの「プロンプトキャッシング」機能はこのKVキャッシュをAPI利用者向けに外部化したもので、同じシステムプロンプトを繰り返し使うアプリケーションでコストを最大90%削減できます。
参考情報・出典
- ▸Efficiently Scaling Transformer Inference— arXiv / Pope et al. (2022)(参照日: 2026-02-26)
- ▸Attention Is All You Need— arXiv / Vaswani et al. (2017)(参照日: 2026-02-26)