一层一层量化,64 分钟搞定 1220 亿参数:华为开源 MACaQ,把 W4A4 变成“流水线作业”
W4A4(权重和激活都压到 4 比特)一直是推理加速的“圣杯”:显存和算力同时减半以上,但精度却很容易崩。过去的方法要么需要昂贵的优化,要么要把变换矩阵在层与层之间“传播”,与具体模型架构深度绑定。11 月 12 日,华为 Cloud & AI 实验室(huawei-csl)在 GitHub 以 Apache 2.0 开源了 MACaQ(Model Agnostic Calibrated Quantization),配套论文 arXiv:2611.10649 已于 11 月 7 日提交。它的卖点很直接:每个线性层独立处理,122B 模型 64 分钟、32.5GB 显存即可量化完成。
一、核心思路:每个线性层都是“独立个体”
MACaQ 是一种 MXFP4 格式的 W4A4 训练后量化(PTQ)方法。对每个线性层,它做两件事:给激活施加逐通道缩放(per-channel scale)和分块 Hadamard 变换(block-Hadamard),再把对应的逆变换吸收进权重。
关键区别在于:这些激活变换在推理时在线执行,而不是像 QuaRot、SpinQuant 一类方法那样把变换融合进相邻层、跨层传播。代价是推理多了一点计算;好处是层与层之间没有依赖,不需要理解模型结构。
二、Flip-Refinement:在 FP4 格点上“挪一格”
量化的基线是 round-to-nearest(四舍五入到最近格点),但它忽略了各权重对输出误差的不同影响。MACaQ 提出 Flip-Refinement:一种基于 Hessian 的坐标下降,贪心地把单个 FP4 编码移动到相邻的可表示值上,只要这一步能降低层输出误差就接受。
直观理解:FP4 只有极少数格点,“四舍五入”的最优解未必是整体误差最小的解;沿着 Hessian 指示的方向挪一格,往往能换来更低的误差。
三、流式实现:32.5GB 显存量化 122B 模型
层间无依赖带来一个工程红利:量化过程可以流式进行,任意时刻只需把一层放进 GPU。论文摘要称,借此在 64 分钟内、仅用 32.5GB GPU 显存量化了一个 122B 参数模型。对只有单张消费级或中端卡的团队,这意味着“自己量化大模型”第一次变得现实。
四、数字与覆盖面
据论文摘要与 GitHub README:
- 在线激活变换的开销:Qwen3-32B 上用 vLLM,相对纯 MXFP4 端到端仅增加 2.3%;
- 精度与效率:困惑度低于 DuQuant++ 和 MR-GPTQ,在 Llama-3-8B 上以 11 倍更短的量化时间达到它们的最佳困惑度;
- README 报告 Qwen3.8-27B 在 W4A4 下相对 BF16 预填充加速 2.33 倍、解码加速 2.58 倍,困惑度从 2.8463 升至 2.8994;
- 输出覆盖 llama.cpp(2/3/4 比特 GGUF)、vLLM、Diffusers(图像/视频/音频生成)与 PyTorch(语音),并附带预量化的 Qwen3.6-35B-A3B GGUF;Ascend CANN 内核支持通过 PR 推进中。
对开发者意味着什么
- 量化门槛降低:流式、逐层的设计让单卡量化超大模型变得可行,迭代周期从“过夜”缩短到“一小时”。
- 适合快速适配新架构:因为不依赖跨层变换传播,新模型(含 MoE、扩散模型)不必等待量化方法逐一适配。
- 硬件要求不能忽视:MXFP4 的 W4A4 加速依赖硬件对 FP4 的原生支持;README 的加速比来自特定环境,换到你的卡上未必复现。
- 审慎看待数据:以上速度、困惑度与对比结论均为作者自测,且论文目前是 arXiv 预印本、尚未经同行评审(个别媒体称“已评审”并不准确)。困惑度也不等于下游任务质量,上线前请在自己的评测集(代码、长上下文、工具调用)上验证。
- 在线变换有成本:2.3% 是特定模型和框架下的测量值,在小 batch、低延迟场景中开销占比可能不同。
结语
MACaQ 的价值不在于某个单项指标,而在于“把量化当作与架构无关的、逐层可并行的流水线”这一设计取向。如果社区复现能证实其精度与速度,W4A4 有望从少数团队的定制工程,变成人人可用的标准工具。值得关注的下一步,是第三方在更多模型和下游任务上的独立评测。
- 点赞
- 收藏
- 关注作者
评论(0)