JouleBeat · DeepGraph — 案例 001

量化的真实代价是任务依赖的
——FP16 vs INT4-AWQ 试点实验

2026-07-26 · NVIDIA A100-SXM4-40GB 实跑 · 源起一位提交者的研究方向(已按提交者隐私脱敏) · 全部物料公开可复现

一句话结果:预注册的两个假设,一个被推翻、一个反向成立——我们照实报。大 batch 离线推理下 INT4-AWQ 几乎没有吞吐收益;量化的质量损失不在人们通常担心的数学推理上,而集中在指令跟随/输出格式保真上。

预注册假设(跑之前写死)

  1. H1:INT4-AWQ 相对 FP16 有显著吞吐收益。
  2. H2:量化的质量损失是任务依赖的,且数学推理(GSM8K)损失大于抽取式问答(SQuAD)。

设置:Qwen2.5-7B-Instruct(FP16)vs Qwen2.5-7B-Instruct-AWQ(INT4);GSM8K test 与 SQuAD v1.1 dev 各随机抽 200 题(固定种子,两配置同一子集);greedy 解码、同 prompt、同 max_tokens;vLLM 0.11,离线批量推理。统计:逐题配对 delta,bootstrap 10,000 次 95% CI。

结果

GSM8K(数学推理,精确匹配)SQuAD(抽取问答,F1)
FP160.8950.742
INT4-AWQ0.8850.652
质量 delta(AWQ−FP16)−0.010,CI95 [−0.050, +0.030] 不显著−0.091,CI95 [−0.128, −0.055] 显著
吞吐 speedup1.05×(4802 → 5049 tok/s)1.01×

交互效应(deltaGSM8K − deltaSQuAD)= +0.081,CI95 [+0.026, +0.136]:任务依赖性成立,但方向与 H2 预测相反——受损的不是数学,是抽取。

机制检查:掉的 9 分是什么

逐题查看 AWQ 掉分最狠的样本后,降幅的大头不是"找不到答案",而是指令跟随退化:AWQ 版频繁无视"只输出片段"的约束,把包含正确答案的完整句子吐出来,被 F1 机械性惩罚。输出中位长度:FP16 4 词 → AWQ 6.5 词。

题目 gold: "2006"
FP16 输出: "2006"
AWQ 输出: "In 2006, a toxic waste spill off the coast of Côte d'Ivoire, from a European ship, prompte…"

三个可交付发现

  1. H1 在本 regime 被推翻:batch=200 离线吞吐下 weight-only INT4 几乎无加速(1.01–1.05×)。它的收益在 memory-bound 的小 batch 解码;大 batch 变 compute-bound 后消失。推理配置的收益取决于负载状态——任何需要在运行时选择推理配置的系统(agent、serving 调度器)都必须感知这一点。
  2. 量化的真实代价在指令/格式保真度,而非推理能力(至少 7B+AWQ 这一档)。对需要下游解析模型输出的管线,这比精度掉点更致命。一个直接的工程推论:检测到量化后端时,应收紧输出约束(grammar/JSON mode)。
  3. "量化伤数学"的常见直觉在此设置下不成立:GSM8K 精度 INT4 下 −1pt,统计上不显著。

第二轮 · 2026-07-26 当日追加

第二轮:把借来的解释换成实测,把机制说法收窄

第一轮留下三个未答的问题:掉的分能不能靠提示词救回来?"损伤在格式不在内容"是真的吗?吞吐收益的拐点到底在哪?第二轮各测了一遍,同一批 200 道 SQuAD 题、四个提示条件、两个模型、逐题配对。结论是一半支持、一半推翻第一轮的解读。

① 吞吐拐点:实测出来了(预注册 H5 成立)

并发(同时请求数)141664256
INT4-AWQ 相对 FP16 的加速2.11×1.97×1.84×1.29×0.91×

