GLM-4.7-Flash: ローカルで実行する方法
GLM-4.7-Flash をローカルで実行およびファインチューニングする方法!
GLM-4.7-FlashはZ.aiの新しいローカル展開向け30B MoE推論モデルで、コーディング、エージェントワークフロー、チャットにおいて業界最高水準の性能を提供します。約3.6Bのパラメータを使用し、200Kコンテキストをサポートし、SWE-Bench、GPQA、および推論/チャットベンチマークでリードしています。
GLM-4.7-Flashは 24GBのRAM/VRAM/統合メモリ(完全精度では32GB)で動作し、現在Unslothでファインチューニングできます。vLLMでGLM 4.7 Flashを実行するには、こちらを参照してください GLM-4.7-Flash
1月21日アップデート: llama.cpp 誤った項目を指定するバグを修正しました: scoring_func: 「softmax」 (本来は 「sigmoid」)。これによりループや不適切な出力が発生していました。GGUFを更新しましたので、より良い出力を得るためにモデルを再ダウンロードしてください。
Z.aiの推奨パラメータを使えば優れた結果が得られます:
一般的なユースケース向け:
--temp 1.0 --top-p 0.95ツール呼び出し向け:
--temp 0.7 --top-p 1.0リピートペナルティ: 無効にするか、以下を設定してください
--repeat-penalty 1.0
1月22日:CUDAのFA修正がマージされ、推論がより高速になりました。
実行用のGLM-4.7-Flash GGUF: unsloth/GLM-4.7-Flash-GGUF
⚙️ 使用ガイド
最高のパフォーマンスを得るには、利用可能な合計メモリ(VRAM+システムRAM)がダウンロードしている量子化モデルファイルのサイズを上回っていることを確認してください。そうでない場合でも、llama.cppはSSD/HDDのオフローディングを介して実行できますが、推論は遅くなります。
Z.aiチームと協議した結果、GLM-4.7のサンプリングパラメータとして以下を推奨します:
temperature = 1.0
temperature = 0.7
top_p = 0.95
top_p = 1.0
repeat penalty = 無効または1.0
repeat penalty = 無効または1.0
一般的なユースケース向け:
--temp 1.0 --top-p 0.95ツール呼び出し向け:
--temp 0.7 --top-p 1.0llama.cppを使用する場合は、以下を設定してください
--min-p 0.01(llama.cppのデフォルトは0.05です)場合によっては、ユースケースに最適な数値を試行する必要があります。
現時点では、私たちは 推奨しません このGGUFを Ollamaで実行することを チャットテンプレートの互換性の問題の可能性があるためです。GGUFはllama.cpp(またはLM Studio、Janなどのバックエンド)でうまく動作します。
リピートペナルティを無効にするのを忘れないでください!あるいは以下を設定してください --repeat-penalty 1.0
最大コンテキストウィンドウ:
202,752
🖥️ GLM-4.7-Flashを実行する
ユースケースによって異なる設定が必要になります。一部のGGUFはモデルアーキテクチャ(例えば gpt-oss)の次元が128で割り切れないため、部分的に低ビットへ量子化できず、サイズが似通うことがあります。
このガイドは4ビットを使用するため、約18GBのRAM/統合メモリが必要です。最高の性能のために少なくとも4ビット精度を使用することを推奨します。
現時点では、私たちは 推奨しません このGGUFを Ollamaで実行することを チャットテンプレートの互換性の問題の可能性があるためです。GGUFはllama.cpp(またはLM Studio、Janなどのバックエンド)でうまく動作します。
リピートペナルティを無効にするのを忘れないでください!あるいは以下を設定してください --repeat-penalty 1.0
Llama.cppチュートリアル(GGUF):
llama.cppでの実行手順(ほとんどのデバイスに収まるように4ビットを使用します):
最新の llama.cpp を入手してください GitHubはこちら。以下のビルド手順に従うこともできます。 -DGGML_CUDA=ON を -DGGML_CUDA=OFF に変更してください。GPUがない場合やCPUによる推論のみを行いたい場合。 AppleのMac/Metalデバイスの場合、を設定し、 -DGGML_CUDA=OFF 通常通り続けてください - Metalサポートはデフォルトで有効です。
Hugging Faceから直接プルできます。RAM/VRAMの許す範囲でコンテキストを200Kまで増やせます。
また、Z.aiが推奨するGLM-4.7のサンプリングパラメータを試すこともできます:
一般的なユースケース向け:
--temp 1.0 --top-p 0.95ツール呼び出し向け:
--temp 0.7 --top-p 1.0リピートペナルティを無効にするのを忘れないでください!
こちらに従ってください 一般指示 使用例:
こちらに従ってください ツール呼び出し 使用例:
pip install huggingface_hub hf_transfer pip install huggingface_hub)。選択できます UD-Q4_K_XL または他の量子化バージョン。ダウンロードが止まる場合は、以下を参照してください Hugging Face Hub、XET デバッグ
その後、会話モードでモデルを実行します:
また、必要に応じて コンテキストウィンドウ を調整し、最大で 202752
➿反復とループの削減
1月21日更新:llama.cppは誤った指定をするバグを修正しました: 「scoring_func": "softmax" はループや不適切な出力を引き起こしていました(本来はsigmoid)。GGUFを更新しました。より良い出力を得るためにモデルを再ダウンロードしてください。
これにより、Z.aiの推奨パラメータを使って優れた結果が得られるようになりました:
一般的なユースケース向け:
--temp 1.0 --top-p 0.95ツール呼び出し向け:
--temp 0.7 --top-p 1.0llama.cppを使用する場合は、以下を設定してください
--min-p 0.01(llama.cppのデフォルトは0.05です)リピートペナルティを無効にするのを忘れないでください!あるいは以下を設定してください
--repeat-penalty 1.0
私たちは次を追加しました: 「scoring_func": "sigmoid" を config.json メインモデル用に - 参照:.
現時点では、私たちは 推奨しません このGGUFを Ollamaで実行することを チャットテンプレートの互換性の問題の可能性があるためです。GGUFはllama.cpp(またはLM Studio、Janなどのバックエンド)でうまく動作します。
🐦UD-Q4_K_XLでのFlappy Bird例
例として、UD-Q4_K_XLを介して長い会話を次のように行いました: ./llama.cpp/llama-cli --model unsloth/GLM-4.7-Flash-GGUF/GLM-4.7-Flash-UD-Q4_K_XL.gguf --fit on --temp 1.0 --top-p 0.95 --min-p 0.01 :
これにより以下のFlappy BirdゲームがHTML形式でレンダリングされました:
いくつかスクリーンショットを撮りました(4bitで動作します):


