日本語版
最新ニュース
科学&テクノロジー

QWEN3:より深く考え、より速く行動します

Qwenチャット ギルブ 顔を抱き締める ModelScope Kaggle デモ 不和導入#今日、私たちはのリリースを発表できることを楽しみにしています QWEN3、大規模な言語モデルのQwenファミリーへの最新の追加。私たちの旗艦モデル、 QWEN3-235B-A22B、DeepSeek-R1、O1、O3-Mini、GROK-3、GEMINI-2.5-PROなどの他のトップ層モデルと比較した場合、コーディング、数学、一般的な機能などのベンチマーク評価で競争結果を達成します。さらに、小さなMOEモデル、 QWEN3-30B-A3B、10倍のアクティブ化されたパラメーターを備えたqwq-32b、およびqwen3-4bのような小さなモデルでさえ、qwen2.5-72b-instructのパフォーマンスに匹敵する可能性があります。私たちは2つのMOEモデルを開いています: QWEN3-23B-A22B、合計2350億パラメーターと220億のアクティブ化されたパラメーターを備えた大きなモデル、および QWEN3-30B-A3B、合計300億パラメーターと30億のアクティブ化されたパラメーターを備えたより小さなMOEモデル。さらに、6つの密なモデルもオープン加重です QWEN3-32B、 QWEN3-14B、 QWEN3-8B、 QWEN3-4B、 QWEN3-1.7B、 そして QWEN3-0.6b、Apache 2.0ライセンスの下。モデルレイヤーヘッド(Q / kv)タイ埋め込みコンテキストの長さQWEN3-0.6b2816/8はい32KQWEN3-1.7B2816/8はい32KQWEN3-4B3632 /8はい32KQWEN3-8B3632 /8いいえ128KQWEN3-14B4040/8いいえ128KQWEN3-32B6464 /8いいえ128Kモデルレイヤーヘッド(Q / kv)#エキスパート(合計 /アクティブ化)コンテキストの長さQWEN3-30B-A3B4832 /4128 /8128KQWEN3-23B-A22B9464 /4128 /8128K次のような訓練後のモデル QWEN3-30B-A3B、彼らの事前に訓練されたカウンターパートとともに(例: QWEN3-30B-A3Bベース)、ようなプラットフォームで利用可能になりました 顔を抱き締める、 ModelScope、 そして Kaggle。展開には、次のようなフレームワークを使用することをお勧めします…

QWEN3:より深く考え、より速く行動します

1745878111
2025-04-28 20:44:00

Qwenチャット
ギルブ
顔を抱き締める
ModelScope
Kaggle
デモ
不和

導入

今日、私たちはのリリースを発表できることを楽しみにしています QWEN3、大規模な言語モデルのQwenファミリーへの最新の追加。私たちの旗艦モデル、 QWEN3-235B-A22B、DeepSeek-R1、O1、O3-Mini、GROK-3、GEMINI-2.5-PROなどの他のトップ層モデルと比較した場合、コーディング、数学、一般的な機能などのベンチマーク評価で競争結果を達成します。さらに、小さなMOEモデル、 QWEN3-30B-A3B、10倍のアクティブ化されたパラメーターを備えたqwq-32b、およびqwen3-4bのような小さなモデルでさえ、qwen2.5-72b-instructのパフォーマンスに匹敵する可能性があります。

私たちは2つのMOEモデルを開いています: QWEN3-23B-A22B、合計2350億パラメーターと220億のアクティブ化されたパラメーターを備えた大きなモデル、および QWEN3-30B-A3B、合計300億パラメーターと30億のアクティブ化されたパラメーターを備えたより小さなMOEモデル。さらに、6つの密なモデルもオープン加重です QWEN3-32BQWEN3-14BQWEN3-8BQWEN3-4BQWEN3-1.7B、 そして QWEN3-0.6b、Apache 2.0ライセンスの下。

モデル レイヤー ヘッド(Q / kv) タイ埋め込み コンテキストの長さ
QWEN3-0.6b 28 16/8 はい 32K
QWEN3-1.7B 28 16/8 はい 32K
QWEN3-4B 36 32 /8 はい 32K
QWEN3-8B 36 32 /8 いいえ 128K
QWEN3-14B 40 40/8 いいえ 128K
QWEN3-32B 64 64 /8 いいえ 128K
モデル レイヤー ヘッド(Q / kv) #エキスパート(合計 /アクティブ化) コンテキストの長さ
QWEN3-30B-A3B 48 32 /4 128 /8 128K
QWEN3-23B-A22B 94 64 /4 128 /8 128K

