免费POC, 零成本试错
AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


Qwen3-Next:用混合注意力和高稀疏 MoE 把训练与推理成本打下来

发布日期:2025-09-12 08:33:43 浏览次数: 1551
作者:01麻瓜社

微信搜一搜,关注“01麻瓜社”

推荐语

通义千问最新模型Qwen3-Next通过混合注意力与高稀疏MoE架构,在80B参数规模下仅激活3B参数,实现长上下文推理与性价比双突破。

核心内容:
1. 混合注意力架构设计:Gated DeltaNet与标准注意力的3:1黄金配比
2. 极致稀疏MoE技术:80B总参仅激活3.7%参数的实现路径
3. 训练稳定性三大创新:输出门控、归一化路由与权重约束方案

杨芳贤
53AI创始人/腾讯云(TVP)最具价值专家


通义千问发布最新模型结构 Qwen3-Next。它在架构上采用“Gated DeltaNet + Gated Attention”的混合注意力,并把 MoE 稀疏度拉高到只激活约 3.7% 的参数,同时做了多项训练稳定性优化,还在主干中原生引入 MTP(Multi-Token Prediction)。

基于这套设计,80B 总参数、仅激活约 3B 的 Qwen3-Next-80B-A3B 系列在长上下文推理吞吐和整体性价比上有明显优势,并在 Instruct 和 Thinking 两条产品线上,拿到接近甚至对齐 235B 旗舰的效果。

Qwen3-Next

为什么要做 Qwen3-Next

从趋势看,两个方向很关键:

  • Context Length Scaling - 让模型处理更长的上下文
  • Total Parameter Scaling - 提升总参数规模但保持激活稀疏

Qwen3-Next 就是围绕这两点做系统性优化:混合注意力提升长序列效率和能力,高稀疏 MoE 控制激活开销,再加上稳定性改造和 MTP,加速训练和推理同时兼顾效果。

核心架构设计

混合注意力:Gated DeltaNet + Gated Attention

我的理解是,单一注意力形态都有短板:

  • 线性注意力对长序列友好,但召回能力往往不够
  • 标准注意力效果强,但在长上下文上成本很高

Qwen 团队最后选了混合方案:75% 的层用 Gated DeltaNet,25% 的层保留标准注意力。实验显示,这个 3:1 的比例在效率与效果上更稳。

在保留的标准注意力里,他们还做了几处增强:

  • 输出门控(output gating)缓解注意力的低秩与“attention sink”等现象
  • 把单头维度从 128 提到 256
  • RoPE 只加在注意力头前 25% 的位置维度,改善长度外推

换个角度思考,这套组合是在不同长度区间里让两类机制各展所长,再用门控把数值行为压稳。

极致稀疏 MoE:80B 总参,约 3B 激活

Qwen3-Next 的 MoE 更“稀”:

  • 总参数约 80B,每次只激活约 3B,激活占比约 3.7%
  • 采用全局负载均衡,固定激活专家数时,增加专家总参数能持续降低训练 loss
  • 架构从 Qwen3 的 128 总专家 + 8 路由专家,扩到 512 总专家 + 10 路由专家 + 1 共享专家

从实际训练来看,这样的配置在效果不掉的前提下,把资源利用率拉满。

训练稳定性的几处关键改动

为了解决注意力池化异常、极大激活等问题,他们做了三点:

  • 延续输出门控,直接在注意力输出处做稳定化
  • 把 QK-Norm 换成 Zero-Centered RMSNorm,并对 norm weight 加 weight decay,避免权重无界
  • 初始化时对 MoE router 做归一化,让每个 expert 在早期都有公平的被选机会

这些细节看着琐碎,但对大规模、长上下文训练是否稳定,影响很大。

Multi-Token Prediction(MTP)

Qwen3-Next 把 MTP 原生集成进主干:

  • 既能作为高接受率的草稿生成模块,提升 speculative decoding 的效率
  • 也能增强主干本身的综合性能
  • 训练阶段做了多步一致性,让推理时的多步 MTP 更稳、更实用

简单说,就是在一个模型里同时兼顾了“快”和“好”。

预训练与效率表现

训练数据与成本

他们从 Qwen3 的 36T 语料里做了 15T 均匀采样来训 Qwen3-Next。整体消耗上:

  • 相比 Qwen3-30A-3B,GPU Hours 降到其 80% 以内
  • 相比 Qwen3-32B,只用约 9.3% 的 GPU 资源,却拿到更优效果

这个对想要低成本拿高性能的团队很有吸引力。

推理吞吐:长上下文优势明显

得益于混合注意力,Qwen3-Next-80B-A3B 在长上下文推理的吞吐提升很大:

  • 预填充阶段,在 4k 上下文时接近 7 倍的吞吐
  • 当上下文超过 32k,预填充和解码都能达到 10 倍以上的吞吐优势
  • 在 4k 上下文的解码阶段,吞吐也接近 4 倍

如果你的任务经常需要读很长的文档或日志,这个改动的价值非常直观。

Base 模型表现

Qwen3-Next-80B-A3B-Base 激活的非嵌入参数只有同规模 dense 的十分之一上下,就在多数基准上超过了 Qwen3-32B-Base,同时显著优于 Qwen3-30B-A3B。这个性价比已经很能打了。

后训练与评测结果

Instruct

  • 明显优于 Qwen3-30B-A3B-Instruct-2507 和 Qwen3-32B-Non-thinking
  • 接近 Qwen3-235B-A22B-Instruct-2507
  • 在 RULER 的各长度区间表现都更稳,256k 范围内甚至超越了层数更多的 235B Instruct

