KV-压缩:基于分页的键值缓存压缩及其可变压缩率
通过自适应KV缓存压缩的插拔式方法,我们引入了一种减少大型语言模型(LLM)生成推理内存占用的方法。通过有针对性的分析注意力模块的内在结构,我们构建自适应KV缓存:针对局部上下文的注意力头强调接触范围短的上下文,针对特殊标记的注意力头中心化的丢弃非特殊标记,只有广泛关注所有标记的注意力头才使用标准KV缓存。此外,通过轻量级的注意力分析引导自适应KV缓存的构建,FastGen不需要资源密集的微调或重新训练。在各种场景的实验中,FastGen在GPU内存消耗方面显著减少,同时几乎没有生成质量损失。我们将发布用于重现的代码和兼容的CUDA内核。
Oct, 2023
通过实验证明,即使通过减少精度量化保存被清除的KV对中的一小部分信息,也能大大恢复引起的退化;同时,对于重要的KV对,必须保留较高的精度以确保生成质量。基于这些观察,我们提出了一种可靠的缓存压缩方法,即混合精度KV缓存(MiKV),通过将被清除的KV对保留在低精度以保留上下文细节,并通过将重要的KV对保留在高精度来确保生成质量。与其他基准相比,我们的方法在多种基准和LLM骨干上提供了一个最先进的压缩比和性能的权衡。
Feb, 2024
通过确定关注层的重要性,我们提出了SqueezeAttention来精确优化动态分配关键值缓存的预算,并结合三种代表性的标记稀疏化算法来压缩每个层的关键值缓存。通过从序列和层两个维度进行优化,SqueezeAttention在各种大型语言模型和基准测试中实现了30%至70%的内存减少和最高2.2倍的吞吐量提升。
Apr, 2024
在本文中,我们探索了Key-Value缓存的低秩特性,并提出了一种压缩Key-Value头部的新方法,该方法在最小化压缩误差的同时保持与原始大语言模型相当的性能,为在资源受限环境中更高效的大语言模型部署提供了一种有前途的方向。
Jun, 2024
基于对注意力分配模式和键嵌入进行分析,我们提出了一种基于键嵌入的压缩策略,证实可在不降低准确性的情况下,将关键值(KV)缓存大小减少50%(在语言模型和针对性查询任务中)和90%(在密码检索任务中)。
Jun, 2024
大语言模型的长上下文能力是其关键能力之一,本研究填补了现有方法的空白,并评估了10多种最新方法在长上下文任务领域的表现,揭示了许多以前未知的现象,为未来长上下文能力大语言模型的发展提供了洞见和工作平台。
Jul, 2024
本研究解决了大型语言模型中长上下文长度和大批量处理过程中KV缓存导致的内存瓶颈问题。提出的特征关注方法通过在低秩空间中执行关注操作,显著减少了KV缓存的内存开销,并且与现有的缓存压缩技术可协同使用。实验结果表明,该方法能够将KV缓存大小减少最多40%,并减少注意力操作延迟最多60%,性能下降极小。
Aug, 2024
本研究解决了大语言模型在长上下文任务中键值缓存带来的内存开销问题。提出的CSKV方法通过分析通道维度的冗余,采用低秩分解技术,并引入双分支键值缓存架构,以较低的训练成本实现缓存压缩。实验表明,该方法能将内存开销降低80%,而且能够与量化技术结合,实现高达95%的压缩率。
Sep, 2024
本研究解决了长上下文任务中关键值(KV)缓存带来的大内存开销问题。通过引入CSKV技术,利用通道维度的冗余性并进行低秩分解,从而实现KV缓存的压缩,同时引入双分支KV缓存以保持模型性能。研究结果表明,CSKV能够将KV缓存的内存开销减少80%,并在与量化结合时实现高达95%的压缩比。
Sep, 2024