🌠Qwen3 - 実行とファインチューニングの方法
Unsloth と当社の Dynamic 2.0 quant を使って Qwen3 をローカルで実行・ファインチューニングする方法を学びます
Qwenの新しいQwen3モデルは、推論、指示追従、エージェント能力、そして多言語サポートにおいて最先端の進化を提供します。
新登場! Qwen3は2025年7月に更新されました。最新モデルを実行&ファインチューニング: Qwen-2507
すべてのアップロードはUnslothを使用 Dynamic 2.0 SOTAの5-shot MMLUおよびKLダイバージェンス性能向け。つまり、量子化されたQwen LLMを精度損失を最小限に抑えて実行&ファインチューニングできます。
また、ネイティブ128Kコンテキスト長のQwen3もアップロードしました。QwenはYaRNを使って元の40Kウィンドウを128Kまで拡張することでこれを実現しています。
Unsloth は現在、ファインチューニングと 強化学習 (RL) Qwen3およびQwen3 MOEモデルの——2倍高速、VRAM 70%削減、コンテキスト長8倍拡張——にも対応しています。以下の Colabノートブック
Qwen3実行チュートリアル Qwen3のファインチューニング
Qwen3 - Unsloth Dynamic 2.0 を最適な設定で:
🖥️ Qwen3の実行
1秒あたり6トークン以上の推論速度を達成するには、利用可能なメモリが使用するモデルのサイズ以上であることを推奨します。たとえば、30GBの1-bit量子化モデルには少なくとも150GBのメモリが必要です。180GBのQ2_K_XL量子化モデルには、少なくとも 180GBの統合メモリ (VRAM + RAM)または 180GBのRAM が最適な性能のために必要です。
注: モデルサイズより 少ない総メモリ でモデルを実行することは可能です(つまり、VRAMが少ない、RAMが少ない、または合計が少ない場合)。ただし、その場合は推論速度が低下します。十分なメモリが必要なのは、スループットを最大化して最速の推論時間を達成したい場合のみです。
⚙️ 公式推奨設定
Qwenによると、推論に推奨される設定は以下のとおりです:
Temperature = 0.7
Temperature = 0.6
Min_P = 0.0(任意ですが、0.01でもよく機能します。llama.cppのデフォルトは0.1です)
Min_P = 0.0
Top_P = 0.8
Top_P = 0.95
TopK = 20
TopK = 20
チャットテンプレート/プロンプト形式:
NON thinkingモードでは、<think>と</think>の中を意図的に空にします:
Thinkingモードでは、greedy decodingを使用しないでください。性能低下や無限反復につながる可能性があります。
ThinkingモードとNon-Thinkingモードの切り替え
Qwen3モデルには、推論を強化し応答品質を改善するための組み込み「thinking mode」があります。これは、 QwQ-32B が動作していた方法に似ています。切り替え方法は使用する推論エンジンによって異なるため、必ず正しい手順を使ってください。
llama.cpp と Ollama 用の手順:
ユーザープロンプトやシステムメッセージに /think と /no_think を追加することで、ターンごとにモデルのthinking modeを切り替えられます。モデルはマルチターン会話では最も新しい指示に従います。
以下はマルチターン会話の例です:
transformers と vLLM 用の手順:
Thinkingモード:
enable_thinking=True
デフォルトでは、Qwen3はthinkingが有効です。 tokenizer.apply_chat_templateを呼び出すと、 手動で何も設定する必要はありません。
Thinkingモードでは、モデルは最終回答の前に追加の <think>...</think> ブロックを生成します。これにより、「計画」を立て、応答を洗練できます。
Non-thinkingモード:
enable_thinking=False
non-thinkingを有効にすると、Qwen3はすべてのthinkingステップをスキップし、通常のLLMのように動作します。
このモードでは最終応答が直接返されます—— <think> ブロックも、chain-of-thoughtもありません。
🦙 Ollama: Qwen3実行チュートリアル
インストール
ollamaまだの場合はインストールしてください!実行できるモデルは最大32Bまでです。フルの235B-A22Bモデルを実行するには、 こちらを参照.
モデルを実行しましょう!必要なら
ollama serveを別のターミナルで呼び出せます。失敗した場合に備えて!修正内容や推奨パラメータ(temperatureなど)はすべてparamsに含まれており、Hugging Faceへのアップロードに入っています!
thinkingを無効化するには、次を使います(またはシステムプロンプトに設定できます):
ループが発生する場合、Ollamaがコンテキスト長ウィンドウを2,048程度に設定している可能性があります。その場合は32,000に引き上げて、問題がまだ続くか確認してください。
📖 Llama.cpp: Qwen3実行チュートリアル
最新の
llama.cppを GitHubこちらから入手してください。以下のビルド手順も利用できます。-DGGML_CUDA=ONを-DGGML_CUDA=OFFに変更してください。GPUがない場合、またはCPU推論だけを使いたい場合です。 Apple Mac / Metalデバイスの場合、-DGGML_CUDA=OFFを設定し、その後は通常どおり続けてください。Metalサポートはデフォルトで有効です。
(インストール後に)モデルをダウンロードします
pip install huggingface_hub hf_transfer)。Q4_K_Mや他の量子化版を選べます。
モデルを実行し、任意のプロンプトを試してください。
thinkingを無効化するには、次を使います(またはシステムプロンプトに設定できます):
Qwen3-235B-A22Bの実行
Qwen3-235B-A22Bでは、最適化された推論と豊富なオプションのために、特にLlama.cppを使用します。
上と同様の手順に従いますが、今回はモデルが非常に大きいため、追加の手順も必要になります。
(インストール後に)モデルをダウンロードします
pip install huggingface_hub hf_transfer)。UD-Q2_K_XLや他の量子化版を選べます。。モデルを実行し、任意のプロンプトを試してください。
編集
--threads 32CPUスレッド数に合わせて--ctx-size 16384コンテキスト長に合わせて、--n-gpu-layers 99何層をGPUにオフロードするかに合わせて設定します。GPUのメモリ不足になった場合は調整してみてください。CPUのみ推論の場合はこれも削除してください。
使って -ot ".ffn_.*_exps.=CPU" すべてのMoE層をCPUへオフロードします!これにより、実質的にMoE以外の全層を1枚のGPUに収めることができ、生成速度が向上します。GPU容量がもっとある場合は、正規表現をカスタマイズしてさらに多くの層を収めることもできます。
🦥 UnslothでQwen3をファインチューニング
Unslothを使うとQwen3のファインチューニングは2倍高速になり、VRAM使用量を70%削減し、8倍長いコンテキスト長をサポートします。Qwen3(14B)は、Google Colabの16GB VRAM Tesla T4 GPUに余裕で収まります。
Qwen3は推論あり/なしの両方をサポートするため、非推論データセットでファインチューニングできますが、推論能力に影響する可能性があります。推論能力を維持したい場合(任意)、直接回答とChain-of-Thoughtの例を組み合わせて使えます。 75%の推論 と 25%の非推論 をデータセットに含めることで、モデルの推論能力を保持できます。
私たちの会話用ノートブックでは、NVIDIAのオープン数学推論データセット75%とMaximeのFineTomeデータセット25%(非推論)を組み合わせて使用しています。Qwen3をファインチューニングするための無料のUnsloth Colabノートブックはこちらです:
Qwen3(4B) - 高度なGRPO LoRA
Qwen3(14B)Alpacaノートブック (ベースモデル向け)
Unslothの古いバージョンを使っている場合、またはローカルでファインチューニングする場合は、最新バージョンのUnslothをインストールしてください:
Qwen3 MOEモデルのファインチューニング
ファインチューニング対応には、2026年の新しい Faster MOE アップデートも含まれます:30B-A3Bと235B-A22Bです。Qwen3-30B-A3BはUnslothでわずか17.5GBのVRAMで動作します。MoEのファインチューニングでは、ルーター層をファインチューニングするのはおそらく良い考えではないため、デフォルトで無効化しています。
30B-A3Bは17.5GBのVRAMに収まりますが、QLoRAファインチューニングのためにフルの16-bitモデルをダウンロードしてその場で4-bitに変換する必要があるため、RAMまたはディスク容量が不足する可能性があります。これは4-bit BnB MOEモデルを直接インポートする際の問題によるものです。これはMOEモデルにのみ影響します。
ノートブックガイド:

