工具大全
AI 教程作者:Coocon2026年9月4日8 次阅读约 7 分钟阅读

大模型量化到底损失多少精度?Q8 到 Q2 一张表说清,附 GGUF 怎么选

大模型量化到底损失多少精度?Q8 到 Q2 一张表说清,附 GGUF 怎么选

先给经验法则,赶时间的看完这段就够:

  • Q8_0:与 FP16 的差距小到测量误差级别,可视为无损,但体积只省一半——通常不值得,除非你内存宽裕到用不完。
  • Q6_K:接近无损,困惑度(PPL)增幅约 0.3%。想要"几乎没损失"的安全档,选它。
  • Q5_K_M / Q4_K_M:性价比甜点区。Q4_K_M 体积不到 FP16 的三分之一,PPL 增幅约 2-3%,日常对话、写代码基本无感。社区默认推荐 Q4_K_M 不是没有道理的
  • Q3 档:开始能感觉到变笨(PPL 增幅 8-10%),长推理、数学、代码上错误率上升。内存实在不够时的妥协选项,优先选带 imatrix 的 IQ3/Q3_K_M。
  • Q2 档及以下:明显劣化(PPL 增幅 40%+),只适合"能跑起来看一眼"的验证用途。1-bit 档(IQ1_S)PPL 直接爆炸到基线的近 10 倍,不要抱幻想。

下面是数据依据和每一档的细节。

一、数据从哪来:llama.cpp 官方量化质量实测

网上讨论量化损失,多数是"我感觉差不多"式的体感帖。本文的数据来自 llama.cpp 官方 perplexity 工具文档里公布的系统性实测:Llama-3-8B 全量化档位,RTX 4090 上用 Wikitext 语料测 PPL(困惑度)、KLD(KL 散度)和 token 概率偏移,是目前公开资料里最完整的一份量化质量对照。

三个指标通俗地说:

  • PPL(困惑度):模型对文本的"意外程度",越低越好。量化后 PPL 相比 FP16 涨得越多,损失越大。
  • KLD(KL 散度):量化前后模型输出概率分布的偏离程度,0 = 完全一致。比 PPL 更敏感,能抓到"PPL 差不多但行为已经变了"的情况。
  • Mean Δp:预测正确 token 的概率平均掉了几个百分点,最接近"变笨了多少"的直觉。

二、核心数据表:Q8 到 IQ1 每一档损失多少

从官方完整表格中摘录关键档位(Llama-3-8B,FP16 基线 PPL ≈ 6.23,体积 14.97 GiB):

量化档 体积 (GiB) 相对 FP16 ΔPPL 正确 token 概率损失 (Mean Δp)
Q8_0 7.96 53% +0.003 -0.02%
Q6_K 6.14 41% +0.022 -0.01%
Q5_K_M 5.33 36% +0.057 -0.11%
Q4_K_M(imatrix) 4.58 31% +0.151 -0.39%
Q4_K_M(无 imatrix) 4.58 31% +0.175 -0.60%
IQ4_XS(imatrix) 4.14 28% +0.228 -0.67%
Q4_0(老格式) 4.34 29% +0.469 -1.59%
Q3_K_M(imatrix) 3.74 25% +0.503 -1.20%
IQ3_M(imatrix) 3.53 24% +0.667 -3.18%
Q2_K(imatrix) 2.96 20% +2.42 -6.50%
IQ2_M(imatrix) 2.74 18% +2.37 -6.46%
IQ1_S(imatrix) 1.88 13% +52~57(崩坏) -32%

几个值得停下来看的点:

  1. Q8 → Q6 → Q5 这三档的损失都在"仪器才测得出来"的量级。Mean Δp 不到 0.2%,人类对话里分辨不出。
  2. Q4_K_M 是拐点前的最后一档:正确 token 概率只掉 0.4-0.6%,但体积已经压到三成。这就是它成为社区默认档的数据基础。
  3. Q4_0 这类老格式明显不如同体积的 K-quant:同是 4-bit,Q4_0 的损失是 Q4_K_M 的三倍。看到没有 K 后缀的老量化格式,跳过。
  4. Q3 到 Q2 之间有一道悬崖:Q3_K_M 掉 1.2%,Q2_K 直接掉 6.5%——不是线性变差,是断崖。
  5. 1-bit 是行为艺术:IQ1_S 的 PPL 是基线的近 10 倍,正确 token 概率掉三分之一。它存在的意义是证明"能加载",不是"能用"。

三、越新的模型越怕量化

