Compactor: Calibrated Query-Agnostic KV Cache Compression with Approximate Leverage Scores
作者: Vivek Chari, Benjamin Van Durme
分类: cs.CL, cs.AI
发布日期: 2025-07-10 (更新: 2025-12-08)
💡 一句话要点
Compactor:基于近似杠杆分数的免训练KV缓存压缩,提升长上下文LLM性能。
🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)
关键词: KV缓存压缩 长上下文LLM 杠杆分数 免训练 上下文校准 内存优化 推理加速
📋 核心要点
- 现有大型语言模型(LLM)在处理长上下文时面临巨大的内存瓶颈,KV缓存成为性能瓶颈。
- Compactor通过近似杠杆分数评估token重要性,实现与查询无关的KV缓存压缩,无需额外训练。
- 实验表明,Compactor在多种任务上实现了与现有方法相当甚至更优的性能,同时显著降低了内存占用。
📝 摘要(中文)
本文提出Compactor,一种免训练、与查询无关的KV缓存压缩策略,它使用近似杠杆分数来确定token的重要性。实验表明,在合成和真实世界的上下文任务中,Compactor在保持与现有方法相同性能的同时,可以减少20%的token保留数量,并且具有更强的任务鲁棒性。此外,本文还引入了一种上下文校准压缩程序,用于推断给定上下文在性能显著下降之前所能支持的最大压缩量。通过上下文校准压缩,Compactor在Longbench上实现了完整的KV性能,同时平均减少了68%的KV内存负担。为了验证该方法的有效性和泛化性,Compactor被应用于RULER和Longbench中的27个合成和真实世界任务,模型来自Qwen 2.5和Llama 3.1系列。最后,本文发布了compactor-vllm,一个推理引擎和优化的Triton内核套件,旨在有效支持压缩KV缓存固有的稀疏、非连续内存访问模式。这项工作表明,Compactor为缓解现代LLM部署中的内存瓶颈提供了一种实用、高性能的解决方案。
🔬 方法详解
问题定义:大型语言模型处理长上下文时,KV缓存占用大量内存,限制了模型部署和推理效率。现有KV缓存压缩方法可能需要额外的训练,或者在不同任务上的鲁棒性不足。
核心思路:Compactor的核心思路是利用近似杠杆分数来评估每个token的重要性,并优先保留重要性高的token。这种方法无需训练,且与查询无关,因此具有更好的泛化性和鲁棒性。通过上下文校准,可以动态调整压缩率,在保证性能的同时最大程度地减少内存占用。
技术框架:Compactor的整体框架包括以下几个阶段:1) 计算每个token的近似杠杆分数;2) 根据杠杆分数对token进行排序;3) 选择保留的token子集;4) 在推理时,只使用保留的token构建KV缓存。此外,还引入了上下文校准程序,用于确定最佳压缩率。
关键创新:Compactor的关键创新在于使用近似杠杆分数进行KV缓存压缩,这种方法无需训练,且与查询无关,因此具有更好的泛化性和鲁棒性。此外,上下文校准程序可以动态调整压缩率,在保证性能的同时最大程度地减少内存占用。compactor-vllm推理引擎和优化的Triton内核,专门用于支持压缩KV缓存的稀疏内存访问模式,提高了推理效率。
关键设计:近似杠杆分数的计算方法是关键。论文中具体使用了哪种近似方法(例如,随机抽样、Nyström方法等)未知。上下文校准程序的设计也至关重要,需要平衡压缩率和性能之间的关系。compactor-vllm推理引擎和优化的Triton内核的设计细节也对最终性能有很大影响,具体实现细节未知。
🖼️ 关键图片
📊 实验亮点
Compactor在Longbench上实现了与完整KV缓存相当的性能,同时平均减少了68%的KV内存占用。在RULER和Longbench的27个合成和真实世界任务中,Compactor表现出良好的泛化性和鲁棒性。与现有方法相比,Compactor在保持相同性能的同时,可以减少20%的token保留数量。
🎯 应用场景
Compactor可应用于各种需要处理长上下文的LLM应用场景,例如长文档摘要、对话系统、代码生成等。通过降低内存占用,Compactor可以降低部署成本,提高推理效率,并支持在资源受限的设备上运行LLM。该技术还有助于推动LLM在边缘计算等领域的应用。
📄 摘要(原文)
Modern Large Language Models (LLMs) are increasingly trained to support very large context windows. We present Compactor, a training-free, query-agnostic KV compression strategy that uses approximate leverage scores to determine token importance. We show that Compactor can achieve the same performance as competing methods while retaining 20% fewer tokens in both synthetic and real-world context tasks, while being more task-robust. We further introduce a procedure for context-calibrated compression: inferring the maximum compression a given context supports before significant performance loss. Using context-calibrated compression, we show that Compactor achieves full KV performance on Longbench while reducing the KV memory burden by 68%, on average. To demonstrate the efficacy and generalizability of our approach, we apply Compactor to 27 synthetic and real-world tasks from RULER and Longbench, with models from both the Qwen 2.5 and Llama 3.1 families. Finally, we release compactor-vllm, an inference engine and suite of optimized Triton kernels designed to efficiently support the sparse, non-contiguous memory access patterns inherent to compressed KV caches. This work demonstrates that Compactor offers a practical, high-performance solution for alleviating the memory bottleneck in modern LLM deployment.