次のような訓練後のモデル QWEN3-30B-A3B、彼らの事前に訓練されたカウンターパートとともに(例: QWEN3-30B-A3Bベース)、ようなプラットフォームで利用可能になりました 顔を抱き締めるModelScope、 そして Kaggle。展開には、次のようなフレームワークを使用することをお勧めします sglang そして vllm。ローカルの使用については、ようなツール オラマlmstudioMLXflame.cpp、 そして KTRANSFORMERS 強くお勧めします。これらのオプションにより、ユーザーは、研究、開発、または生産環境であれ、QWEN3をワークフローに簡単に統合できるようになります。

QWEN3のリリースとオープンソースは、大規模な基礎モデルの研究開発を大幅に進歩させると考えています。私たちの目標は、世界中の研究者、開発者、および組織に、これらの最先端のモデルを使用して革新的なソリューションを構築できるようにすることです。

QwenチャットWebでQWEN3をお試しください(chat.qwen.ai)そしてモバイルアプリ!

重要な機能

QWEN3モデルは、問題解決へのハイブリッドアプローチを導入します。 2つのモードをサポートしています。

  1. 思考モード:このモードでは、モデルは最終回答を提供する前に段階的に推論するのに時間がかかります。これは、より深い考えを必要とする複雑な問題に最適です。
  2. 考え直しモード:ここでは、モデルは速度よりも速度よりも重要な単純な質問に適している、迅速で近くの応答を提供します。

この柔軟性により、ユーザーは、手元のタスクに基づいてモデルが実行する「思考」量を制御できます。たとえば、より難しい問題は拡張された推論で取り組むことができますが、より簡単な問題は遅滞なく直接答えることができます。重要なことに、これら2つのモードを統合すると、安定した効率的な思考予算制御を実装するモデルの能力が大幅に向上します。上記のように、QWEN3は、割り当てられた計算上の推論予算と直接相関するスケーラブルでスムーズなパフォーマンスの改善を示します。この設計により、ユーザーはタスク固有の予算をより簡単に構成し、コスト効率と推論の品質の間のより最適なバランスをとることができます。

QWEN3モデルがサポートしています 119の言語と方言。この広範な多言語機能は、国際的なアプリケーションの新しい可能性を開き、世界中のユーザーがこれらのモデルの力から利益を得ることができます。

言語ファミリー 言語と方言
インドヨーロッパ人 英語、フランス語、ポルトガル語、ドイツ語、ルーマニア語、スウェーデン語、デンマーク語、ブルガリア語、ロシア語、チェコ語、ギリシャ語、ウクライナ語、スペイン語、オランダ語、スロバキベラルーシ人、セルビア人、ルクセンブルク、ベネチア人、アッサム、ウェールズ、シレジアン、アストゥリアン、チャッティースガーヒ、アワディ、マイチリ、ボジプリ、シンディ、アイルランド、フィロゼ、ヒンディー語、パンジャビ、バンガリ、オリヤ、タジク、ラジク、ヤイドディッシュ、ザイジン、聖フリリアン、サルデーニャ、ガリシア人、カタロニア、アイスランド語、トスクアルバニア、リンブルギッシュ、ダリ、アフリカーンス、マケドニアン、シンハラ、ウルドゥー、マガヒ、ボスニア、アルメニア
Syno-Tibetan 中国人(単純化された中国語、伝統的な中国語、広東)、ビルマ
アフロアジアティック アラビア語(Standard、Najdi、Levantine、Egyptian、Moroccan、Mesopotamian、Ta’izzi-Deni、Tunisian)、ヘブライ語、マルタ人
オーストロネア インドネシア人、マレー人、タガログ語、セブサン、ジャヴァネス、サンデンデス、ミンカガバ、バンジャー、パンガシナン、イロイ、ウェイ(フィッピング)
ドラヴィディアン タミル、テルグ、カンナダ、マラヤラム
トルコ語 トルコ、北アゼルバイジャン、北ウズベック、カザフ、バシキル、タタール
タイロン 妊娠、結核
ウラリック フィンランド語、エストニアン、ハンガリー語
オーストリアアジアティック ベトナム人、クメール
他の 日本、コリアン、ジョージアン、バスク、ハイタン、パピアーノ、カブン、トックピシン、スワヒリ
  • 改善されたエージェント機能

コーディングおよびエージェント機能のQWEN3モデルを最適化し、MCPのサポートも強化しました。以下に、QWEN3が環境とどのように考え、相互作用するかを示す例を示します。

トレーニング前

