HuggingFace镜像/Qwen3-Next-80B-A3B-Thinking
模型介绍文件和版本分析
下载使用量0

Qwen3-Next-80B-A3B-Thinking

Chat

过去几个月,我们观察到一个日益清晰的趋势:为追求更强大、更具智能体能力的人工智能(AI),模型的总参数量和上下文长度都在不断扩展。 我们很高兴分享在满足这些需求方面的最新进展,核心在于通过创新的模型架构提升扩展效率。 我们将这类下一代基础模型命名为Qwen3-Next。

主要亮点

Qwen3-Next-80B-A3B是Qwen3-Next系列的首款模型,具备以下关键增强特性:

  • 混合注意力机制(Hybrid Attention):将标准注意力替换为门控DeltaNet(Gated DeltaNet) 与门控注意力(Gated Attention) 的组合,为超长上下文长度实现高效的上下文建模。
  • 高稀疏混合专家模型(High-Sparsity Mixture-of-Experts, MoE):在MoE层实现极低的激活比例,大幅降低每token的计算量(FLOPs),同时保留模型容量。
  • 稳定性优化(Stability Optimizations):包含零中心带权重衰减的层归一化(zero-centered and weight-decayed layernorm) 等技术,以及其他用于稳健预训练和后训练的稳定性增强手段。
  • 多token预测(Multi-Token Prediction, MTP):提升预训练模型性能并加速推理过程。

Qwen3-Next-80B-A3B在参数效率和推理速度方面均展现出优异性能:

  • Qwen3-Next-80B-A3B-Base在下游任务上性能超越Qwen3-32B-Base,同时训练总成本降低10%,且在32K以上token的上下文场景中推理吞吐量提升10倍。
  • 借助GSPO,我们解决了混合注意力机制与高稀疏MoE架构在强化学习(RL)训练中带来的稳定性和效率挑战。 Qwen3-Next-80B-A3B-Thinking在复杂推理任务上表现卓越,不仅超越Qwen3-30B-A3B-Thinking-2507和Qwen3-32B-Thinking,还在多项基准测试中优于专有模型Gemini-2.5-Flash-Thinking。

Qwen3-Next-80B-A3B-Thinking Benchmark Comparison

更多详情,请参阅我们的博客文章Qwen3-Next。

模型概述

[!Note] Qwen3-Next-80B-A3B-Thinking 仅支持思考模式。 为强制模型进行思考,默认聊天模板会自动包含 </think>。 因此,模型输出中仅包含 superscript: 而没有显式的起始 </think> 标签属于正常现象。

[!Note] Qwen3-Next-80B-A3B-Thinking 生成的思考内容可能比前代模型更长。 我们强烈建议在高度复杂的推理任务中使用该模型。

Qwen3-Next-80B-A3B-Thinking 具有以下特点:

  • 类型:因果语言模型
  • 训练阶段:预训练(15T tokens)与后训练
  • 参数数量:总计 800 亿,激活 30 亿
  • 参数数量(非嵌入层):790 亿
  • 隐藏维度:2048
  • 层数:48
    • 混合布局:12 * (3 * (Gated DeltaNet -> MoE) -> 1 * (Gated Attention -> MoE))
  • 门控注意力(Gated Attention):
    • 注意力头数量:Q 为 16 个,KV 为 2 个
    • 头维度:256
    • 旋转位置嵌入维度:64
  • 门控 DeltaNet(Gated DeltaNet):
    • 线性注意力头数量:V 为 32 个,QK 为 16 个
    • 头维度:128
  • 混合专家(Mixture of Experts):
    • 专家数量:512
    • 激活专家数量:10
    • 共享专家数量:1
    • 专家中间维度:512
  • 上下文长度:原生支持 262,144 tokens,可扩展至 1,010,000 tokens

性能表现