🦥 GLM-4.7-Flashのファインチューニング
Unslothは現在GLM-4.7-Flashのファインチューニングをサポートしていますが、使用するには transformers v5が必要です。30Bモデルは無料のColab GPUには収まりませんが、私たちのノートブックを使用できます。GLM-4.7-Flashの16ビットLoRAファインチューニングではおよそ 60GBのVRAM:
A100 40GB VRAMを使用する場合、時々メモリ不足に遭遇することがあります。よりスムーズに実行するにはH100/A100 80GB VRAMを使用する必要があります。
MoEのファインチューニングでは、ルータレイヤーを微調整するのはあまり良くない可能性があるため、デフォルトで無効にしています。推論能力を保持したい場合(任意)、直接回答とチェーン・オブ・ソート(思考過程)の例を混在させることができます。データセットには少なくとも 75% 推論(reasoning) および 25% 非推論(non-reasoning) を含めて、モデルが推論能力を維持できるようにしてください。
🦙Llama-serverのサーブ&デプロイ
本番用途でGLM-4.7-Flashをデプロイするには、私たちは以下を使用します llama-server 新しいターミナルで(tmux経由など)、次のようにモデルをデプロイします:
その後、新しいターミナルで、 pip install openaiを行った後、次を実行します:
これにより次が出力されます
💻 vLLMにおけるGLM-4.7-Flash
現在、私たちの新しい FP8ダイナミック量子化 をプレミアムで高速な推論用にモデルに使用できます。まずnightlyからvLLMをインストールしてください:
その後サーブします UnslothのダイナミックFP8バージョン のモデルを。FP8を有効にすることでKVキャッシュのメモリ使用量を50%削減し、4GPUでの使用を想定しています。GPUが1台の場合は、以下を使用してください CUDA_VISIBLE_DEVICES='0' そして設定してください --tensor-parallel-size 1 またはこの引数を削除してください。FP8を無効にするには、以下を削除します --quantization fp8 --kv-cache-dtype fp8
その後、OpenAI API経由でサーブされたモデルを呼び出せます:
⭐ vLLM GLM-4.7-Flash 推測的デコーディング
GLM 4.7 FlashのMTP(マルチトークン予測)モジュールを使用すると、生成スループットが1 x B200で13,000トークンから1,300トークンに低下することがわかりました!(10倍遅くなる)Hopper上では問題ないはずです。
1xB200でのスループットは1,300トークン/秒(ユーザーあたりのデコードは130トークン/秒)に過ぎません

そして1xB200でのスループットは13,000トークン/秒(それでもユーザーあたりのデコードは130トークン/秒)です

🔨GLM-4.7-Flashでのツール呼び出し
詳細については、こちらを参照してください Tool Calling Guide 新しいターミナルで(tmuxを使用している場合はCTRL+B+D)、2つの数を加える、Pythonコードを実行する、Linux機能を実行するなどのツールをいくつか作成します:
次に、以下の関数(コピーして貼り付けて実行)を使用します。これらは関数呼び出しを自動的に解析し、モデルに対してOpenAIエンドポイントを呼び出します:
GLM-4.7-Flashを起動した後、 llama-server のように GLM-4.7-Flash または参照 Tool Calling Guide 詳細については、その後いくつかのツール呼び出しを行うことができます:
GLM 4.7 の数学的操作のためのツール呼び出し

GLM-4.7-Flashのために生成されたPythonコードを実行するためのツール呼び出し

ベンチマーク
GLM-4.7-Flashは、AIME 25を除くすべてのベンチマークで最高の性能を示す30Bモデルです。

AIME 25
91.6
85.0
91.7
GPQA
75.2
73.4
71.5
LCB v6
64.0
66.0
61.0
HLE
14.4
9.8
10.9
SWE-bench Verified
59.2
22.0
34.0
τ²-Bench
79.5
49.0
47.7
BrowseComp
42.8
2.29
28.3
最終更新
役に立ちましたか?