事前トレーニングの観点から、QWEN3のデータセットはQWEN2.5と比較して大幅に拡張されています。 QWEN2.5は18兆トークンで事前に訓練されていましたが、QWEN3はその量のほぼ2倍を使用し、約36兆個のトークンが119の言語と方言をカバーしています。この大きなデータセットを構築するために、WebだけでなくPDFのようなドキュメントからもデータを収集しました。 QWEN2.5-VLを使用して、これらのドキュメントからテキストを抽出し、QWEN2.5から抽出されたコンテンツの品質を向上させました。数学データとコードデータの量を増やすために、QWEN2.5-MATHとQWEN2.5-CODERを使用して合成データを生成しました。これには、教科書、質問回答ペア、コードスニペットが含まれます。

トレーニング前のプロセスは、3つの段階で構成されています。最初の段階(S1)では、モデルは、コンテキスト長の4Kトークンで30兆以上のトークンで前提とされていました。この段階は、モデルに基本的な言語スキルと一般的な知識を提供しました。第2段階(S2)では、STEM、コーディング、推論タスクなどの知識集約型データの割合を増やすことにより、データセットを改善しました。その後、このモデルは、さらに5兆個のトークンで前提とされました。最終段階では、高品質のロングコンテキストデータを使用して、コンテキストの長さを32Kトークンに拡張しました。これにより、モデルがより長い入力を効果的に処理できるようになります。

モデルアーキテクチャの進歩、トレーニングデータの増加、およびより効果的なトレーニング方法により、QWEN3密度のベースモデルの全体的なパフォーマンスは、より多くのパラメーターを備えたQWEN2.5ベースモデルのパフォーマンスと一致します。たとえば、QWEN3-1.7B/4B/8B/14B/32Bベースは、それぞれQWEN2.5-3B/7B/14B/32B/72Bベースと同様に機能します。特に、STEM、コーディング、推論などの領域では、QWEN3密度のベースモデルは、より大きなQWEN2.5モデルよりも優れています。 QWEN3-MOEベースモデルの場合、アクティブパラメーターの10%のみを使用しながら、QWEN2.5密度のベースモデルと同様のパフォーマンスを達成します。これにより、トレーニングコストと推論コストの両方が大幅に節約されます。

トレーニング後

段階的な推論と迅速な対応の両方が可能なハイブリッドモデルを開発するために、4段階のトレーニングパイプラインを実装しました。このパイプラインには、(1)長い考え方(COT)コールドスタート、(2)推論ベースの強化学習(RL)、(3)思考モード融合、および(4)一般RLが含まれます。

最初の段階では、多様な長いCOTデータを使用してモデルを微調整し、数学、コーディング、論理的推論、STEMの問題などのさまざまなタスクやドメインをカバーしました。このプロセスは、モデルに基本的な推論能力を装備することを目的としています。第2段階は、RLの計算リソースの拡大に焦点を当て、ルールベースの報酬を利用してモデルの探索と搾取機能を強化しました。

第3段階では、非思考の機能を思考モデルに統合し、長いCOTデータと一般的に使用される命令調整データの組み合わせで微調整しました。このデータは、第2段階から強化された思考モデルによって生成され、推論と迅速な応答機能のシームレスなブレンドを確保しました。最後に、第4段階では、20を超える一般的なドメインタスクにRLを適用して、モデルの一般的な機能をさらに強化し、望ましくない動作を修正しました。これらのタスクには、次の命令、フォーマットフォロー、エージェント機能などが含まれます。

QWEN3で開発します

以下は、さまざまなフレームワークでQWEN3を使用するための簡単なガイドです。まず第一に、フェイストランスの抱きしめにQWEN3-30B-A3Bを使用する標準的な例を提供します。

from modelscope import AutoModelForCausalLM, AutoTokenizer

model_name = "Qwen/Qwen3-30B-A3B"

# load the tokenizer and the model
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_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,
    enable_thinking=True # Switch between thinking and non-thinking modes. Default is 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 ()
    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)
print("content:", content)

思考を無効にするには、議論に変更を加える必要があります enable_thinking 次のように:

text = tokenizer.apply_chat_template(
    messages,
    tokenize=False,
    add_generation_prompt=True,
    enable_thinking=False  # True is the default value for enable_thinking.
)

展開には、使用できます sglang>=0.4.6.post1 または vllm>=0.8.4 OpenAI互換APIエンドポイントを作成するには:

  • Sglang:

    python -m sglang.launch_server --model-path Qwen/Qwen3-30B-A3B --reasoning-parser qwen3
    
  • Vllm:

    vllm serve Qwen/Qwen3-30B-A3B --enable-reasoning --reasoning-parser deepseek_r1
    

ローカル開発に使用する場合は、簡単なコマンドを実行してOllamaを使用できます ollama run qwen3:30b-a3b モデルを使用するか、LMStudioまたはllama.cppおよびKtransformersを使用してローカルに構築できます。

高度な使用法

