换个角度想
量化像压缩照片:一张 20MB 的原图压成 5MB 的 JPG,放在手机上看几乎没区别,传起来却快得多。可如果硬压到 500KB,就能看出糊和色块了。量化也是这样,适度压缩几乎无感,压过头就会变笨。
术语 · AI
Quantization
用更少的位数存模型的每个参数,比如从 16 位压到 4 位,模型体积缩小到约四分之一,普通电脑也能跑。代价是精度略有损失,压得越狠损失越明显。
每个参数少记几位,模型就小一大截
量化像压缩照片:一张 20MB 的原图压成 5MB 的 JPG,放在手机上看几乎没区别,传起来却快得多。可如果硬压到 500KB,就能看出糊和色块了。量化也是这样,适度压缩几乎无感,压过头就会变笨。
文件model-fp16 · 16GB
文件model-Q4 · 4.9GB
每个参数 16 位
保持原样,一位都不省
每个参数压到 4 位
只剩 16 个档位,取最接近的那一档
多数模型以 16 位(FP16 / BF16)发布,也有的直接用 FP8
本地运行工具里下载的模型大多已经量化好了,所以笔记本也能跑几十亿参数的模型。
FP16 和 BF16 是常见的 16 位原版;FP8 是 8 位,体积减半、质量几乎不变,多用在服务器上;Q4、Q8、GGUF 多见于本地运行工具。数字越小,文件越小。
在服务器上部署时,量化后一张显卡就能放下原本要两张卡的模型,能省下不少成本。
你的笔记本有 16GB 内存,想在本地跑一个 8B 模型。下载页上有 FP16(16GB)、Q8(8.5GB)、Q4(4.9GB)三个版本,该选哪个?
选 Q8 或 Q4。FP16 版本有 16GB,加上系统和其他软件,16GB 内存根本装不下。Q8 质量几乎没损失,但内存会比较紧张;Q4 最轻快,质量损失也不大,是大多数人的首选。
量化省的是内存和算力,不会让模型变聪明。位数压得太低(2、3 位)时,模型更容易答非所问、算错数。FP8 版本也不一定是压缩过的,有些模型训练时就用 FP8,它本来就是原版。同样是 4 位,不同的量化方法效果也有差别,重要的用途最好拿自己的任务试一试。