这条测试直接回答了一个本地部署党常纠结的问题:显存不够时,先砍 KV 缓存精度还是先砍模型权重精度。hopbel 用 Qwen3.6 27B 在 wikitext-2 上跑 16k 上下文,拿 Q5_K_M 权重当基准,用近似 KLD 分数衡量输出分布偏移。结果很直观:权重从 Q5_K_M 降到 Q4_K_XL(KV 缓存保持 f16),KLD 涨到 0.026;而权重只降到 Q5_K_S 但 KV 缓存压到 q4_0,KLD 才 0.016。也就是说,权重降一档带来的输出变化,比 KV 缓存从 f16 压到 4-bit 还大六成。
不过得打几个折。第一,测试只用了 wikitext-2 这一个数据集,测的是语言建模困惑度层面的分布偏移,不代表长文本推理、多轮对话或代码生成场景下的实际体验。第二,KLD 是近似值,正文没披露具体近似方法,分数本身只能看相对大小,不能当绝对质量指标。第三,只测了 Qwen3.6 27B 一个模型,其他架构或更小模型上结论能不能复现还不清楚。
如果手头显存紧张,这条测试给的方向是:优先保模型权重的精度,KV 缓存量化到 4-bit 甚至更低,损失可能比你想象的小。但前提是你的使用场景和测试条件接近——短上下文、语言建模类任务。长上下文或多轮对话下 KV 缓存精度的影响,这条测试没覆盖到。