同一份官方文档里还有一组容易被忽略的对照:同样的量化档,Llama 3 的损失显著大于 Llama 2。Q2_K 下 Llama 2 7B 的 PPL 只涨到基线的 1.11 倍,Llama 3 8B 却涨到 1.56 倍;KLD 也全面更差。

主流解释是:训练数据量越大、参数利用越充分的模型,权重里的"冗余"越少,粗暴压缩掉的信息就越伤。这对今天的实践有直接含义——Qwen3.8、Llama 4 这代吃满训练算力的模型,低位量化(Q3 以下)的实际损失会比老模型的口碑更大,别拿两年前"Q2 也能凑合"的经验套新模型。

四、怎么选:一条可操作的决策路径

  1. 先算内存账:模型文件体积 ≈ 参数量 × 每参数字节数(按上表反推:Q4_K_M 约 0.6 字节/参数含开销,Q8_0 约 1.06)。在此之上还要留 KV cache 和系统内存。
  2. 装得下的前提下,选能装下的最高档。顺序:Q6_K > Q5_K_M > Q4_K_M > IQ4_XS > Q3_K_M > 放弃换小模型。
  3. 同档位优先选带 imatrix 的版本(发布页写 imatrix 或 IQ 开头)。上表里 Q4_K_M 有无 imatrix 的差距约 35%(ΔPPL 0.151 vs 0.175),白捡的优化。
  4. Q3 以下先考虑换小一号的模型,而不是继续压大模型。Q2 的 27B 通常打不过 Q5 的 14B——前者概率分布已经严重变形,后者基本保持完好。(这是社区共识性的经验判断,具体到某对模型请以实测为准。)
  5. 发布者选熟面孔:bartowski、unsloth、mlx-community 等高频发布者的量化流程成熟、通常带 imatrix,模型卡里会写清校准细节。

实战参考:24GB Mac mini 的真实内存账

理论之外,我们在一台 24GB 统一内存的 Mac mini M4 上把 Qwen3.8-27B 的 4-bit 量化完整跑通并三轮复测过:模型本体约 15GB,加上 2B 草稿模型和 KV cache 后峰值 19.4GB,速度 6.5 tok/s(纯自回归)到 11.7-12.2 tok/s(投机解码)。完整部署命令和内存明细见:

五、常见问题 FAQ

4-bit(int4/Q4)量化效果到底怎么样?

以 Q4_K_M 为准:PPL 增约 2-3%,正确 token 概率掉约 0.4-0.6%,日常使用基本无感;对数学证明、长链推理这类对概率分布敏感的任务,差距会被放大一些。结论:消费级硬件的默认选择,放心用

Q4 和 Q8 的效果差多少?

数据上:ΔPPL 0.15 vs 0.003,Mean Δp -0.4% vs -0.02%——Q8 确实更好,但两者都在"对话中难以察觉"的区间。差距主要体现在极限任务的错误率上。内存够就上 Q8/Q6,不够时降到 Q4_K_M 的心理负担可以放下。

Q3 的损失能接受吗?

Q3_K_M(带 imatrix)PPL 增约 8%、正确 token 概率掉 1.2%——能用,但"聪明劲儿"的下降开始可感,代码和数学任务错误率上升。把它当"内存不够时的过渡方案",并优先考虑换小一号模型的更高量化档。

IQ4_XS 和 Q4_K_M 选哪个?

Q4_K_M 质量略好(ΔPPL 0.151 vs 0.228),IQ4_XS 体积略小(4.14 vs 4.58 GiB)。内存卡在临界点选 IQ4_XS,否则 Q4_K_M。注意 IQ 系列在部分老硬件/后端上解码开销略高,Apple Silicon 上两者都好用。

FP8 和 INT4/NVFP4 是怎么回事?跟 GGUF 是一类东西吗?

不是一类。GGUF 的 Q/IQ 档是 llama.cpp 生态的权重压缩格式,主打 CPU/Apple Silicon;FP8、NVFP4 是 NVIDIA 数据中心/Blackwell 硬件原生支持的浮点低精度格式,主要配合 vLLM/TensorRT-LLM 在服务器 GPU 上做高吞吐推理。浮点格式对激活值分布更友好,但依赖特定硬件;两边的"4-bit"不能直接拿 PPL 表互比,选择跟着你的硬件走。

1.58-bit(三值化)模型是真的吗?

