SCOPE: Optimizing Key-Value Cache Compression in Long-context Generation
This addresses a critical efficiency problem for users of large language models in long-output generation tasks, though it is incremental as it builds on existing KV compression methods.
The paper tackles the bottleneck of Key-Value (KV) cache in long-context generation for LLMs by introducing SCOPE, a framework that separately optimizes KV cache during prefill and decoding phases, reducing memory usage by up to 50% while maintaining performance on LongGenBench.
Key-Value (KV) cache has become a bottleneck of LLMs for long-context generation. Despite the numerous efforts in this area, the optimization for the decoding phase is generally ignored. However, we believe such optimization is crucial, especially for long-output generation tasks based on the following two observations: (i) Excessive compression during the prefill phase, which requires specific full context impairs the comprehension of the reasoning task; (ii) Deviation of heavy hitters occurs in the reasoning tasks with long outputs. Therefore, SCOPE, a simple yet efficient framework that separately performs KV cache optimization during the prefill and decoding phases, is introduced. Specifically, the KV cache during the prefill phase is preserved to maintain the essential information, while a novel strategy based on sliding is proposed to select essential heavy hitters for the decoding phase. Memory usage and memory transfer are further optimized using adaptive and discontinuous strategies. Extensive experiments on LongGenBench show the effectiveness and generalization of SCOPE and its compatibility as a plug-in to other prefill-only KV compression methods.