🐳DeepSeek-V3-0324:ローカルでの実行方法
当社の精度を回復する動的量子化を使って DeepSeek-V3-0324 をローカルで実行する方法。
ご参照ください https://docs.unsloth.ai/basics/deepseek-r1-0528-how-to-run-locally (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億パラメータのモデルをローカルでどのように実行するのでしょうか?
DeepSeek V3の元のアップロードはfloat8で、715GBを要します。Q4_K_Mを使うとファイルサイズが約404GBに半減し、我々の動的1.78ビット量子化では約151GBに収まります。 サイズと精度のバランスを取るために、2.7ビット量子化の使用をお勧めします!2.4ビット版もよく機能します!
⚙️ 公式推奨設定
によれば、 DeepSeek、これらが推論の推奨設定です:
温度(Temperature)0.3 (コーディングではおそらく0.0) ここで見られるように)
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を実行する方法
最新の
llama.cppを GitHub で入手できます。下のビルド手順に従うこともできます。変更してください-DGGML_CUDA=ONから-DGGML_CUDA=OFFGPU がない場合や CPU 推論のみを行いたい場合は。
注意:GPU向けに -DGGML_CUDA=ON を使用するとコンパイルに5分かかる場合があります。CPUのみだと1分でコンパイルできます。llama.cppの事前コンパイル済みバイナリに興味があるかもしれません。
(以下をインストールした後に)モデルをダウンロードします
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-GGUF
DeepSeek R1向けの1.58ビット動的量子化で説明したように、UnslothのFlappy Birdテストを実行してください。
編集
--threads 32でCPUスレッド数を編集できます、--ctx-size 16384でコンテキスト長を、--n-gpu-layers 2で何層をGPUにオフロードするかを指定します。GPUがメモリ不足になる場合は調整してみてください。CPUのみの推論の場合はこれを削除してください。

DeepSeek-R1と同様に、V3は61層あります。例えば24GB GPUや80GB GPUでは、切り下げ後にオフロードできることが期待できます(メモリ不足になる場合は1層減らしてください):
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テストで試すこともできます、 r/Localllama


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

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

オリジナルのfloat8
容量がわずか230GBの動的2.7ビット量子化は、実際に七角形パズルを解くことに成功しました!3つのバージョンすべて(完全なfp8を含む)のフル出力は以下です:
🕵️ 追加の発見とヒント
経験的なテストでは、KVキャッシュ量子化を低いビット(4ビット)にすると生成品質が低下するように見えました — さらなるテストが必要ですが、我々は以下の使用を推奨します
q8_0キャッシュ量子化。量子化の目的は、KVキャッシュがかなりのメモリを使用するため、より長いコンテキスト長をサポートすることです。我々は
down_projこのモデルにおいて量子化に非常に敏感であることを発見しました。いくつかの動的量子化をやり直す必要があり、2ビットを使っていたものをdown_projとして、これらの行列すべてに対して最小で3ビットを使用するようにしました。使用すると、
llama.cppのFlash Attentionバックエンドはデコード速度がやや速くなる結果となります。コンパイル時には-DGGML_CUDA_FA_ALL_QUANTS=ONを使用してください。また、CUDAアーキテクチャは次の場所で確認したものを設定するのが最良です https://developer.nvidia.com/cuda-gpus コンパイル時間を短縮するために、それから次のように設定します-DCMAKE_CUDA_ARCHITECTURES="80"使用する
min_p=0.01で十分でしょう。llama.cppデフォルトは0.1で、おそらく必要ありません。温度が0.3に設定されているため、低確率トークンをサンプリングする可能性は非常に低く、非常にあり得ないトークンを除去するのは良い考えです。DeepSeekはコーディングタスクには温度0.0を推奨しています。
最終更新
役に立ちましたか?


