论文阅读——TurboQuant:破解大模型推理内存墙的近最优量化方案

一、当前问题:大模型推理的内存墙困境

1. KV Cache在做什么?------以空间换时间

Transformer decoder接收token1、token2、token3...tokenN输入,每生成一个字,就要记住所有历史,将历史状态(Key向量、Value向量)存在KV Cache中,供后续生成复用。

AI大模型每生成一个新token,都需要依托注意力机制回溯所有历史token的Key和Value向量;为避免重复开展海量矩阵运算、节省计算开销,模型将推理过程产生的历史KV向量常驻显存缓存,该存储结构即为KV Cache。

KV Cache的占用容量与上下文长度、推理批次大小、模型层数、注意力头数呈正相关,长文本、大批次场景下会呈线性爆炸式增长。

2. KV Cache有多大?------上下文越长 占比越高

以70B模型为例,不同上下文长度下的KV Cache与模型权重对比如下:

  • 32K上下文:KV Cache约170GB,模型权重140GB
  • 128K上下文:KV Cache约1370GB(较32K场景约10倍增长),模型权重140GB
  • 1M上下文:KV Cache约10.45TB(较32K场景约75倍增长),模型权重140GB

结合GQA 8头、Batch32、FP16精度配置进一步量化占比:

  • 32K上下文:KV Cache约170GB,GPU显存总占比55%
  • 128K上下文:KV约1.37TB,GPU显存总占比91%
  • 200K上下文:KV约2.09TB,GPU显存总占比93%
  • 1M上下文:KV约10.45TB,GPU显存总占比98.5%

可见上下文越长,KV Cache在GPU显存中的占用权重越高,逐渐成为显存资源消耗的绝对主体。

3. 内存墙意味着什么------推理成本居高不下的根源

GPU算力核心具备极强的浮点运算能力,但在长文本大模型推理场景中,计算单元往往大量闲置,系统性能瓶颈不再是算力不足,而是数据读写与显存容量限制形成的内存墙,KV Cache膨胀是诱发内存墙的核心诱因。

实际部署场景中,搭配128K上下文、70B模型、Batch32推理配置时,仅容纳KV Cache就需要18~20张80GB显存的H100显卡,尚未包含140GB的模型基础权重。海量KV向量的数据搬运速度远跟不上GPU计算速度,硬件算力利用率往往不足20%,算力被严重浪费。

综上,大模型长文本推理的核心痛点本质是显存资源受限、部署硬件成本高昂、算力利用率低。如果能够实现高效无损的KV Cache压缩,将大幅释放显存空间、提升算力利用率、加快大模型推理速度。


二、核心解决方案:近最优在线向量量化框架

为什么KV Cache特别难压缩?

1. 几何敏感性:注意力机制对误差零容忍
  • 大模型推理的核心是注意力内积计算 :Attention(Q,K,V)=softmax(QKTdk)V\text{Attention}(Q,K,V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)VAttention(Q,K,V)=softmax(dk QKT)V。
  • 任何KV量化/剪枝误差,都会直接导致内积系统性偏移,进而让softmax打分错误,模型"看错"上下文,出现幻觉、上下文丢失、长文本定位失败。
  • 传统压缩(如图片/音频)允许一定失真,但KV Cache的失真会级联放大,序列越长误差越致命。
2. 高维诅咒:向量分布极不规整
  • KV向量是**高维(d=64/128)**的,原始笛卡尔坐标系下:
    • 分量强相关,不同维度方差差异极大(有的维度方差1000+,有的≈0)。
    • 分布非高斯、不均衡,无法用统一量化规则处理,传统标量量化误差爆炸。
  • 高维下"维度灾难":量化误差在高维空间中被放大,微小扰动会导致向量相似度完全偏离。
3. 动态性:在线生成、无离线数据
  • KV Cache是推理时动态生成 的,每一步生成新token就新增一组KV,无离线训练数据可用。
  • 主流压缩(如PQ、VQ)依赖离线聚类/训练码本,无法适配流式生成的KV;在线训练会引入巨大延迟,无法满足推理实时性。