BitNet 一类的 1.58-bit 是从头训练的三值权重架构,不是把现成模型事后压到 1.58 bit——这两件事经常被混为一谈。对现成模型做 1-2 bit 的事后量化,参考上表 IQ1/IQ2 的数据:IQ2_M 勉强能看,IQ1_S 已经崩坏。社区里的"动态 1.58-bit"大模型 GGUF 属于混合精度方案(关键层保高位),效果好于纯 IQ1,但仍显著弱于 Q4。

量化会影响速度吗?

会,而且通常是变快:本地推理是内存带宽瓶颈型任务,权重越小、每 token 要搬的数据越少。这也是 24GB Mac 上 4-bit 27B 能跑到接近阅读速度的原因之一。例外是部分 IQ 档的解码计算开销略高,在算力弱的老 CPU 上可能抵消带宽收益。

参考资料

相关文章

24GB Mac mini 能跑多大的本地大模型?内存账、实测速度与提速方案汇总

一台 24GB 统一内存的 Mac mini 到底能跑什么模型?答案是:27B 的 4-bit 量化就是天花板,且我们真的把 Qwen3.8-27B 在 M4 丐版上完整跑通了——峰值内存 19.4GB,投机解码后 11.7-12.2 tok/s。本文汇总这台机器上的全部实测:各参数量级的内存账、速度预期、三条提速路线的真实效果(DFlash 2 / 原生 MTP / MLX vs llama.cpp),以及量化档位怎么选。

qwendflash+6
ai-tutorials2026年9月4日4 min
5
同一台 24G Mac mini、同一个 DFlash 2:MLX 上加速 1.9x,llama.cpp 上减速 50% 还 OOM

同一台 24G Mac mini、同一个 DFlash 2:MLX 上加速 1.9x,llama.cpp 上减速 50% 还 OOM

投机解码三部曲第三篇。llama.cpp 合并了 DFlash 2 支持、官方还发了配套 GGUF 草稿模型,理论上这是比外挂 MLX 更顺手的路线——实测结果是全配置净减速:官方推荐的 n-max 7 在 24G 机器上可复现 Metal OOM,能跑起来的 n-max 3 散文掉一半(6.0 → 3.0 tok/s),代码接受率高达 83.8% 也还亏 23%。同一个算法、同一台机器,MLX 栈是 1.8–1.9x。用真实数据算清一笔账:这条栈上每个投机步实测均摊 0.77 秒,就算接受率 100% 也追不回本。

qwendflash+6
ai-tutorials2026年9月3日7 min
20
24G Mac mini 实测 Qwen3.8 原生 MTP:内存省了 3GB,速度反而降了 24%——与 DFlash 2 同机对照

24G Mac mini 实测 Qwen3.8 原生 MTP:内存省了 3GB,速度反而降了 24%——与 DFlash 2 同机对照

上一篇 DFlash 2 实测结尾预告过的路线:Qwen3.8 自带训练好的 MTP 多 token 预测头,llama.cpp 已支持直接挂载,不需要额外 2B 草稿模型。这次在同一台 24G Mac mini M4 上把它跑通并与 DFlash 2 正面对照:内存确实更省(峰值 16.0GB vs 19.4GB),但速度是净减速——散文 6.0 → 4.5 tok/s(-24%),代码也没赚。同机 DFlash 2 是 1.8–1.9x 加速。差距不在草稿质量(接受率 59–85% 很健康),在 Metal 后端:batch 8 解码摊薄实测只有 1.13x,验证 3 行草稿的代价≈3 次完整前向,草稿再准也赚不回来。

qwenapple-silicon+6
ai-tutorials2026年9月2日8 min
41
24G Mac mini 跑 Qwen3.8-27B + DFlash 2:实测 1.8x,以及为什么到不了官方的 3x

24G Mac mini 跑 Qwen3.8-27B + DFlash 2:实测 1.8x,以及为什么到不了官方的 3x

DFlash 2 发布一周后,我在一台 24G 的 Mac mini M4 上把 Qwen3.8-27B 加投机解码完整跑通:4-bit 量化下从 6.5 tok/s 提到 11.7–12.2 tok/s,稳定 1.8–1.9 倍。这篇记录完整部署命令、三轮对照实测数据、24GB 的内存账,以及官方 2.7–3.4x 数字在消费级 Mac 上打折的三个具体原因。8-29 复测追加 block-size 与草稿精度扫描:block-size 8 崩到 1.11x 坐实官方悬崖警告,block-size 3 反超默认值,8-bit 草稿不如 4-bit。

qwendflash+6
ai-tutorials2026年8月23日7 min
425