降低成本:大型语言模型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
大语言模型的长上下文能力是其关键能力之一,本研究填补了现有方法的空白,并评估了10多种最新方法在长上下文任务领域的表现,揭示了许多以前未知的现象,为未来长上下文能力大语言模型的发展提供了洞见和工作平台。
Jul, 2024
我们提出了一种名为KVMerger的新型KV缓存合并方法,以在受限的内存预算下实现适应性KV缓存压缩,并且在长上下文任务中降低性能下降。
Jul, 2024
本研究解决了大型语言模型长上下文推理中内存资源分配效率低下的问题。通过引入一种新区块的分页注意力框架KV-压缩,实现了按理论压缩率降低键值缓存的内存占用,从而显著提升了长上下文请求的并发处理能力。实验结果显示,该方法在多个基准测试中达到最先进的性能,并能够实现高达8倍的压缩率,而对模型性能影响微乎其微。
Sep, 2024
本研究解决了大型语言模型(LLMs)在KV缓存方面的内存消耗问题,该问题随着序列长度和批处理大小线性增长。提出了一种低秩近似KV权重矩阵的新方法,通过渐进压缩策略在不需要重新训练模型的情况下有效减小KV缓存的内存占用。大量实验表明,此方法显著降低了GPU内存使用,同时保持了性能。
Oct, 2024
本研究针对大型语言模型在处理长上下文时的内存需求问题,提出了SimLayerKV方法,通过识别懒惰层并选择性地减少其KV缓存,从而降低了缓存冗余。实验结果显示,该方法能够实现5倍的KV缓存压缩比,仅有1.2%的性能下降,具有广泛的应用潜力和简易实现的优势。
Oct, 2024