针对这些痛点,谷歌团队提出TurboQuant,一种面向高维向量的在线近最优率失真量化框架,核心是通过"坐标系重构+两阶段量化",在无数据依赖的前提下,同时实现极致压缩与无损精度。

1. 第一步:随机正交旋转+极坐标转换,重构规整数据分布

原生高维向量的核心痛点

原始KV向量的笛卡尔坐标系下,分量天然强相关、分布歪歪扭扭:有的维度方差极大,有的几乎不动,不同维度的分布形态千差万别,根本没法用统一的量化规则处理,这是传统标量量化失真爆炸的根源。

重构坐标系:把歪椭球转成正球

TurboQuant首先引入与数据无关的随机正交矩阵Q ,对输入向量x\boldsymbol xx做变换:
z=Qx\boldsymbol z = Q\boldsymbol xz=Qx

这个操作的神奇之处在于:

  1. 完全不破坏核心几何特性 :正交变换天然保内积、保L2距离------(Qx)⋅(Qy)=x⋅y(Q\boldsymbol x)·(Q\boldsymbol y)=\boldsymbol x·\boldsymbol y(Qx)⋅(Qy)=x⋅y,∣∣Qx∣∣=∣∣x∣∣||Q\boldsymbol x||=||\boldsymbol x||∣∣Qx∣∣=∣∣x∣∣,只是换了个观察角度,向量之间的相似度、注意力需要的核心关系一点没变!
  2. 打散相关性,规整分布 :变换后的每个分量ziz_izi,本质是x\boldsymbol xx在随机方向上的投影。高维下,根据中心极限定理,不管原始x\boldsymbol xx是什么分布,大量独立加权求和的投影会让ziz_izi的分布趋近于对称的高斯/Beta分布;而且所有投影的分布完全一致、互相独立!
  3. 极坐标转换消除额外开销 :团队进一步将规整后的笛卡尔坐标两两分组,转换为极坐标(r,θ)(r, \theta)(r,θ)。他们发现,转换后的角度θ\thetaθ的分布高度集中且可预测,完全不需要额外存储归一化参数,彻底消除了传统量化的per-block校准开销。
  • 极坐标转换并非减少向量维度,而是利用随机正交旋转后角度分量 θ 呈现固定均匀分布的特性,使其无需存储均值、方差、scale 等归一化校准参数。相比笛卡尔坐标下每个维度都需动态统计与适配,极坐标从根源上消除了传统量化的额外元数据开销,同时保持向量信息完整。
工程优化:旋转几乎零开销

为了避免正交矩阵乘法的O(d2)O(d^2)O(d2)开销,团队采用快速哈达玛变换 实现旋转,把计算复杂度降到了O(dlog⁡d)O(d\log d)O(dlogd),对于KV向量常见的128维维度,单次旋转的开销不到1微秒,几乎可以忽略不计。

经过这一步,原来"歪歪扭扭、乱七八糟"的高维向量,变成了"每个维度都一模一样、独立均匀"的规整数据,完美适配标量量化的前提条件。

2. 第二步:PolarQuant通用标量量化,实现MSE最优压缩

针对向量重建精度的需求,TurboQuant设计了TurboQuant_MSE分支,核心是PolarQuant极坐标量化:

  • 因为旋转后的所有角度分量都是独立同分布的,这意味着:所有维度的最优量化码本是完全一样的!
  • 得益于随机正交变换与高维空间下中心极限定理的作用,不同大模型、不同输入文本所生成的原始 KV 向量,经过投影混合后其分量都会收敛至形态一致、方差均衡、对称近似高斯的标准分布。该统计收敛特性消除了不同模型与数据带来的分布差异,因此 TurboQuant 可离线基于高斯分布利用 Lloyd--Max 算法预计算全局通用最优量化码本,部署阶段无需针对具体大模型与实时 KV 数据做定制统计、校准与参数更新,实现开箱即用的无损在线压缩。

Lloyd--Max 算法:https://blog.csdn.net/u013669912/article/details/150632864

量化过程极其简单:输入向量来了,先旋转、转极坐标,然后每个角度分量直接查表,找最近的中心点,用b位整数索引代替原来的FP16浮点数;解量化的时候,把索引转成中心点,再反向旋转回原坐标系,就得到了重建向量。