这基本说明混合注意力在长文本任务上站住了脚。

Thinking

  • 优于 Qwen3-30B-A3B-Thinking-2507 和 Qwen3-32B-Thinking
  • 超过闭源的 Gemini-2.5-Flash-Thinking
  • 在部分指标上逼近 Qwen3-235B-A22B-Thinking-2507

如果你关心复杂推理,这条线的进步值得关注。

上手使用 Qwen3-Next

下面的示例基于 Qwen3-Next-80B-A3B-Instruct。Thinking 版本可参考 Hugging Face 模型页: https://huggingface.co/Qwen/Qwen3-Next-80B-A3B-Thinking

使用 Hugging Face Transformers

Transformers 主分支已支持 Qwen3-Next。建议安装主分支版本。

  • 如果用旧版本,可能遇到 KeyError: 'qwen3_next'
  • MTP 目前在 Transformers 里还未普遍支持
  • 若追求吞吐,建议配合 SGLang 或 vLLM
  • 根据环境安装 flash-linear-attention 和 causal-conv1d,有机会进一步提速

示例代码(对话生成):

from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "Qwen/Qwen3-Next-80B-A3B-Instruct"tokenizer = AutoTokenizer.from_pretrained(model_name)model = AutoModelForCausalLM.from_pretrained(    model_name,    dtype="auto",    device_map="auto",)
messages = [{"role""user""content""Give me a short introduction to large language model."}]text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)inputs = tokenizer([text], return_tensors="pt").to(model.device)
outputs = model.generate(**inputs, max_new_tokens=16384)new_tokens = outputs[0][len(inputs.input_ids[0]):]print(tokenizer.decode(new_tokens, skip_special_tokens=True))

用 SGLang 部署

SGLang 主分支已支持。示例命令:

  • 启动 4 卡张量并行,默认 256k 上下文,OpenAI 兼容 API 位于 http://localhost:30000/v1
  • 需要设置环境变量 SGLANG_ALLOW_OVERWRITE_LONGER_CONTEXT_LEN=1
  • 可选开启 MTP 加速
# 基础SGLANG_ALLOW_OVERWRITE_LONGER_CONTEXT_LEN=1 \python -m sglang.launch_server \  --model-path Qwen/Qwen3-Next-80B-A3B-Instruct \  --port 30000 --tp-size 4 \  --context-length 262144 \  --mem-fraction-static 0.8
# 启用 MTPSGLANG_ALLOW_OVERWRITE_LONGER_CONTEXT_LEN=1 \python -m sglang.launch_server \  --model-path Qwen/Qwen3-Next-80B-A3B-Instruct \  --port 30000 --tp-size 4 \  --context-length 262144 \  --mem-fraction-static 0.8 \  --speculative-algo NEXTN \  --speculative-num-steps 3 \  --speculative-eagle-topk 1 \  --speculative-num-draft-tokens 4

小贴士:

  • 默认上下文长度为 256k。如果启动失败,可先把 context-length 降到 32768 试试

用 vLLM 部署

vLLM 主分支已支持。示例命令:

  • 需要设置环境变量 VLLM_ALLOW_LONG_MAX_MODEL_LEN=1
  • OpenAI 兼容 API 位于 http://localhost:8000/v1
  • 可选开启 MTP
# 基础VLLM_ALLOW_LONG_MAX_MODEL_LEN=1 \vllm serve Qwen/Qwen3-Next-80B-A3B-Instruct \  --port 8000 \  --tensor-parallel-size 4 \  --max-model-len 262144
# 启用 MTPVLLM_ALLOW_LONG_MAX_MODEL_LEN=1 \vllm serve Qwen/Qwen3-Next-80B-A3B-Instruct \  --port 8000 \  --tensor-parallel-size 4 \  --max-model-len 262144 \  --speculative-config '{"method":"qwen3_next_mtp","num_speculative_tokens":2}'

同样地,如果服务起不来,可以把 max-model-len 先降到 32768 观察资源占用。

Agent 场景

Qwen3 在工具调用上表现不错。结合 Qwen-Agent,可以更轻松地挂接 MCP 工具或内置工具,降低集成成本。大致流程:

  • 配置一个 OpenAI 兼容的 API 端点,比如前面用 vLLM 启动的服务
  • 在 Qwen-Agent 里指定模型名、api_base 和 api_key
  • 通过 MCP 配置或内置工具,挂接如时间、网络抓取、代码解释器等能力

这部分的官方示例代码已经把关键参数写全,直接替换成你的服务地址就能跑。

处理超长上下文

Qwen3-Next 原生支持 262,144 token 的上下文。如果输入加输出要远超这个长度,我更推荐用 YaRN 做 RoPE 缩放:

  • 你可以直接在模型 config.json 加 rope_scaling
  • 或者在 vLLM、SGLang 的命令行参数里传 rope_scaling 配置
  • 目前主流框架实现的是“静态 YaRN”,缩放因子不随输入变化,可能会影响短文本性能
  • 因此只在确有长上下文需求时再开启,并把 factor 调整到合适值
    • 比如典型上下文在 524,288 token 左右,就用 factor=2.0

示例配置(以 vLLM 为例):

VLLM_ALLOW_LONG_MAX_MODEL_LEN=1 \vllm serve ... \  --rope-scaling '{"rope_type":"yarn","factor":4.0,"original_max_position_embeddings":262144}' \  --max-model-len 1010000

53AI,企业落地大模型首选服务商

产品:场景落地咨询+大模型应用平台+行业解决方案

承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

添加专属顾问

回到顶部

加载中...

扫码咨询