返回首页

TurboQuant:AI 无损 KV-cache 压缩

TurboQuant 是 Google 的一种算法,用于使用 PolarQuant 和 QJL 压缩 AI 模型的 KV-cache。内存减少 6 倍,无精度损失,加速推理和向量搜索。在长上下文基准测试中测试了 Gemma、Mistral。

Google TurboQuant:AI 内存压缩革命
Advertisement 728x90

TurboQuant:优化 AI 模型的 KV 缓存压缩算法

Google 的 TurboQuant 通过向量量化解决 Transformer KV 缓存的瓶颈,减少内存消耗,同时不牺牲准确性。该算法结合 PolarQuant 和 QJL,实现每元素低至 3 位压缩,同时在长上下文任务中保持性能。这使得在资源受限硬件上运行大型语言模型成为可能。

该方法针对注意力机制中的键值对,传统量化需为数据块存储常量,从而产生额外开销。TurboQuant 通过极坐标和残差误差量化消除这些成本。

PolarQuant:无开销压缩

PolarQuant 将内存向量的笛卡尔坐标转换为极坐标,消除冗余常量。该方法不存储沿 X、Y、Z 轴的距离,而是使用半径和角度最小化码本内存。

Google AdInline article slot

该方法的优势:

  • 存储元数据零开销。
  • 保留向量空间几何结构。
  • 与现有向量搜索管道兼容。

这特别适用于加速语义搜索系统中的索引,TurboQuant 在 GloVe 数据集(d=200)上实现 1@k 召回率。

QJL:基于 Johnson-Lindenstrauss 的误差校正

PolarQuant 后,QJL 应用于 1 位残差。该算法利用 Johnson-Lindenstrauss 变换 (JLT) 将高维数据投影到低维空间,同时保留距离。

Google AdInline article slot

QJL 包括:

  • 将误差投影到随机 JLT 矩阵上。
  • 专用估计器平衡查询准确性和压缩数据。
  • 解码无额外内存开销。

结果是无需微调模型即可实现高精度相似性恢复。

基准测试和性能

TurboQuant 在开放大型语言模型(Gemma、Mistral)上测试,涵盖 LongBench、Needle In A Haystack、ZeroSCROLLS、RULER 和 L-Eval 等基准。在 Llama-3.1-8B-Instruct 上,它在标量积失真和召回率方面优于基线,同时最小化 KV 缓存大小。

Google AdInline article slot

在 Needle In A Haystack 任务(长上下文查找片段)中,KV 压缩至 3 位保持原始模型准确性,并加速推理。相比优化的 JAX 基线,TurboQuant 在 3 至 8 位级别提供注意力 logits 加速。

关键指标:

  • KV 缓存内存至少减少 6 倍。
  • 索引更小,向量搜索更快。
  • 无需重新训练保持稳定性能。

重要要点

  • TurboQuant 结合 PolarQuant 和 QJL,实现极端 KV 缓存压缩无质量损失。
  • 支持大型语言模型长上下文,提升推理速度 20-30%。
  • 适用于向量搜索和语义索引,最小内存占用。
  • 无需重新训练适用于 Gemma、Mistral 和 Llama 模型。
  • 仅限推理,不解决训练挑战。

部署前景

该算法适用于大型向量数据库的生产场景,降低索引构建延迟。对于大型语言模型,它优化长序列 KV 缓存,使模型能在消费级硬件运行。ICLR 2026 展示将验证其可扩展性。

— Editorial Team

Advertisement 728x90

继续阅读