WKVQuant:量化权重和键 / 值缓存以提升大型语言模型的性能
内容提要
本文综述大语言模型量化研究,聚焦KV缓存激活,提出通道关键激活量化、RoPE本地化量化、非均匀KV缓存量化等方法,在LLaMA等模型上实现3位量化困惑度退化小于0.1,单张A100支持100万上下文;并介绍KIVI、QLLM、OmniQuant等后训练量化技术以降低内存与推理成本。
延伸解读
KV缓存量化:长上下文推理的关键
文章指出,随着大语言模型处理长文本,KV缓存激活成为推理内存占用的主要部分。通过通道关键激活量化、RoPE本地化量化等创新方法,对KV缓存进行低比特量化,能在几乎不损失精度的情况下大幅降低内存。例如,3位量化在Wikitext-2和C4上困惑度退化小于0.1,使单张A100-80GB GPU支持LLaMA-7B的100万上下文长度,8-GPU系统更可达1000万。这为长上下文应用提供了实用基础。
后训练量化技术对比:KIVI、QLLM与OmniQuant
文章介绍了多种后训练量化技术。KIVI是一种无需调参的2位KV缓存量化算法,可使Llama等模型在几乎不损失质量下实现4倍批处理大小和2.35-3.47倍吞吐量提升。QLLM通过自适应通道重组,在LLaMA-2上比之前最优方法平均准确率提高7.89%。OmniQuant则在多种量化设置下保持计算效率,显著提升推理速度并减少内存。这些技术各有侧重,共同推动大模型高效部署。
量化方法的多样性与适用场景
文章涵盖了从权重、激活到KV缓存的多维度量化研究。例如,W4A8量化结合激活量化感知缩放和序列长度感知校准,并引入混合数据格式dINT解决下溢问题,硬件效率比8位整数MAC单元提升2倍。此外,还有基于激活函数的低比特权重量化、交叉块重建后训练量化等。这些方法针对不同精度需求和硬件条件,为实际部署提供了灵活选择,但需根据模型和任务权衡精度与效率。
Q&A
WKVQuant 主要解决了大语言模型推理中的什么问题?
WKVQuant 主要解决大语言模型在长上下文应用中 KV 缓存激活占用大量内存的问题,通过对 KV 缓存进行量化来降低内存占用和推理成本。
WKVQuant 提出了哪些具体的量化方法?
WKVQuant 提出了五种方法:通道关键激活量化、Rotary 位置嵌入本地化量化、非均匀 KV 缓存量化、向量稠密稀疏量化和 Q-Norm。
WKVQuant 在哪些模型和数据集上进行了验证?取得了什么效果?
在 LLaMA、LLaMA-2 和 Mistral 模型上,使用 Wikitext-2 和 C4 数据集,3 位量化实现了小于 0.1 的困惑度退化,优于现有方法。
WKVQuant 能支持多长的上下文长度?
在单个 A100-80GB GPU 上,WKVQuant 可为 LLaMA-7B 模型提供长达 100 万的上下文长度;在 8-GPU 系统上可提供长达 1000 万的上下文长度。
KIVI 是什么?它有什么特点?
KIVI 是一种无需调参的 2 位键值缓存量化算法,通过研究 KV 缓存元素分布实现。它使 Llama、Falcon 和 Mistral 模型在几乎不损失质量的情况下,使用 2.6 倍峰值内存,实现高达 4 倍的批处理大小,并提高 2.35 到 3.47 倍的推理吞吐量。
OmniQuant 技术有什么作用?
OmniQuant 是一种后训练量化技术,能在多种量化设置下实现出色性能,保持计算效率,并在实际设备上显著提高推理速度、减少内存。