[控场AI]
概念

Q4_K_M

GGUF 格式中的一种混合量化方案,采用 4 位量化,通过 k-quant 分块技术在关键层保留较高精度,以平衡模型大小与输出质量。

核心事实

时间轴 (近 90 天)

10月28日

不同量化类型(如 Q4_K_M、Q8_0)在体积、速度和质量上各有取舍。

待验证50%
10月22日

Q8_0 是 8 位块量化,精度高但压缩率有限;Q4_K_M 在 4 比特量级上通过混合精度平衡体积与质量,是本地部署常用默认档位之一。

待验证50%
10月20日

llama.cpp 的 llama-quantize 工具实现分块量化,命名中的 K 系列(如 Q4_K_M)表示 k-quants 混合量化策略,M 代表 medium 档位。

待验证50%
10月17日

在 is_prime token 处,将 BF16 的残差写入 Q4_K_M 后,该 token 的 KL 从第 6 层后的 0.48 降至第 9 层后的 0.04;反向写入则从约第 12 层重现翻转,说明决定性差异形成于第 6 至 12 层。

待验证50%
10月17日

Q4_K_M 与 BF16 的逐层去噪实验显示,KL 从第 0 层到第 27 层平滑下降,没有单一层承载全部差异。

待验证50%
10月17日

在 is_prime 函数定义处,BF16 版本有 97.9% 概率输出 False,而 Q4_K_M 有 79.1% 概率输出 True。

待验证50%
10月17日

在 Qwen3-0.6B 的 BF16 与 Q4_K_M 对比中,Q4_K_M 在 11.6% 的位置改变了 top-1 token,平均 KL 散度为 0.067,困惑度从 7.83 升至 8.53。

待验证50%
10月17日

关闭 flash attention 时,Q4_K_M 在 4 的倍数 ubatch 大小下输出按位相同,其他大小则不是,说明 llama.cpp 的 CPU 路径并非在所有批大小下批不变。

待验证50%
10月17日

在 12 个块、1282 个评分位置上,Q4_K_M 恢复 BF16 时,注意力消除 0.030(95% CI 0.019–0.041),MLP 消除 0.036(0.024–0.048),配对差异跨越零,两者无法区分;将 Q4_K_M 注入 BF16 时,MLP 增加更多(0.014,0.005 至 0.023)。

待验证50%
10月17日

Q4_K_M量化大约表示每个权重4位,并对异常值采用特定方案,在内存受限的机器上通常是甜点选择。

待验证50%

还有 27 条时间轴事件

全部知识事实 (20)

已验证

GGUF 量化命名中 Q4_K_M 表示 4 位量化、使用 K-Quant 分组量化方法的中等精度(Medium)变体

80%
已验证

Qwen2.5:7B模型Q4量化后文件大小约为4GB

80%
已验证

Q4_K_M中的K代表k-quants方案,M代表中等质量级别,是llama.cpp引入的混合量化策略

75%
已验证

量化是模型的压缩技术,Q4更容易运行,Q8保留更高质量但占用更多内存

65%
待验证

社区经验法则认为Q4_K_M(4-bit中等精度量化)在大多数场景下提供了最佳的性能与体积平衡

60%
待验证

GGUF格式中的Q4_K_M采用分组量化(Group Quantization)策略,每组独立计算缩放因子和零点

60%
待验证

Q4_K_M量化相比FP16的困惑度(Perplexity)损失通常在1%~3%以内

60%
待验证

不同量化类型(如 Q4_K_M、Q8_0)在体积、速度和质量上各有取舍。

50%
待验证

Q8_0 是 8 位块量化,精度高但压缩率有限;Q4_K_M 在 4 比特量级上通过混合精度平衡体积与质量,是本地部署常用默认档位之一。

50%
待验证

llama.cpp 的 llama-quantize 工具实现分块量化,命名中的 K 系列(如 Q4_K_M)表示 k-quants 混合量化策略,M 代表 medium 档位。

50%
待验证

在 12 个块、1282 个评分位置上,Q4_K_M 恢复 BF16 时,注意力消除 0.030(95% CI 0.019–0.041),MLP 消除 0.036(0.024–0.048),配对差异跨越零,两者无法区分;将 Q4_K_M 注入 BF16 时,MLP 增加更多(0.014,0.005 至 0.023)。

50%
待验证

关闭 flash attention 时,Q4_K_M 在 4 的倍数 ubatch 大小下输出按位相同,其他大小则不是,说明 llama.cpp 的 CPU 路径并非在所有批大小下批不变。

50%
待验证

在 is_prime 函数定义处,BF16 版本有 97.9% 概率输出 False,而 Q4_K_M 有 79.1% 概率输出 True。

50%
待验证

在 Qwen3-0.6B 的 BF16 与 Q4_K_M 对比中,Q4_K_M 在 11.6% 的位置改变了 top-1 token,平均 KL 散度为 0.067,困惑度从 7.83 升至 8.53。

50%
待验证

Q4_K_M 与 BF16 的逐层去噪实验显示,KL 从第 0 层到第 27 层平滑下降,没有单一层承载全部差异。

50%
待验证

在 is_prime token 处,将 BF16 的残差写入 Q4_K_M 后,该 token 的 KL 从第 6 层后的 0.48 降至第 9 层后的 0.04;反向写入则从约第 12 层重现翻转,说明决定性差异形成于第 6 至 12 层。

50%
待验证

Q4_K_M量化大约表示每个权重4位,并对异常值采用特定方案,在内存受限的机器上通常是甜点选择。

50%
待验证

W4A16量化指权重以4-bit存储、激活值保持16-bit的混合精度方案,相比Q4_K_M保留更高精度的激活路径,配合marlin等专用CUDA kernel可在NVIDIA显卡上获得更高吞吐,但显存占用更刚性、对kernel支持要求更苛刻。

50%
待验证

Q4_K_M 是 llama.cpp 社区广泛使用的 GGUF 量化格式,权重被压缩到约 4 比特,采用 k-quant 混合量化方案的中等档位,在体积与精度之间取得折中。

50%
待验证

量化版本名称中的字母后缀代表不同量化策略,K系列使用混合精度对关键层保留更高精度,同等体积下通常优于早期均匀量化方案

50%

来源文章