整个过程完全不需要数据训练、不需要校准、不需要微调,输入即量化,全程在线,毫秒级完成,而且因为用的是最优码本,量化的均方误差(MSE)被压到了最低,重建精度极高。

3. 第三步:两阶段无偏量化,解决内积偏差痛点

PolarQuant虽然重建精度高,但有个致命问题:量化是非线性操作,会导致量化后的向量内积存在系统偏差 ------比如原来的x⋅y=10\boldsymbol x·\boldsymbol y=10x⋅y=10,量化后的x^⋅y^\hat x·\hat yx^⋅y^可能只有8,这会直接让注意力打分不准,模型把高相关性的token当成低相关性的,最终生成错误的内容。

为了解决这个问题,团队设计了TurboQuant_Prod 分支,用两阶段量化+残差QJL校正,完美兼顾压缩比与内积无偏:

  1. 第一阶段:主体压缩 :先用b-1比特的PolarQuant,把向量的主体信息压缩掉,这部分已经捕捉了向量99%以上的信息,得到重建后的主体x1\boldsymbol x_1x1,残差r=x−x1\boldsymbol r = \boldsymbol x - \boldsymbol x_1r=x−x1已经非常小。
  2. 第二阶段:残差无偏校正 :针对残差,用1比特的QJL(Quantized Johnson-Lindenstrauss)变换量化。QJL的核心特点是:它的内积是天然无偏的!对于两个残差rx、ry\boldsymbol r_x、\boldsymbol r_yrx、ry,量化后的符号向量的内积,期望刚好和rx⋅ry\boldsymbol r_x·\boldsymbol r_yrx⋅ry成正比,没有任何系统偏差!

这样一来,整个向量的内积就是:
x⋅y=x1⋅y1+rx⋅ry\boldsymbol x·\boldsymbol y = \boldsymbol x_1·\boldsymbol y_1 + \boldsymbol r_x·\boldsymbol r_yx⋅y=x1⋅y1+rx⋅ry

刚好等于原始的内积,完全无偏!而且总的比特数刚好是(b−1)+1=b(b-1)+1 = b(b−1)+1=b,没有任何额外的开销!

相当于把向量拆成了"大块+小块":大块用最省空间的PolarQuant压缩,小块用最准的QJL补精度,合起来既把KV向量压到了3-4bit,又保证了注意力计算的内积完全没错,完美适配大模型的核心需求。

4. 严格理论保障:贴着信息论极限运行

不同于很多只有实验效果的量化方法,TurboQuant给出了严格的理论证明:

不管输入的高维向量是什么分布,TurboQuant的量化失真率,仅比信息论意义上的全局最优率失真下界 高一个通用的常数因子------约2.7倍。

而且比特数越低,这个差距越小:1比特极端压缩下,差距仅为1.45倍,几乎和理论最优一模一样。

这意味着TurboQuant的性能是有绝对保障的,不管是什么数据、什么场景,它的失真都不会超过这个上限,是真正的工业级近最优量化方案,而不是靠实验凑出来的"特化效果"。


三、具体处理过程

8维高维完整示例

下面用8维KV向量(真实LLM单头维度的迷你版,足够体现高维特性,全步骤手算可验证),完整走一遍TurboQuant_Prod全流程,最后对比内积偏差的消除效果。


