跳转至

一、先一句话定义

👉 大模型量化方法 = 把模型里的“高精度参数”压缩成“低精度表示”的技术方案

本质就是:

用更少的显存 + 更快的计算,尽量保持原来的效果


二、大模型里到底“量化”了什么?

一个大模型(比如 Qwen、LLaMA)本质是:

一堆矩阵(权重 W) + 输入(x) → 输出(y)

这些权重原来是:

  • FP32(32位浮点)
  • FP16 / BF16(16位)

👉 很占显存!


量化之后:

变成:

  • INT8(8位)
  • INT4(4位)

👉 显存直接砍一半甚至 1/4


三、核心本质(一定要理解)

量化其实做了两件事:

1️⃣ 数值压缩(核心公式)

把浮点数变成整数:

float ≈ int * scale

比如:

0.123 → 12 * 0.01

👉 scale 是关键


2️⃣ 计算方式改变

原来:

FP16 × FP16

现在:

INT4 × INT4 → 再还原

👉 GPU 可以更快算(如果有对应 kernel)


四、为什么大模型“必须量化”?

可以这样理解👇

不量化:

  • 70B 模型 ≈ 140GB 显存(FP16)
  • 👉 根本跑不了

量化后(INT4):

  • 70B ≈ 35GB
  • 👉 单机 1~2 张卡就能跑

👉 所以:

量化 = 大模型落地的前提条件


五、“量化方法”到底指什么?

重点来了👇

不同方法,本质区别在:

怎么决定“哪些信息可以丢,怎么丢”


主流量化方法分类(必须知道)

① 最简单:Naive 量化

  • 直接压
  • 不管误差
  • ❌ 基本不可用

② GPTQ

👉 全局误差最小

  • 用数学优化(Hessian)
  • 精度高
  • 计算复杂

③ AWQ

👉 保护重要权重

  • 看激活
  • 工程友好
  • 现在很主流

④ SmoothQuant

👉 把激活的难度转移到权重

  • 适合 INT8
  • 工业部署多

⑤ KV Cache 量化

👉 压缩推理时的缓存

  • 降显存
  • 提升长上下文能力

六、从工程角度再分一层(非常重要)

按“量化对象”分:

🔹 权重量化(最常见)

  • 只压 W
  • 👉 GPTQ / AWQ

🔹 激活量化

  • 压中间结果
  • 👉 更难(容易掉精度)

🔹 全量化(W + 激活)

  • 👉 真正高性能推理
  • 👉 TensorRT-LLM 常用

七、再给一个工程级总结(重点记)

如果以后做部署:

👉 其实是在选:

目标 选什么
快速上线 AWQ
极致精度 GPTQ
工业 INT8 SmoothQuant
极限省显存 INT4 + KV量化

八、终极一句话(帮形成认知闭环)

👉 大模型量化方法 = 在“显存 / 速度 / 精度”之间做权衡的算法体系