Qwen3-30B-A3B-Thinking-2507Qwen3-32B ThinkingQwen3-235B-A22B-Thinking-2507Gemini-2.5-Flash ThinkingQwen3-Next-80B-A3B-Thinking
知识掌握
MMLU-Pro80.979.184.481.982.7
MMLU-Redux91.490.993.892.192.5
GPQA73.468.481.182.877.2
SuperGPQA56.854.164.957.860.8
推理能力
AIME2585.072.992.372.087.8
HMMT2571.451.583.964.273.9
LiveBench 24112576.874.978.474.376.6
代码能力
LiveCodeBench v6 (25.02-25.05)66.060.674.161.268.7
CFEval20441986213419952071
OJBench25.124.132.523.529.7
对齐能力
IFEval88.985.087.889.888.9
Arena-Hard v2*56.048.479.756.762.3
WritingBench85.079.088.383.984.6
智能体能力
BFCL-v372.470.371.968.672.0
TAU1-Retail67.852.867.865.269.6
TAU1-Airline48.029.046.054.049.0
TAU2-Retail58.849.771.966.767.8
TAU2-Airline58.045.558.052.060.5
TAU2-Telecom26.327.245.631.643.9
多语言能力
MultiIF76.473.080.674.477.8
MMLU-ProX76.474.681.080.278.7
INCLUDE74.473.781.083.978.9
PolyMATH52.647.460.149.856.3

*:为保证可复现性,我们报告的是由 GPT-4.1 评估的胜率。

快速开始

Qwen3-Next 的代码已合并至 Hugging Face transformers 的主分支。

pip install git+https://github.com/huggingface/transformers.git@main

使用早期版本时,您会遇到以下错误:

KeyError: 'qwen3_next'

以下内容包含一个代码片段,演示了如何使用模型根据给定输入生成内容。

from transformers import AutoModelForCausalLM, AutoTokenizer

model_name = "Qwen/Qwen3-Next-80B-A3B-Thinking"

# load the tokenizer and the model
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(
    model_name,
    dtype="auto",
    device_map="auto"
)

# prepare the model input
prompt = "Give me a short introduction to large language model."
messages = [
    {"role": "user", "content": prompt},
]
text = tokenizer.apply_chat_template(
    messages,
    tokenize=False,
    add_generation_prompt=True,
)
model_inputs = tokenizer([text], return_tensors="pt").to(model.device)

# conduct text completion
generated_ids = model.generate(
    **model_inputs,
    max_new_tokens=32768,
)
output_ids = generated_ids[0][len(model_inputs.input_ids[0]):].tolist() 

# parsing thinking content
try:
    # rindex finding 151668 (</think>)
    index = len(output_ids) - output_ids[::-1].index(151668)
except ValueError:
    index = 0

thinking_content = tokenizer.decode(output_ids[:index], skip_special_tokens=True).strip("\n")
content = tokenizer.decode(output_ids[index:], skip_special_tokens=True).strip("\n")

print("thinking content:", thinking_content) # no opening <think> tag
print("content:", content)

[!Note] Hugging Face Transformers 中暂未全面支持多 token 预测(MTP)功能。

[!Note] 效率或吞吐量的提升高度依赖具体实现方式。 建议采用专用推理框架(如 SGLang 和 vLLM)来执行推理任务。

[!Tip] 根据不同的推理设置,使用 flash-linear-attention 和 causal-conv1d 可能会获得更优的效率。 详细使用说明和要求请参见上述链接。

部署

部署时,可使用最新版 sglang 或 vllm 创建兼容 OpenAI 的 API 端点。

SGLang

SGLang 是一个用于大语言模型和视觉语言模型的快速服务框架。 通过 SGLang 可以启动具备 OpenAI 兼容 API 服务的服务器。

Qwen3-Next 需要 sglang>=0.5.2 版本,可通过以下命令安装:

pip install 'sglang[all]>=0.5.2'

有关更多详情,请参见其文档。

以下命令可用于在 4 块 GPU 上通过张量并行创建一个 API 端点,地址为 http://localhost:30000/v1,最大上下文长度为 256K tokens。

python -m sglang.launch_server --model-path Qwen/Qwen3-Next-80B-A3B-Thinking --port 30000 --tp-size 4 --context-length 262144 --reasoning-parser deepseek-r1 --mem-fraction-static 0.8

以下是 MTP 推荐使用的命令,其余设置与上文相同:

python -m sglang.launch_server --model-path Qwen/Qwen3-Next-80B-A3B-Thinking --port 30000 --tp-size 4 --context-length 262144 --reasoning-parser deepseek-r1 --mem-fraction-static 0.8 --speculative-algo NEXTN --speculative-num-steps 3 --speculative-eagle-topk 1 --speculative-num-draft-tokens 4

[!Note] 默认上下文长度为 256K。 若遇到内存不足(OOM)问题,可考虑将上下文长度减小。 但由于模型进行推理可能需要更长的 token 序列,因此强烈建议使用大于 131,072 的上下文长度。

同时,请参考 SGLang 关于 Qwen3-Next 的使用指南。

vLLM

vLLM 是一个用于大型语言模型(LLMs)的高吞吐量且内存高效的推理和服务引擎。 vLLM 可用于启动具有 OpenAI 兼容 API 服务的服务器。

Qwen3-Next 需要 vllm>=0.10.2,可通过以下方式安装:

pip install 'vllm>=0.10.2'

有关更多详情,请参见其文档。

以下命令可用于在 4 块 GPU 上通过张量并行创建一个 API 端点,地址为 http://localhost:8000/v1,最大上下文长度为 256K tokens。

vllm serve Qwen/Qwen3-Next-80B-A3B-Thinking --port 8000 --tensor-parallel-size 4 --max-model-len 262144 --reasoning-parser deepseek_r1

以下是 MTP 推荐使用的命令,其余设置与上文相同:

vllm serve Qwen/Qwen3-Next-80B-A3B-Thinking --port 8000 --tensor-parallel-size 4 --max-model-len 262144 --reasoning-parser deepseek_r1 --speculative-config '{"method":"qwen3_next_mtp","num_speculative_tokens":2}'

[!Note] 默认上下文长度为 256K。 若遇到内存不足(OOM)问题,可考虑将上下文长度调小。 但由于模型进行推理可能需要更长的 token 序列,因此强烈建议在条件允许时使用大于 131,072 的上下文长度。

另请参考 vLLM 关于 Qwen3-Next 的使用指南。

智能体使用

Qwen3 在工具调用能力方面表现卓越。建议使用 Qwen-Agent 以充分发挥 Qwen3 的智能体能力。Qwen-Agent 内部封装了工具调用模板和工具调用解析器,可大幅降低编码复杂度。

要定义可用工具,您可以使用 MCP 配置文件、使用 Qwen-Agent 的集成工具,或自行集成其他工具。

from qwen_agent.agents import Assistant

# Define LLM
# Using Alibaba Cloud Model Studio
llm_cfg = {
    'model': 'Qwen3-Next-80B-A3B-Thinking',
    'model_type': 'qwen_dashscope',
}

# Using OpenAI-compatible API endpoint. It is recommended to disable the reasoning and the tool call parsing
# functionality of the deployment frameworks and let Qwen-Agent automate the related operations. For example, 
# `vllm serve Qwen/Qwen3-Next-80B-A3B-Thinking --served-model-name Qwen3-Next-80B-A3B-Thinking --port 8000 --tensor-parallel-size 4 --max-model-len 262144`.
#
# llm_cfg = {
#     'model': 'Qwen3-Next-80B-A3B-Thinking',
# 
#     # Use a custom endpoint compatible with OpenAI API:
#     'model_server': 'http://localhost:8000/v1',  # api_base without reasoning and tool call parsing
#     'api_key': 'EMPTY',
#     'generate_cfg': {
#         'thought_in_content': True,
#     },
# }

# Define Tools
tools = [
    {'mcpServers': {  # You can specify the MCP configuration file
            'time': {
                'command': 'uvx',
                'args': ['mcp-server-time', '--local-timezone=Asia/Shanghai']
            },
            "fetch": {
                "command": "uvx",
                "args": ["mcp-server-fetch"]
            }
        }
    },
  'code_interpreter',  # Built-in tools
]

# Define Agent
bot = Assistant(llm=llm_cfg, function_list=tools)

