LLM

量化

2026-03-03

量化 (Quantization) 是指在保留模型大部分性能的情况下,降低模型参数的精度(如从 FP32 → FP16 → INT8 → INT4),从而减少模型体积、降低显存占用并加速推理。

量化方式

  • PTQ (Post-Training Quantization):在模型训练完成后直接进行量化,无需重新训练,简单快速,但可能有一定精度损失。常见方案有 GPTQ、AWQ、GGUF 等。
  • QAT (Quantization-Aware Training):在训练过程中模拟量化误差,使模型精度损失更小,但需要额外的训练成本。

量化类型

按数据类型精度分类:

类型位宽模型名后缀说明
FP3232-bit单精度浮点,训练时默认精度
FP1616-bit半精度浮点,推理常用
BF1616-bitBrain Float,保留更大动态范围,训练/推理均常用;无后缀的模型通常为此精度
FP88-bit 浮点FP8官方量化,需支持 FP8 的 GPU(如 H100/A100),推理速度快、精度损失极小
INT88-bitGPTQ-Int8整型,推理加速明显,精度损失较小
INT44-bitGPTQ-Int4 / AWQ极低比特,显存占用极低;GPTQ 和 AWQ 均常以 Int4 发布
GGUF混合GGUFllama.cpp 使用的格式,支持 Q2~Q8 混合量化,适合本地 CPU/GPU 部署

如果显卡支持 FP8(如 RTX 5090 / RTX 4090 / A100),优先使用 FP8;如果显卡不支持 FP8(如 RTX 3060 / RTX 30 系),直接使用 AWQ,没有 AWQ 版本或是时显存不足时使用 GPTQ-Int4。

量化方案

  • GPTQ:基于逐层最小化重建误差的 PTQ 方法,适用于 GPU 推理。
  • AWQ (Activation-aware Weight Quantization):关注激活值分布,保留关键权重精度,量化质量高。
  • GGUF / llama.cpp:CPU/GPU 混合推理友好,支持多种量化粒度(Q4_K_M、Q5_K_M 等),适合本地部署。