ノートブックを使うには、RuntimeをクリックしてからRun allを押すだけです。設定はノートブック内でお好みに変更できます。初期設定は自動で行われています。モデル名はHugging Face上の名前に合わせて、例えば 'unsloth/Qwen3-8B' や 'unsloth/Qwen3-0.6B-unsloth-bnb-4bit' のように変更してください。
切り替え可能な他の設定もあります:
max_seq_length = 2048– コンテキスト長を制御します。Qwen3は40960をサポートしていますが、テストには2048を推奨します。Unslothは8倍長いコンテキストでのファインチューニングを有効にします。load_in_4bit = True– 4-bit量子化を有効にし、16GB GPUでのファインチューニング時のメモリ使用量を4分の1に削減します。フル ファインチューニング の場合は
full_finetuning = Trueと 8-bitファインチューニング の場合はload_in_8bit = True
Unslothノートブックを使ったファインチューニングの完全なエンドツーエンドガイドを読みたい場合、またはファインチューニングや作成方法を学びたい場合は、 データセット などについて、 こちらの完全ガイドをご覧ください:
🧬Fine-tuning Guide📈データセットガイドQwen3でのGRPO
Qwen3をファインチューニングするための新しい高度なGRPOノートブックを作成しました。新しい近接ベースの報酬関数(より近い回答ほど報酬が高い)と、Hugging FaceのOpen-R1数学データセットの使い方を学べます。Unslothはさらに評価が改善され、最新バージョンのvLLMを使用しています。
Qwen3(4B) ノートブック - 高度なGRPO LoRA
学べること:
Qwen3(Base)で推論を有効にし、特定のタスクを実行するよう誘導する方法
GRPOが書式を学習しがちな傾向を回避するための事前ファインチューニング
新しい正規表現マッチングによる評価精度の改善
'think' だけでなく、<start_working_out></end_working_out> などのカスタムGRPOテンプレート
近接ベースのスコアリング:より良い回答ほど多くのポイントを獲得し(例:答えが10のときに9と予測するなど)、外れ値は減点されます

最終更新
役に立ちましたか?