# Streaming generation
messages = [{'role': 'user', 'content': 'https://qwenlm.github.io/blog/ Introduce the latest developments of Qwen'}]
for responses in bot.run(messages=messages):
    pass
print(responses)

超长文本处理

Qwen3-Next 原生支持最长 262,144 tokens 的上下文长度。 当对话总长度(含输入和输出)远超此限制时,建议使用 RoPE 缩放技术来有效处理长文本。 我们已通过 YaRN 方法验证了模型在最长 100 万 tokens 上下文长度下的性能。

目前已有多个推理框架支持 YaRN,例如 transformers、vllm 和 sglang。 通常,在支持的框架中启用 YaRN 有两种方式:

  • 修改模型文件: 在 config.json 文件中,添加 rope_scaling 字段:

    {
        ...,
        "rope_scaling": {
            "rope_type": "yarn",
            "factor": 4.0,
            "original_max_position_embeddings": 262144
        }
    }
  • 传递命令行参数:

    对于 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  

    对于 sglang,可使用

    SGLANG_ALLOW_OVERWRITE_LONGER_CONTEXT_LEN=1 python -m sglang.launch_server ... --json-model-override-args '{"rope_scaling":{"rope_type":"yarn","factor":4.0,"original_max_position_embeddings":262144}}' --context-length 1010000

[!NOTE] 所有主流开源框架均实现了静态 YaRN,这意味着缩放因子不随输入长度变化,可能会影响短文本的性能。 建议仅在需要处理长上下文时才添加 rope_scaling 配置。 同时,建议根据需要调整 factor。例如,若应用的典型上下文长度为 524,288 tokens,则将 factor 设置为 2.0 更佳。

最佳实践

为获得最佳性能,建议采用以下设置:

  1. 采样参数:

    • 建议使用 Temperature=0.6、TopP=0.95、TopK=20 和 MinP=0。
    • 对于支持的框架,可将 presence_penalty 参数调整在 0 到 2 之间,以减少无意义重复。但较高的取值偶尔可能导致语言混杂,并略微降低模型性能。
  2. 充足的输出长度:对于大多数查询,建议使用 32,768 tokens 的输出长度。在数学和编程竞赛等高度复杂问题的基准测试中,建议将最大输出长度设置为 81,920 tokens。这能为模型提供足够空间生成详细全面的响应,从而提升整体性能。

  3. 标准化输出格式:进行基准测试时,建议通过提示词标准化模型输出。

    • 数学问题:在提示词中加入“请逐步推理,并将最终答案放在 \boxed{} 内。”
    • 选择题:在提示词中添加以下 JSON 结构以标准化响应:“请在 answer 字段中仅填入选项字母,例如:"answer": "C"。”
  4. 历史记录中不含思考内容:在多轮对话中,历史模型输出应仅包含最终输出部分,无需包含思考过程。提供的 Jinja2 对话模板已实现此功能。但对于未直接使用 Jinja2 对话模板的框架,需由开发者确保遵循此最佳实践。

引用说明

如果您觉得我们的研究工作对您有所帮助,欢迎引用我们的成果。

@misc{qwen3technicalreport,
      title={Qwen3 Technical Report}, 
      author={Qwen Team},
      year={2025},
      eprint={2505.09388},
      archivePrefix={arXiv},
      primaryClass={cs.CL},
      url={https://arxiv.org/abs/2505.09388}, 
}

@article{qwen2.5-1m,
      title={Qwen2.5-1M Technical Report}, 
      author={An Yang and Bowen Yu and Chengyuan Li and Dayiheng Liu and Fei Huang and Haoyan Huang and Jiandong Jiang and Jianhong Tu and Jianwei Zhang and Jingren Zhou and Junyang Lin and Kai Dang and Kexin Yang and Le Yu and Mei Li and Minmin Sun and Qin Zhu and Rui Men and Tao He and Weijia Xu and Wenbiao Yin and Wenyuan Yu and Xiafei Qiu and Xingzhang Ren and Xinlong Yang and Yong Li and Zhiying Xu and Zipeng Zhang},
      journal={arXiv preprint arXiv:2501.15383},
      year={2025}
}