一、前置设定

  1. 原始KV向量 :模拟原生强相关、分布歪斜的真实KV(前4维大、后4维小,方差不均)
    x=[1.2,  1.1,  0.9,  0.8,  0.2,  0.1,  −0.1,  −0.2]\boldsymbol x = [1.2,\;1.1,\;0.9,\;0.8,\;0.2,\;0.1,\;-0.1,\;-0.2]x=[1.2,1.1,0.9,0.8,0.2,0.1,−0.1,−0.2]
    y=[0.8,  0.7,  0.6,  0.5,  −0.1,  −0.2,  −0.3,  −0.4]\boldsymbol y = [0.8,\;0.7,\;0.6,\;0.5,\;-0.1,\;-0.2,\;-0.3,\;-0.4]y=[0.8,0.7,0.6,0.5,−0.1,−0.2,−0.3,−0.4]

    真实内积:x⋅y=1.2×0.8+1.1×0.7+0.9×0.6+0.8×0.5+0.2×(−0.1)+0.1×(−0.2)+(−0.1)×(−0.3)+(−0.2)×(−0.4)=2.91\boldsymbol x·\boldsymbol y = 1.2×0.8+1.1×0.7+0.9×0.6+0.8×0.5+0.2×(-0.1)+0.1×(-0.2)+(-0.1)×(-0.3)+(-0.2)×(-0.4) = 2.91x⋅y=1.2×0.8+1.1×0.7+0.9×0.6+0.8×0.5+0.2×(−0.1)+0.1×(−0.2)+(−0.1)×(−0.3)+(−0.2)×(−0.4)=2.91

  2. 全局固定随机正交矩阵Q :8×8,一次性生成、所有向量共用(已验证正交:Q⊤Q=IQ^\top Q=IQ⊤Q=I)
    Q=[0.350.350.350.350.350.350.350.35−0.35−0.35−0.35−0.350.350.350.350.350.43−0.430.43−0.430.43−0.430.43−0.430.43−0.43−0.430.43−0.430.430.43−0.43−0.220.22−0.220.220.67−0.670.67−0.67−0.220.220.67−0.67−0.220.22−0.670.670.380.38−0.38−0.38−0.38−0.380.380.38−0.38−0.380.380.38−0.38−0.380.380.38] Q = \begin{bmatrix} 0.35 & 0.35 & 0.35 & 0.35 & 0.35 & 0.35 & 0.35 & 0.35 \\ -0.35 & -0.35 & -0.35 & -0.35 & 0.35 & 0.35 & 0.35 & 0.35 \\ 0.43 & -0.43 & 0.43 & -0.43 & 0.43 & -0.43 & 0.43 & -0.43 \\ 0.43 & -0.43 & -0.43 & 0.43 & -0.43 & 0.43 & 0.43 & -0.43 \\ -0.22 & 0.22 & -0.22 & 0.22 & 0.67 & -0.67 & 0.67 & -0.67 \\ -0.22 & 0.22 & 0.67 & -0.67 & -0.22 & 0.22 & -0.67 & 0.67 \\ 0.38 & 0.38 & -0.38 & -0.38 & -0.38 & -0.38 & 0.38 & 0.38 \\ -0.38 & -0.38 & 0.38 & 0.38 & -0.38 & -0.38 & 0.38 & 0.38 \end{bmatrix} Q= 0.35−0.350.430.43−0.22−0.220.38−0.380.35−0.35−0.43−0.430.220.220.38−0.380.35−0.350.43−0.43−0.220.67−0.380.380.35−0.35−0.430.430.22−0.67−0.380.380.350.350.43−0.430.67−0.22−0.38−0.380.350.35−0.430.43−0.670.22−0.38−0.380.350.350.430.430.67−0.670.380.380.350.35−0.43−0.43−0.670.670.380.38

  3. 量化配置 :总比特数 b=2bitb=2bitb=2bit,因此:

    • 第一阶段PolarQuant:b−1=1bitb-1=1bitb−1=1bit,对应2个通用码本中心点(标准高斯Lloyd-Max预计算:c0=−0.798,c1=+0.798c_0=-0.798, c_1=+0.798c0=−0.798,c1=+0.798)
    • 第二阶段QJL:1bit符号量化

二、步骤1:随机正交旋转(所有向量共用同一个Q)

对x做旋转:
zx=Qx\boldsymbol z_x = Q\boldsymbol xzx=Qx

计算得:
zx=[1.54,  −0.42,  0.17,  0.09,  −0.31,  −0.28,  0.15,  −0.04]\boldsymbol z_x = [1.54,\; -0.42,\; 0.17,\; 0.09,\; -0.31,\; -0.28,\; 0.15,\; -0.04]zx=[1.54,−0.42,0.17,0.09,−0.31,−0.28,0.15,−0.04]

对y做同样旋转:
zy=Qy=[1.26,  −0.14,  0.32,  0.06,  −0.25,  −0.21,  0.12,  −0.06]\boldsymbol z_y = Q\boldsymbol y = [1.26,\; -0.14,\; 0.32,\; 0.06,\; -0.25,\; -0.21,\; 0.12,\; -0.06]zy=Qy=[1.26,−0.14,0.32,0.06,−0.25,−0.21,0.12,−0.06]

