インフラ
KVキャッシュ
アテンションのキー/バリュー・テンソルをキャッシュし、デコード各ステップ間で再利用して大規模言語モデルの推論を高速化する手法。
KVキャッシュ(KV cache)は、アテンション機構の各層で計算されたキー(K)とバリュー(V)のテンソルを保存し、連続するテキスト生成ステップ間で再利用する推論高速化の手法です。
大規模言語モデルはトークンを1つずつ出力し、新しいトークンはそれ以前のすべてのトークンを参照します。キャッシュがなければ、モデルは各ステップで系列全体のKとVの射影を計算し直すことになり、計算量は長さに対して二次的に増えます。これらのテンソルはトークンの処理後は変化しないため、KVキャッシュがそれらを保存し、新しいトークンのアテンションはそのトークンについてのみ計算されます。これにより推論のコストは二次からほぼ線形へと下がります。
2025〜2026年にかけて、KVキャッシュは長いコンテキストウィンドウや高スループットにおける主要なメモリのボトルネックです。その消費量は系列長と同時リクエスト数に応じて増えるため、マルチクエリ/グループ化クエリ・アテンション、キャッシュの量子化、ページング(PagedAttention)といった手法が進められています。