💨

Qwen3-Next:究極のトレーニング・推論効率へ

に公開

Qwen3-Next:究極のトレーニング・推論効率へ

公開日:2025年9月11日
著者:Qwenチーム
元ブログ
https://qwen.ai/blog?id=4074cca80393150c248e508aa62983f9cb7d27cd&from=research.latest-advancements-list

一言で言うと
Qwen3-Nextは、800億パラメータながら推論時にわずか30億パラメータしか使わない超効率モデル。長文処理(最大256Kトークン)で10倍以上の高速化を実現し、Qwen3-235Bクラスの性能を1/10以下のトレーニングコストで達成しました。


🌟 はじめに:なぜQwen3-Nextが必要なのか?

大規模言語モデルの未来は「コンテキスト長の拡張」と「総パラメータ数の拡張」の2つに集約されます。しかし、長文・大規模モデルにおけるトレーニング・推論コストは課題でした。

そこで登場したのが Qwen3-Next — 全く新しいアーキテクチャで、以下の4つの革新を実現:

  1. ハイブリッドアテンション機構(Gated DeltaNet + Gated Attention)
  2. 超スパースMoE構造(80Bパラメータ中、推論時3Bのみ活性化)
  3. トレーニング安定化設計
  4. マルチトークン予測(MTP)による推論高速化

🚀 パフォーマンスの驚異:コスト1/10、速度10倍

ベースモデル:Qwen3-Next-80B-A3B-Base

  • パラメータ:80B(活性化は3B=3.7%)
  • トレーニングコスト:Qwen3-32Bの9.3% 以下
  • 推論速度
    • コンテキスト4K:7倍高速
    • コンテキスト32K+:10倍以上高速
  • 性能:Qwen3-32Bを上回るベンチマーク結果

インストラクトモデル:Qwen3-Next-80B-A3B-Instruct

  • Qwen3-235B-A22B-Instruct-2507(フラッグシップ)と同等性能
  • 256Kトークン長文処理ではフラッグシップを上回る

思考モデル:Qwen3-Next-80B-A3B-Thinking

  • Qwen3-30B/32B Thinkingモデルを上回る
  • Gemini-2.5-Flash-Thinkingを複数ベンチで上回る
  • Qwen3-235B-A22B-Thinking-2507にほぼ匹敵

🔧 技術的革新の詳細

1. ハイブリッドアテンション:Gated DeltaNet + Gated Attention

  • Gated DeltaNet(75%のレイヤー):高速・高コンテキスト学習能力
  • Gated Attention(25%のレイヤー):高精度・リコール性能
  • 最適比率3:1で、単一アーキテクチャより高性能・高効率を達成

Attention層の強化ポイント

  • 出力ゲーティング(低ランク問題対策)
  • アテンションヘッド次元を128→256に拡張
  • RoPE(回転位置エンコーディング)を最初の25%次元にのみ適用 → 長文外挿性能向上

2. 超スパースMoE:512エキスパート設計

  • 従来(Qwen3):128エキスパート中8個活性化
  • Qwen3-Next:512エキスパート中、10個ルーティング + 1個共有で活性化
  • グローバル負荷分散により、活性化パラメータ固定でも性能向上

3. トレーニング安定化設計

  • Attention出力ゲーティング:Attention Sink / Massive Activation問題を解消
  • Zero-Centered RMSNorm:層正規化の重み爆発を抑制
  • MoEルーター初期化時の正規化:初期段階でのバイアス除去 → 学習安定化

4. マルチトークン予測(MTP)

  • Speculative Decodingの受容率向上に特化
  • トレーニングと推論の一貫性を保つ「マルチステップ学習」で最適化
  • 実環境での推論速度をさらに向上

💻 使い方ガイド:Hugging Face / SGLang / vLLM

注意:Multi-Token Prediction(MTP)はTransformersでは未対応。SGLangまたはvLLM推奨

Hugging Face Transformers(基本推論)

pip install git+https://github.com/huggingface/transformers.git@main
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, device_map="auto")

messages = [{"role": "user", "content": "大規模言語モデルとは?"}]
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=512)
print(tokenizer.decode(outputs[0][len(inputs.input_ids[0]):], skip_special_tokens=True))

SGLang(推奨:MTP対応)

pip install 'sglang[all] @ git+https://github.com/sgl-project/sglang.git@main#subdirectory=python'

基本起動(256Kコンテキスト)

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

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 \
  --speculative-algo NEXTN --speculative-num-steps 3 --speculative-eagle-topk 1 --speculative-num-draft-tokens 4

vLLM(推奨:MTP対応)

pip install vllm --pre --extra-index-url https://wheels.vllm.ai/nightly

基本起動

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

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 \
  --speculative-config '{"method":"qwen3_next_mtp","num_speculative_tokens":2}'

💡 ヒント
起動失敗時は --context-length / --max-model-len32768 などに減らして試してください。


🤖 エージェント活用:Qwen-Agentでツール連携

from qwen_agent.agents import Assistant

llm_cfg = {
    'model': 'Qwen3-Next-80B-A3B-Instruct',
    'model_server': 'http://localhost:8000/v1',
    'api_key': 'EMPTY',
}

tools = [
    {'mcpServers': {
        'time': {'command': 'uvx', 'args': ['mcp-server-time', '--local-timezone=Asia/Shanghai']},
        "fetch": {"command": "uvx", "args": ["mcp-server-fetch"]}
    }},
    'code_interpreter'
]

bot = Assistant(llm=llm_cfg, function_list=tools)
messages = [{'role': 'user', 'content': 'https://qwenlm.github.io/blog/ の最新情報を要約して'}]

for responses in bot.run(messages=messages):
    pass
print(responses)

📜 超長文処理:100万トークン対応(YaRN方式)

Qwen3-Nextは262,144トークンをネイティブサポート。それ以上は YaRN スケーリングで対応可能です。

方法1:モデルファイル直接編集(config.json

{
  "rope_scaling": {
    "rope_type": "yarn",
    "factor": 4.0,
    "original_max_position_embeddings": 262144
  }
}

方法2:起動オプションで指定

vLLM

--rope-scaling '{"rope_type":"yarn","factor":4.0,"original_max_position_embeddings":262144}' --max-model-len 1010000

SGLang

--json-model-override-args '{"rope_scaling":{"rope_type":"yarn","factor":4.0,"original_max_position_embeddings":262144}}' --context-length 1010000

⚠️ 注意
YaRNは静的スケーリングのため、短文処理では性能低下の可能性あり。長文処理時のみ有効化推奨
例:524Kトークン処理 → factor: 2.0


🎯 まとめ:Qwen3-Nextが切り開く未来

  • コスト効率:Qwen3-235B級性能を1/10以下のトレーニングコストで実現
  • 推論速度:長文処理で10倍以上高速化
  • アーキテクチャ革新:ハイブリッドアテンション・超スパースMoE・MTPの融合
  • エコシステム対応:Hugging Face / SGLang / vLLM / Qwen-Agent ですぐに利用可能

次なる目標:このアーキテクチャを基盤に、Qwen3.5 を開発中 — さらに高い知能と生産性を目指します。


📚 参考文献(抜粋)

  1. Gated Delta Networks: Improving Mamba2 with Delta Rule
  2. Gated Attention for Large Language Models
  3. DeepSeek-V3 Technical Report
  4. Better & faster large language models via multi-token prediction

公開先
🤗 Hugging Face|🌐 ModelScope|⚡ NVIDIA API Catalog

Discussion