🐳DeepSeek-V3-0324:ローカルでの実行方法

当社の精度を回復する動的量子化を使って DeepSeek-V3-0324 をローカルで実行する方法。

circle-info

ご参照ください https://docs.unsloth.ai/basics/deepseek-r1-0528-how-to-run-locallyarrow-up-right (2025年5月28日更新)DeepSeekをより速く、より効率的に実行する方法を学ぶために!

DeepSeekがまた動き出しました!2024年12月と2025年1月にV3、R1 Zero、R1をリリースした後、DeepSeekはV3のチェックポイント/モデルを更新し、3月のアップデートを公開しました!

DeepSeekによると、MMLU-Proは+5.3%上昇し81.2%になったとのことです。 GPQA +9.3%ポイント。AIME +19.8%、LiveCodeBench +10.0%!彼らは前のV3チェックポイントやGPT 4.5、Claude Sonnet 3.7などの他のモデルと比較したプロットを提示しました。 しかし、6710億パラメータのモデルをローカルでどのように実行するのでしょうか?

MoE ビット数
タイプ
ディスクサイズ
精度
リンク
詳細

1.78ビット

IQ1_S

173GB

了解

2.06/1.56ビット

1.93ビット

IQ1_M

183GB

公正

2.5/2.06/1.56

2.42ビット

IQ2_XXS

203GB

推奨

2.5/2.06ビット

2.71ビット

Q2_K_XL

231GB

推奨

3.5/2.5ビット

3.5ビット

Q3_K_XL

320GB

素晴らしい

4.5/3.5ビット

4.5ビット

Q4_K_XL

406GB

最高

5.5/4.5ビット

circle-check

⚙️ 公式推奨設定

によれば、 DeepSeekarrow-up-right、これらが推論の推奨設定です:

  • 温度(Temperature)0.3 (コーディングではおそらく0.0) ここで見られるようにarrow-up-right)

  • Min_Pは0.00(オプション。ただし0.01がよく機能します。llama.cppのデフォルトは0.1)

  • チャットテンプレート: <|User|>Pythonでプレイ可能なシンプルなFlappy Birdゲームを作成してください。最終的なゲームをマークダウンのセクション内に配置してください。<|Assistant|>

  • BOSトークンが <|begin▁of▁sentence|> トークナイズ時に自動的に追加されます(手動で追加しないでください!)

  • DeepSeekは以下のような システムプロンプト も使用していると述べています(オプション)—中国語です: 该助手为DeepSeek Chat,由深度求索公司创造。\n今天是3月24日,星期一。 の翻訳は: アシスタントはDeepSeek Chatで、DeepSeekによって作られました。\n今日は3月24日(月曜日)です。

  • KVキャッシュの量子化には8bitを使用してください。4bitはかなり性能が悪くなることがわかっています。

📖 チュートリアル:llama.cppでDeepSeek-V3を実行する方法

  1. 最新の llama.cppGitHub で入手arrow-up-rightできます。下のビルド手順に従うこともできます。変更してください -DGGML_CUDA=ON から -DGGML_CUDA=OFF GPU がない場合や CPU 推論のみを行いたい場合は。

circle-exclamation
  1. (以下をインストールした後に)モデルをダウンロードします pip install huggingface_hub hf_transfer )。量子化バージョンとして選べます UD-IQ1_S(ダイナミック1.78bit量子化)や他の量子化バージョンのような Q4_K_M . 我々の動的2.7ビット量子化の使用を推奨します UD-Q2_K_XL はサイズと精度のバランスをとるためです。その他のバージョンは: https://huggingface.co/unsloth/DeepSeek-V3-0324-GGUFarrow-up-right

  1. DeepSeek R1向けの1.58ビット動的量子化で説明したように、UnslothのFlappy Birdテストを実行してください。

  2. 編集 --threads 32 でCPUスレッド数を編集できます、 --ctx-size 16384 でコンテキスト長を、 --n-gpu-layers 2 で何層をGPUにオフロードするかを指定します。GPUがメモリ不足になる場合は調整してみてください。CPUのみの推論の場合はこれを削除してください。

chevron-right上記を実行すると、非常に異なる2つの結果が得られます。 標準的な2ビット版: 結果を見るにはクリック (発作に注意!) 動的2ビット版: 以下に結果を示します:hashtag

標準2ビット。背景で失敗、衝突で失敗

動的2ビット。プレイ可能なゲームの作成に成功します。
  1. DeepSeek-R1と同様に、V3は61層あります。例えば24GB GPUや80GB GPUでは、切り下げ後にオフロードできることが期待できます(メモリ不足になる場合は1層減らしてください):

量子化
ファイルサイズ
24GB GPU
80GB GPU
2x80GB GPU

1.73bit

173GB

5

25

56

2.22bit

183GB

4

22

49

2.51bit

212GB

2

19

32

Mac / Apple デバイスでの実行

Apple Metal デバイスでは --n-gpu-layers に注意してください。マシンがメモリ不足になる場合は減らしてください。128GB ユニファイドメモリのマシンなら約59レイヤーをオフロードできるはずです。

🎱 ヘプタグオン(七角形)テスト

我々はまた動的量子化を通じてテストします また、以下に従ってダイナミック量子化をHeptagonテストで試すこともできます、arrow-up-right r/Localllama

目標は七角形を回転させ、七角形内のボールが動くことです。
Cover

動的でない2ビット。失敗 - 発作警告 また!

Cover

動的2ビット。実際に七角形パズルを正しく解きます!!

Cover

オリジナルのfloat8

容量がわずか230GBの動的2.7ビット量子化は、実際に七角形パズルを解くことに成功しました!3つのバージョンすべて(完全なfp8を含む)のフル出力は以下です:

chevron-right動的2ビット七角形コードhashtag
chevron-right動的でない2ビット七角形コードhashtag
chevron-rightFloat8 七角形コードhashtag

🕵️ 追加の発見とヒント

  1. 経験的なテストでは、KVキャッシュ量子化を低いビット(4ビット)にすると生成品質が低下するように見えました — さらなるテストが必要ですが、我々は以下の使用を推奨します q8_0 キャッシュ量子化。量子化の目的は、KVキャッシュがかなりのメモリを使用するため、より長いコンテキスト長をサポートすることです。

  2. 我々は down_proj このモデルにおいて量子化に非常に敏感であることを発見しました。いくつかの動的量子化をやり直す必要があり、2ビットを使っていたものを down_proj として、これらの行列すべてに対して最小で3ビットを使用するようにしました。

  3. 使用すると、 llama.cpp のFlash Attentionバックエンドはデコード速度がやや速くなる結果となります。コンパイル時には -DGGML_CUDA_FA_ALL_QUANTS=ON を使用してください。また、CUDAアーキテクチャは次の場所で確認したものを設定するのが最良です https://developer.nvidia.com/cuda-gpusarrow-up-right コンパイル時間を短縮するために、それから次のように設定します -DCMAKE_CUDA_ARCHITECTURES="80"

  4. 使用する min_p=0.01で十分でしょう。 llama.cppデフォルトは0.1で、おそらく必要ありません。温度が0.3に設定されているため、低確率トークンをサンプリングする可能性は非常に低く、非常にあり得ないトークンを除去するのは良い考えです。DeepSeekはコーディングタスクには温度0.0を推奨しています。

最終更新

役に立ちましたか?