KV-Compress: Paged KV-Cache Compression with Variable Compression Rates per Attention Head

要約

近年、大規模言語モデル (LLM) のコンテキスト長が爆発的に増加しており、128,000 トークンのコンテキストが標準になり、100 万トークンのコンテキストが現実になりつつあります。
世代ごとにキーバリュー (KV) キャッシュに割り当てる必要があるメモリがコンテキストの長さに応じて拡大し、特定のメモリ バジェット内で同時に処理できるロング コンテキスト リクエストの数が制限されるため、ロング コンテキスト推論を効率的にサポートすることは依然として課題です。

KV キャッシュ圧縮は、各アテンション ヘッドのキャッシュから十分に使用されていない KV を削除し、メモリ フットプリントを削減することで、この問題を軽減できます。
削除される KV の数がアテンション ヘッド間で異なる場合、より高い理論的圧縮率を達成できますが、既存の推論フレームワーク内でそのような戦略を適用すると断片化が増加し、物理メモリで理論的圧縮率を実現できません。
KV-Compress を導入します。これは、PagesAttention フレームワーク内の連続する KV ブロックを削除し、この理論上の圧縮率に比例して KV キャッシュのメモリ フットプリントを削減する新しい圧縮方法です。
私たちの方法は、Mistral-7B-Instruct-v0.2 と Llama-3.1-8B-Instruct の両方で LongBench 上で最先端のパフォーマンスを達成しながら、圧縮された KV の総数を従来の方法と比較して 4 分の 1 に削減します。
Llama-3.1-8B-Instruct および Llama-3.1-70B-Instruct-FP8 の評価では、パフォーマンスへの影響はほとんどなく、最大 8 倍の圧縮率を達成し、3 つを除くすべてでフル キャッシュ パフォーマンスの 90% 以上を維持しながら最大 64 倍の圧縮率を達成しました。
スイートのサブセット。
私たちは、より大規模なデコード バッチを有効にすることで合計スループットを最大 5.18 倍向上させる vLLM との統合をベンチマークします。

要約(オリジナル)

Context lengths of Large Language Models (LLMs) have exploded in recent years, with 128k-token context becoming a standard and million-token context becoming a reality. Efficiently supporting long-context inference remains challenging as the memory that must be allocated in key-value (KV) cache for a generation scales with its context length, limiting the number of long-context requests that can be served concurrently under a given memory budget. KV cache compression can mitigate this issue by removing under-utilized KVs from each attention head’s cache and reducing its memory footprint. Higher theoretical compression rates can be achieved when the number of removed KVs varies across attention heads, but application of such a strategy within existing inference frameworks adds fragmentation and cannot realize the theoretical compression rates in physical memory. We introduce KV-Compress, a novel compression method that evicts contiguous KV blocks within a PagedAttention framework, reducing the memory footprint of the KV cache proportionally to this theoretical compression rate. Our method achieves state-of-the-art performance on LongBench for both Mistral-7B-Instruct-v0.2 and Llama-3.1-8B-Instruct while lowering the total number of compressed KVs by 4x compared with prior methods. Evaluations on Llama-3.1-8B-Instruct and Llama-3.1-70B-Instruct-FP8 achieve compression rates up to 8x with negligible impact on performance, and up to 64x while retaining over 90% of full-cache performance for all but three of the suite’s subsets. We benchmark an integration of our method with vLLM that increases total throughput by up to 5.18x by enabling larger decoding batches.

arxiv情報

著者 Isaac Rehg
発行日 2024-10-07 15:07:09+00:00
arxivサイト arxiv_id(pdf)

提供元, 利用サービス

arxiv.jp, Google

カテゴリー: cs.CL パーマリンク