推理与部署推理优化量化速答 · 约 5 分钟更新 2026-09-19

模型量化是什么?INT4、INT8 压缩会不会伤效果

一句话结论

量化把权重从 FP16 这类高精度数映射到 INT8、INT4 的低精度数,显存和搬运量降到二分之一或四分之一;做得细损失很小,做得糙会明显掉点,上线前要用目标任务验证。

先这样答

模型训练完,权重是一堆十六位浮点数。量化做的事是把它们映射到更低位宽的整数上,比如 INT8 用八位、INT4 用四位表示一个数,每个参数占的显存直接砍半或降到四分之一。70B 模型 FP16 要 140 GB,INT4 只要 35 GB 上下,很多模型能不能部署下来,就卡在这一步。

原理上,权重数值大多聚在一个小范围内,给每组数值配一个缩放系数,把整数区间映射回原数值区间就能近似原值。常见做法是按组量化:每几十个权重共享一套缩放系数,在压缩率和精度之间折中。路线分两条:训练后量化,拿训好的模型直接压,用一小批校准数据定缩放系数,成本最低;量化感知训练,训练阶段就模拟低精度,效果更好但代价大。推理框架里常见的 GPTQ、AWQ 属于前一条路线,是流行度很高的权重压缩方案。

效果的经验是:INT8 对绝大多数任务几乎无损;INT4 会有轻微下降,日常对话、摘要类任务不容易感知,但数学、代码这类精度敏感任务上会被放大。另外权重之外,KV Cache 也能量化,长上下文场景省得更多。总结一句:量化是用可控的精度损失换部署可行性,模型越大越划算,但上线前必须拿自己的任务评测,不能只看通用榜单。

面试官会怎么追问

  • 「为什么不重新训练就能压?」 训练后量化只做数值映射,用校准数据确定缩放系数,不动训练流程,所以成本极低。代价是低比特下效果退化比量化感知训练明显,这是成本和效果的经典取舍。
  • 「INT4 一定掉点吗?」 不一定,取决于方法、模型和任务。位数越低对数值离群点越敏感,同一个 INT4 模型在不同任务上的表现差异可能很大,所以结论要以目标任务的自测为准。
  • 「量化影响显存还是速度?」 都影响。显存省的是存放权重的空间;速度省的是搬运:解码阶段每生成一个 token 都要把全部权重从显存读一遍,字节数少了搬运就快,在带宽受限的解码阶段收益最直接。

回答的坑

  • 说「量化就是压缩,不损失效果」。它是有损近似,位数越低风险越大,准确说法是损失可控、必须用目标任务验证。
  • 只看通用榜单分下结论。榜单和真实任务分布差距大,上线前用业务数据做一轮评测是标准动作,跳过这步是事故的常见来源。
—— 本题完 ——