Enable_Think = trueの場合、ユーザーがモデルの動作を動的に制御できるソフトスイッチメカニズムを提供します。具体的には、ユーザーのプロンプトまたはシステムメッセージに追加 /考え、 /no_thinkはモデルの思考モードをターンからターンに切り替えることができます。このモデルは、マルチターン会話の最新の指示に従います。

これがマルチターン会話の例です。

from transformers import AutoModelForCausalLM, AutoTokenizer

class QwenChatbot:
    def __init__(self, model_name="Qwen/Qwen3-30B-A3B"):
        self.tokenizer = AutoTokenizer.from_pretrained(model_name)
        self.model = AutoModelForCausalLM.from_pretrained(model_name)
        self.history = []

    def generate_response(self, user_input):
        messages = self.history + [{"role": "user", "content": user_input}]

        text = self.tokenizer.apply_chat_template(
            messages,
            tokenize=False,
            add_generation_prompt=True
        )

        inputs = self.tokenizer(text, return_tensors="pt")
        response_ids = self.model.generate(**inputs, max_new_tokens=32768)[0][len(inputs.input_ids[0]):].tolist()
        response = self.tokenizer.decode(response_ids, skip_special_tokens=True)

        # Update history
        self.history.append({"role": "user", "content": user_input})
        self.history.append({"role": "assistant", "content": response})

        return response

# Example Usage
if __name__ == "__main__":
    chatbot = QwenChatbot()

    # First input (without /think or /no_think tags, thinking mode is enabled by default)
    user_input_1 = "How many r's in strawberries?"
    print(f"User: {user_input_1}")
    response_1 = chatbot.generate_response(user_input_1)
    print(f"Bot: {response_1}")
    print("----------------------")

    # Second input with /no_think
    user_input_2 = "Then, how many r's in blueberries? /no_think"
    print(f"User: {user_input_2}")
    response_2 = chatbot.generate_response(user_input_2)
    print(f"Bot: {response_2}") 
    print("----------------------")

    # Third input with /think
    user_input_3 = "Really? /think"
    print(f"User: {user_input_3}")
    response_3 = chatbot.generate_response(user_input_3)
    print(f"Bot: {response_3}")

エージェントの使用

QWEN3は、ツール呼び出し機能に優れています。使用することをお勧めします qwen-agent QWEN3のエージェント能力を最大限に活用するため。 Qwen-Agentは、ツールを呼び出すテンプレートとツールコールパーサーを内部的にカプセル化し、コーディングの複雑さを大幅に削減します。

使用可能なツールを定義するには、MCP構成ファイルを使用したり、Qwen-Agentの統合ツールを使用したり、自分で他のツールを統合したりできます。

from qwen_agent.agents import Assistant

# Define LLM
llm_cfg = {
    'model': 'Qwen3-30B-A3B',

    # Use the endpoint provided by Alibaba Model Studio:
    # 'model_type': 'qwen_dashscope',
    # 'api_key': os.getenv('DASHSCOPE_API_KEY'),

    # Use a custom endpoint compatible with OpenAI API:
    'model_server': 'http://localhost:8000/v1',  # api_base
    'api_key': 'EMPTY',

    # Other parameters:
    # 'generate_cfg': {
    #         # Add: When the response content is `this is the thoughtthis is the answer;
    #         # Do not add: When the response has been separated by reasoning_content and content.
    #         '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)

Qwenの友達

たくさんの友達のサポートのおかげです。 Qwenは友達なしでは何もありません!私たちのコミュニティに参加し、私たちがより良くなるのを助けるために、より多くの人々や組織を歓迎します!

将来の仕事

QWEN3は、人工的な一般情報(AGI)と人工的な密集(ASI)への旅における重要なマイルストーンを表しています。事前トレーニングと強化学習(RL)の両方をスケーリングすることにより、より高いレベルのインテリジェンスを達成しました。シームレスに統合された思考と非思考モードがあり、ユーザーに思考予算を制御する柔軟性を提供します。さらに、幅広い言語のサポートを拡大し、グローバルなアクセシビリティを向上させました。

今後、複数の次元でモデルを強化することを目指しています。これには、モデルアーキテクチャとトレーニング方法の洗練とトレーニングの方法論が含まれます。いくつかの重要な目的を達成します。データのスケーリング、モデルサイズの増加、コンテキストの長さの拡張、モダリティの拡大、長期歴史の推論の環境フィードバックでRLを進めます。トレーニングモデルに焦点を当てた時代から、トレーニングエージェントを中心とした1つのモデルに移行していると考えています。私たちの次の反復は、すべての人の仕事と人生に意味のある進歩をもたらすことを約束します。

#QWEN3より深く考えより速く行動します

執筆者について: nipponese

Nipponese News編集部は、国内外のニュースを日本語で分かりやすくお届けします。