什么是 量化?

量化是把模型权重、激活或 KV Cache 从高精度数值表示映射为低精度表示的过程,并明确缩放因子、零点和量化粒度。它可能减少存储、内存流量或计算开销,但不保证推理更快,也不保证模型行为满足生产要求。

快速了解

全称模型量化
创建时间技术源自 1990 年代,2023 年在大语言模型领域普及
规范文档官方规范

工作原理

模型量化是一项部署技术,而不是固定压缩比例。完整配方需要说明张量对象、数值表示、校准数据、量化算法、粒度、未量化模块、打包布局、运行时和硬件。训练后量化(PTQ)对已有 Checkpoint 应用量化配方;量化感知训练(QAT)在训练中模拟低精度影响。GPTQ、AWQ 与 SmoothQuant 是目标不同的算法,GGUF 是模型容器,vLLM 或 llama.cpp 等运行时负责执行受支持的张量编码。理论权重负载只是内存下界,因为缩放参数、元数据、未量化层、激活、KV Cache、工作区和并发都会继续占用内存。生产验收必须针对精确基线测量业务任务、安全、延迟、显存和 Goodput。

主要特点

  • 可分别作用于权重、激活或 KV Cache
  • 需要明确位宽、缩放因子、零点和张量粒度
  • 包括训练后量化与量化感知训练两类工作流
  • 依赖制品布局、运行时内核和目标硬件的匹配
  • 需要具有代表性的校准数据与业务质量评测
  • 降低名义精度但不保证延迟或成本改善

常见用途

  1. 减少本地或服务端推理的权重存储与内存流量
  2. 在模型权重限制加速器内存时提升有效并发
  3. 在受支持硬件上使用低精度矩阵计算内核
  4. 经长上下文验证后降低 KV Cache 容量压力
  5. 在 Adapter 训练中加载冻结的低精度基础模型

示例

loading...
Loading code...

常见问题

权重、激活与 KV Cache 量化有什么区别?

权重量化主要减少制品体积和权重内存流量;激活量化用于低精度计算,但需要处理运行时异常值与累加误差;KV Cache 量化针对上下文长度和并发带来的内存增长。一个部署可以采用其中一种或多种,每个对象都需要独立验证质量与性能。

4 位模型的显存一定是 FP16 的四分之一吗?

不一定。4 位权重的理论负载是 FP16 权重的四分之一,但真实制品还包含缩放因子、零点、分组元数据、对齐填充和未量化模块。服务常驻内存还包括激活、KV Cache、运行时工作区、内存碎片与并发请求。

PTQ 和 QAT 有什么区别?

训练后量化(PTQ)使用权重以及许多方法所需的代表性校准数据转换已有 Checkpoint;量化感知训练(QAT)在训练阶段模拟低精度行为,让参数有机会适应。QAT 不保证自动更优,两类工作流都必须以最终可部署制品接受目标任务评测。

GGUF 是量化方法吗?

不是。GGUF 是保存元数据和张量的二进制模型容器,其中可以包含受支持的量化张量编码。量化配方决定如何近似张量数值,容器负责打包,兼容运行时负责执行,三者属于不同层级。

量化模型如何通过生产验收?

固定基线 Revision、Tokenizer、Chat Template、量化器、校准数据、制品校验和、运行时、内核和硬件,再比较业务验收率、工具调用、结构化输出、安全切片、长上下文、TTFT、Token 间延迟、峰值显存、稳定并发和 Goodput,最后通过影子与灰度阶段晋级并保留可立即回滚的基线。

相关术语

相关文章