单调下降,并在 64 与 256 之间跌破 1.0——并发足够高时,量化模型比全精度更慢。这解释了第一轮为什么测不到加速:它跑在 batch=200,正落在收益消失的区域。第一轮里"收益只在 memory-bound 小 batch"这句是从文献借来的,现在它是这组数据自己说的。

② 那 9 分能救回来(预注册 H4 成立)

提示条件FP16 F1INT4-AWQ F1差距(AWQ−FP16)
基线提示0.6890.578−0.111,CI95 [−0.149, −0.076] 显著
严格提示0.8840.853−0.031,CI95 [−0.055, −0.007] 显著
2-shot 示例0.8730.880+0.006,CI95 [−0.011, +0.025] 不显著
2-shot + 长度上限0.8740.880+0.006,CI95 [−0.013, +0.026] 不显著

两个示例就把量化带来的质量差距完全抹平。也就是说:第一轮看到的"量化掉 9 分",大部分是提示词不够好暴露出来的,不是量化本身抹掉了能力。这一条削弱了"必须靠切换推理配置来保住质量"的说法——先把提示写好更便宜。

③ 机制:主要是格式,但不是"纯格式"(预注册 H3 未成立)

我们把三件事分开测:F1、内容正确率(标准答案是否出现在输出里,不惩罚啰嗦)、格式合规率(输出是否为上下文的短片段)。基线条件下,格式合规掉 15 个点、F1 掉 11 个点,而内容正确率只掉 3 个点(0.975 → 0.945)——小,但统计上显著

所以第一轮"降幅的大头是指令跟随退化"成立,但当时暗示的"内容没有损失"不成立,这句话我们收窄:主要是格式,同时存在小而真实的内容损失。

这一轮对那个研究命题意味着什么:"运行时选择推理配置"的理由从"任务类型"挪到了"负载区间"。按任务切配置的必要性变弱了(提示词更便宜就能解决质量);按并发切配置的必要性变强了,而且有了数字——同一对模型,并发从 1 到 256,相对快慢翻转了 2.3 倍。

诚实性边界(挑剔审稿人视角,我们自己先说)

全部物料(可复现)

第一轮
run_pilot.py — 实验与统计代码(预注册假设写在文件头) results_fp16.json — FP16 逐题原始输出(200+200 题,含每题模型原文) results_awq.json — INT4-AWQ 逐题原始输出 stats_report.json — 质量 delta / CI / 吞吐 / 交互效应
第二轮
run_round2.py — 缓解阶梯 + 内容/格式分离 + 并发扫描 r2_fp16.json — FP16 四条件逐题结果(含每题 F1 / 内容正确 / 格式合规 / 词数) r2_awq.json — INT4-AWQ 四条件逐题结果 stats_round2.json — 三指标 delta / CI / 吞吐曲线 / 三个假设的裁定

复现:任意带 A100(或同级)的机器,pip install vllm==0.11.0 transformers==4.56.2,依次运行文件头注释里的三条命令。逐题结果不删不挑,负结果照实报——这是本引擎的设计行为,不是姿态。


English summary

A preregistered pilot on one A100: Qwen2.5-7B-Instruct FP16 vs INT4-AWQ, 200 items each from GSM8K and SQuAD v1.1, greedy decoding, per-item paired deltas with 10k-resample bootstrap CIs. Both hypotheses surprised us, and we report as-is: (1) weight-only INT4 gave no meaningful throughput gain at batch-200 offline inference (1.01–1.05×) — its benefit lives in memory-bound small-batch decoding; (2) quality damage was task-dependent but in the opposite direction from our prediction — math reasoning was statistically unharmed (−1pt, n.s.) while extraction dropped 9 F1 points (significant), and per-item inspection shows the drop is mostly instruction-following degradation (the quantized model ignores "output the span only" and answers in full sentences). For agent pipelines that parse model output, format fidelity loss is more dangerous than accuracy loss. All code, per-item raw outputs and stats are published above.

你也有想验证的方向?一句话提交,免费层直接跑:证据地图、查新 idea、实验方案、初步信号。

提交你的研究方向 →