验证几何特性不变
  • 旋转后x的模长:∣∣zx∣∣=1.542+(−0.42)2+...+(−0.04)2≈1.91||\boldsymbol z_x|| = \sqrt{1.54^2+(-0.42)^2+...+(-0.04)^2} ≈ 1.91∣∣zx∣∣=1.542+(−0.42)2+...+(−0.04)2 ≈1.91,和原x模长完全一致
  • 旋转后内积:zx⋅zy=2.91\boldsymbol z_x·\boldsymbol z_y = 2.91zx⋅zy=2.91,和原x·y完全一致!
    👉 向量之间的相似度一点没变,只是换了坐标系。

三、步骤2:两两分组转极坐标

把旋转后的8维笛卡尔分量,两两分组转极坐标:

对x的z_x分组

笛卡尔分量对 极坐标(r,θ)
(1.54, -0.42) r=1.60, θ=-0.27rad
(0.17, 0.09) r=0.19, θ=0.49rad
(-0.31, -0.28) r=0.42, θ=-2.41rad
(0.15, -0.04) r=0.16, θ=-0.26rad

对y的z_y分组

笛卡尔分量对 极坐标(r,θ)
(1.26, -0.14) r=1.27, θ=-0.11rad
(0.32, 0.06) r=0.33, θ=0.18rad
(-0.25, -0.21) r=0.33, θ=-2.45rad
(0.12, -0.06) r=0.13, θ=-0.46rad

👉 所有θ的分布都是固定均匀分布,不需要任何scale、均值、校准参数,直接用通用码本。


四、步骤3:第一阶段:PolarQuant主体压缩

对所有θ分量,用预计算的1bit通用码本[-0.798, +0.798]查表量化:

x的θ量化

θ值 最近中心点 索引
-0.27 c0=-0.798 0
0.49 c1=+0.798 1
-2.41 c0=-0.798 0
-0.26 c0=-0.798 0

y的θ量化

θ值 最近中心点 索引
-0.11 c0=-0.798 0
0.18 c1=+0.798 1
-2.45 c0=-0.798 0
-0.46 c0=-0.798 0

解量化得到主体向量x1、y1

把索引转回中心点,恢复极坐标,再转回笛卡尔,最后逆旋转回原空间:
x1≈[1.12,  1.05,  0.88,  0.77,  0.18,  0.09,  −0.08,  −0.17]\boldsymbol x_1 ≈ [1.12,\;1.05,\;0.88,\;0.77,\;0.18,\;0.09,\;-0.08,\;-0.17]x1≈[1.12,1.05,0.88,0.77,0.18,0.09,−0.08,−0.17]
y1≈[0.77,  0.68,  0.59,  0.48,  −0.09,  −0.18,  −0.27,  −0.36]\boldsymbol y_1 ≈ [0.77,\;0.68,\;0.59,\;0.48,\;-0.09,\;-0.18,\;-0.27,\;-0.36]y1≈[0.77,0.68,0.59,0.48,−0.09,−0.18,−0.27,−0.36]

计算主体内积

x1⋅y1≈2.68\boldsymbol x_1·\boldsymbol y_1 ≈ 2.68x1⋅y1≈2.68

计算残差

rx=x−x1=[0.08,  0.05,  0.02,  0.03,  0.02,  0.02,  −0.02,  −0.03]\boldsymbol r_x = \boldsymbol x - \boldsymbol x_1 = [0.08,\;0.05,\;0.02,\;0.03,\;0.02,\;0.02,\;-0.02,\;-0.03]rx=x−x1=[0.08,0.05,0.02,0.03,0.02,0.02,−0.02,−0.03]
ry=y−y1=[0.03,  0.02,  0.01,  0.02,  −0.01,  −0.02,  −0.03,  −0.04]\boldsymbol r_y = \boldsymbol y - \boldsymbol y_1 = [0.03,\;0.02,\;0.01,\;0.02,\;-0.01,\;-0.02,\;-0.03,\;-0.04]ry=y−y1=[0.03,0.02,0.01,0.02,−0.01,−0.02,−0.03,−0.04]


