智猩猩AI整理

编辑: 没方

混合大语言模型同时使用 Softmax Attention 与 Gated DeltaNet(GDN)等线性注意力结构。 其中,GDN 层通过固定大小的循环状态,对此前上下文进行压缩表征。

考察 Qwen3.8-27B 公开的量化方案,GDN 基本都保留在 8-bit 或 16-bit,尤其是控制遗忘和写入的门控投影,更是尽量不做低比特量化。这是因为 GDN 的状态会一路传过很长的上下文,如果每一步都带进一点量化误差,大家自然会担心这些误差越积越多。

针对这一问题,minima-ai团队将 Qwen3.8-27B 主干中的全部 496 个线性层统一量化为 NVFP4 W4A4,连 GDN 的 a、b 门控投影也不例外。

结果五项任务平均分相比 BF16 仅下降 0.52 分,权重显存从 50.13 GiB 降至 17.53 GiB,32K 输入的 TTFT 从 6.90 秒缩短到 4.03 秒。更关键的是,对 32K token 序列的机制实验发现,GDN 的循环状态误差并没有一路累积

研究团队量化后的模型权重已开源。

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

01

Gated DeltaNet 基础

Qwen3.8‑27B 为混合架构,64 层中 48 层是 GDN 层,仅 16 层为标准 Softmax 注意力。GDN 会对残差流进行多组线性投影,包括 qkv 投影、输出门 z,以及两个逐头标量门控投影 a、b,最终再通过 out_proj 输出。

门控在对数空间参数化:

打开网易新闻 查看精彩图片

循环状态更新遵循 Gated Delta 规则,key、query 经过 L2 归一化:

其中,αₜ 为遗忘门, βₜ 控制写入强度;该算子不会直接累加 vₜ,而是修正状态对当前 key 的预测值。输出经过门控与输出投影传回残差流。

02

NVFP4 量化格式

NVFP4 采用 E2M1 存储 4bit 数值,每 16 个元素设置一个 E4M3 块缩放因子,张量还附带全局 FP32 缩放系数。W4A4 代表权重、激活全部做该粒度量化,可利用硬件原生 4bit 张量核计算。块缩放将异常值的误差限制在所属 16 元素块内,不会污染整个张量。

03

Minima 模型构建

使用llm‑compressor工具,除 embedding、lm_head、卷积、归一化层以外,将 Qwen3.8‑27B 全部 496 个线性层统一 NVFP4 W4A4 量化,覆盖 GDN 全部投影层。标定集使用 128 条样本,每条样本长度 32K token。

针对模块独立标定与 vLLM 融合 GEMM 的全局缩放不匹配问题做修复:GDN 会把多个线性层融合为单个矩阵乘法,如果融合时直接采用组内最大的全局尺度,却没有同步重标定块级尺度,就会造成权重缩放失真,影响门控计算。

研究团队将融合组内张量统一到同一个全局缩放,把缩放比例折叠进块级 E4M3 缩放因子,完成 checkpoint 侧修复。

Minima+scales 变体额外为 16 层注意力层启用静态标定 FP8 KV‑Cache 缩放系数,张量计算、权重量化逻辑不变。

04

对比实验与结果分析

全部模型使用单张 96 GB RTX PRO 6000、vLLM 0.27.1、TP=1、0.85 的 GPU 利用率配置,生成长度上限为 32K。

除 KV 精度消融外,统一采用 FP8 KV 缓存,并从多模态检查点提取纯文本模型,以减少服务路径差异。

基线包括未量化的 BF16,以及 Unsloth Dynamic v3、RadixArk ModelOpt 两个社区 NVFP4 检查点。后两者主要在 MLP 上使用 NVFP4,GDN 和全注意力投影总体保留 FP8,a、b 门控投影保留 BF16。更细的区别是:Unsloth 的最后八层 MLP 与 lm_head 使用 FP8;RadixArk 的 MLP 与 lm_head 使用 NVFP4。

主要实验结果如表所示:

打开网易新闻 查看精彩图片

在任务精度上,Minima 把全部 GDN 层量化到 4bit,AIME’25 得分与 BF16 完全持平。

模型的生成行为也基本没有发生变化。Minima 并没有通过“思考更久”来弥补量化带来的损失:在 AIME 上,其平均生成长度为 14,531 tokens,而 BF16 为 14,532 tokens,几乎完全一致。同时,Minima 触及 32K 上下文上限的次数还略少一些。

Minima 权重显存仅 17.53 GiB,相比 BF16 的 50.13 GiB 缩小约 2.9 倍。相比两个社区版 NVFP4 模型,体积还要小 7%–13%。

在单卡上,Minima 可以提供最大的 KV Cache 容量,可缓存约 181 万 tokens。

同时它的 Prefill 速度也是最快的,在 32K 输入下,首 Token 延迟(TTFT)从 6.90 秒降低到 4.03 秒。

在 8K 输入下,其 Prompt 吞吐量相比 Unsloth 和 RadixArk 高出 14%–19%,原因之一是后二者的 GDN/Attention GEMM 仍然保持 FP8。

困惑度(PPL)则更真实地反映了量化后残留的精度损失。

无论在短上下文还是长上下文下,结果都是 Unsloth < RadixArk < Minima。这符合预期,因为两个社区方案量化的模型范围更小,保留了更多高精度权重,但代价是额外占用 1.3–2.7 GiB 的权重存储空间。

Minima 相比 BF16 的 PPL 差距,在 4K 上下文时为 +0.72,到了 32K 上下文时反而缩小到 +0.49。

更重要的是,这种 PPL 差异并没有转化成下游任务分数的大幅下降。

这与社区量化方案重点防范的“误差随着上下文长度不断累积”恰恰相反:Minima 虽然量化得更激进、PPL 略有损失,但至少在论文实测的 32K 序列中,循环状态误差并没有随着上下文增长持续放大。

关注+星标,获取AI前沿进展与开源一线动态