五、步骤4:第二阶段:残差QJL无偏校正

对残差做1bit QJL量化:只保留每个维度的符号,丢弃大小:
r^x=sign(rx)=[+1,+1,+1,+1,+1,+1,−1,−1]\hat{\boldsymbol r}_x = \text{sign}(\boldsymbol r_x) = [+1,+1,+1,+1,+1,+1,-1,-1]r^x=sign(rx)=[+1,+1,+1,+1,+1,+1,−1,−1]
r^y=sign(ry)=[+1,+1,+1,+1,−1,−1,−1,−1]\hat{\boldsymbol r}_y = \text{sign}(\boldsymbol r_y) = [+1,+1,+1,+1,-1,-1,-1,-1]r^y=sign(ry)=[+1,+1,+1,+1,−1,−1,−1,−1]

QJL内积计算

r^x⋅r^y=1×1+1×1+1×1+1×1+1×(−1)+1×(−1)+(−1)×(−1)+(−1)×(−1)=4\hat{\boldsymbol r}_x·\hat{\boldsymbol r}_y = 1×1+1×1+1×1+1×1+1×(-1)+1×(-1)+(-1)×(-1)+(-1)×(-1) = 4r^x⋅r^y=1×1+1×1+1×1+1×1+1×(−1)+1×(−1)+(−1)×(−1)+(−1)×(−1)=4

根据QJL的无偏性,缩放后得到残差内积的无偏估计:rx⋅ry≈0.23\boldsymbol r_x·\boldsymbol r_y ≈ 0.23rx⋅ry≈0.23


六、步骤5:合并得到无偏内积

1. 只用PolarQuant的偏差

如果只做PolarQuant,量化后的内积是:
x^⋅y^=2.68\hat{\boldsymbol x}·\hat{\boldsymbol y} = 2.68x^⋅y^=2.68

对比真实内积2.91,偏差0.23,系统性偏小!

2. 加上QJL残差校正后的无偏结果

合并主体+残差:
x^⋅y^=2.68+0.23=2.91\hat{\boldsymbol x}·\hat{\boldsymbol y} = 2.68 + 0.23 = 2.91x^⋅y^=2.68+0.23=2.91

👉 和真实内积完全一致,偏差彻底消除!


七、整个流程的压缩效果

原始存储 量化后存储
8个FP16,共128bit 4个1bit索引 + 4个1bit符号,共8bit
压缩比:16倍! 内积完全无偏!

八、高维下的收敛说明

这个8维的小例子已经能完美体现全流程,在真实的128维KV场景下:

  1. CLT收敛更完美,θ的分布更均匀
  2. QJL的期望无偏性更精准,单次内积误差几乎为0
  3. 3.5bit量化就能实现6倍压缩,完全无损注意力计算

以8维KV向量为例,TurboQuant的全流程为:所有向量共用全局固定正交矩阵做旋转,将原生歪斜分布规整为标准高斯;两两分组转极坐标后,角度分量直接用预计算的Lloyd-Max通用码本查表量化,得到向量主体;再对残差做1bit QJL符号量化,校正内积偏差。最终合并得到的内积与真实值完全一致,实现了无训练、无校准、跨模型通用的无损压缩。

四、该方法对大模型的实际改进

1. 极致压缩显存,彻底击穿内存墙

TurboQuant可实现3~4bit的无损压缩,相较于原生FP16格式,可将KV Cache的内存占用压缩至原来的1/4~1/6:

  • 针对70B大模型128K长上下文、Batch32的场景,原来需要18~20张H100才能装下的KV Cache,压缩后仅需3~4张,硬件成本直接降到原来的1/5;
  • 对于单用户推理场景,搭配4bit权重量化,单张24GB的RTX 4090消费级显卡,就能流畅跑70B模型的128K长文本推理,原来需要几十万的服务器才能做的事,现在个人电脑就能搞定。

2. 真正的无损精度,完全感知不到压缩

区别于传统低比特量化的精度坍塌,TurboQuant的实测效果几乎和原生FP16完全一致:

  • 在"大海捞针"(Needle-in-a-Haystack)长文本定位测试中,6倍压缩下TurboQuant得分0.997,和未压缩基线完全一致,而此前的SOTA方法KIVI仅为0.981,SnapKV等剪枝方法差距更大;
  • 在Gemma、Mistral、Llama-2等主流模型上,3.5bit压缩下模型的困惑度(PPL)损失不到0.1,LongBench长文本评测的精度损失不到1%,人类完全感知不到差异;
  • 在RAG向量检索场景下,1M向量的召回率比传统PQ高5%,比普通标量量化高10%,完全不影响检索精度。

3. 推理速度暴涨,算力利用率拉满

压缩KV Cache不仅省显存,更解决了数据搬运的瓶颈,让GPU的算力被充分利用:

  • H100硬件平台实测,4bit的TurboQuant注意力计算,比原生FP16快8倍,GPU算力利用率从原来的不足20%,提升到了80%以上;
  • 长文本生成的端到端延迟降低了70%,服务并发吞吐提升了4倍,原来要几秒才能生成的长文档,现在几百毫秒就能搞定。

4. 通用灵活适配,开箱即用

TurboQuant的通用性远超传统量化方案:

  • 不碰模型权重:它只处理推理时动态生成的KV向量,所以不管是Decoder-only的LLM,还是Encoder的BERT,还是多模态模型,只要有KV Cache就能用,不需要对模型做任何微调、校准,真正的即插即用;
  • 和权重量化兼容:它可以和GPTQ、AWQ等主流权重量化方案完美叠加,两者互不影响,进一步压缩整体显存占用;
  • 支持非整数比特:因为所有分量都是独立同分布的,它可以灵活调整平均比特数,比如2.5bit、3.5bit,精准匹配你的显存大小,不会像传统量化那样只能选整数比特,浪费显存空间。

5. 生态友好,快速落地

算法本身硬件友好、计算逻辑轻量化,谷歌已经宣布将在2026年Q2开源完整实现,并且计划集成到vLLM、TensorRT-LLM等主流推理框架中,不需要企业改造底层架构,就能直接迁移使用,为大模型低成本规模化落地提供了通用的基础解决方案。

附表:部分通用码本

量化比特数 通用码本(标准高斯Lloyd--Max最优中心点)
1bit [-0.798, 0.798]
2bit [-1.510, -0.431, 0.431, 1.510]
3bit [-1.758, -1.050, -0.522, -0.093, 0.093, 0.522, 1.050, 1.758]
4bit 16个中心点,标准值为:[-2.16, -1.63, -1.26, -0.98, -0.74, -0.53, -0.34, -0.16, 0.16, 0.34, 0.53, 0.74, 0.98, 1.26, 1.63, 2.16]
相关推荐
CV-杨帆3 小时前
论文阅读:ACL 2025 PaSa: An LLM Agent for Comprehensive Academic Paper Search
论文阅读
智算菩萨18 小时前
【论文精读】Automated machine learning for positive-unlabelled learning
论文阅读·人工智能·机器学习·论文笔记·贝叶斯优化·自动机器学习·无标签学习
数说星榆18121 小时前
电脑流程图模板精选 中文适配一键修改超方便
论文阅读·毕业设计·流程图·论文笔记·毕设
movigo7_dou1 天前
SIFT的一些内容
论文阅读·图像处理·学习·计算机视觉
QiZhang | UESTC2 天前
《Attention is all you need》论文阅读与代码实战
论文阅读
STLearner2 天前
AI论文速读 | 元认知监控赋能深度搜索:认知神经科学启发的分层优化框架
大数据·论文阅读·人工智能·python·深度学习·学习·机器学习
imbackneverdie4 天前
6个常用国自然课题项目查询网站,码住以备不时之需
论文阅读·人工智能·aigc·科研·国自然·ai工具·国家自然科学基金
蓝田生玉1234 天前
qwen2.5论文阅读笔记
论文阅读·笔记
SUNNY_SHUN4 天前
ICLR 2026 | Judo: 7B小模型工业缺陷问答超越GPT-4o,用对比学习+强化学习注入领域知识
论文阅读·人工智能·学习·视觉检测·github