
中国のAI企業がリリースしたDeepSeek-R1は、OpenAIの推論モデル・o1相当の性能を持ちながら、モデルデータがオープンソースとして公開されていることが特徴です。ダニエル・ハン氏とマイケル・ハン氏の兄弟2人で運用されるAI開発チームのunslothが、DeepSeek-R1のモデルを一般ユーザーでもより使いやすくするため、「動的量子化」という手法によって大幅に規模を圧縮することに成功したと報告しています。
Run DeepSeek-R1 Dynamic 1.58-bit
https://unsloth.ai/blog/deepseekr1-dynamic
量子化とは、データの精度を落とすことでそのサイズを小さくする技術です。例えば、32ビット浮動小数点(FP32)では0.123456といった細かい数値を表現できますが、これを8ビット整数(INT8)に変換すると0から255の整数に変換されます。もちろん精度は失われますが、その代わりにデータサイズは4分の1になります。
量子化によって、メモリ使用量が削減されたり、計算速度が向上したり、消費電力を削減してより効率的な計算を可能になったりします。ただし、過度な量子化は精度の低下を招く必要があるため、適切なバランスが求められます。
unsllothはDeepSeek-R1のアーキテクチャを分析した上で、モデルの各部分に対して異なる圧縮率で量子化する「動的量子化」を行ったとのこと。これにより、元のモデルサイズが720GBであったのが131GBにまで、約80%の削減を実現することに成功したとunslothは報告しています。

例えば、全体の重みの0.5%を占めるモデルの最初の3層は非常に重要な役割を果たすため、4ビットあるいは6ビットで量子化されています。また、Mixture of Experts(MoE)層で使用される複数の「専門家(Experts)」モデルは全体の重みの1.5%を占めており、6ビットで量子化されています。さらにAttention機構のモジュールは、モデルの性能に重要な影響を与えるため、4ビットあるいは6ビットで量子化されているとのこと。
特に演算において重要な処理を担う「down_proj」というレイヤーは比較的高い精度で量子化されているそうです。unslothが動的量子化したDeepSeek-R1には、「1.58ビット版(モデルサイズ131GB)」「1.73ビット版(モデルサイズ158GB)」「2.22ビット版(モデルサイズ183GB)」「2.51ビット版(モデルサイズ212GB)」の4種類があり、down_projレイヤーはそれぞれにおいて異なる設定で量子化されています。
そして、全体の重みの約88%を占めるレイヤーについては、1.58ビットという低い精度で量子化することで、大幅なサイズ削減を実現しているとのこと。すべてのレイヤーを同じように量子化すると、無限ループや意味不明な出力といった問題が発生しますが、動的量子化によってこうした問題が回避されているとunslothは述べています。
動的量子化されたDeepSeek-R1は、VRAMとRAMが合計80GB以上の環境で最適に動作したとのこと。具体的な性能として、スループットで毎秒140トークン、単一ユーザーの推論で毎秒14トークンを達成したそうです。GPUがなくても20GBのRAMがあれば動作可能ですが、その場合は処理速度が遅くなります。
検証のため、unslothはFlappy Bird風ゲームのコード作成を行わせ、各モデルの性能を評価しました。その結果、1.58ビット版でも十分に実用的な性能を保持していることが確認されたとunslothは報告しています。

動的量子化したモデル(Dynamic)とすべてのレイヤーを同じように量子化したモデル(Basic)でのパフォーマンス比較結果は以下のページで公開されています。
DeepSeek-R1 Dynamic 1.58-bit | Unsloth Documentation
https://docs.unsloth.ai/basics/deepseek-r1-dynamic-1.58-bit
unslothが動的量子化した4モデルは以下のHugging Faceで公開されており、llama.cppやOllama、vLLMなどさまざまなフレームワークで利用可能です。
unsloth/DeepSeek-R1-GGUF at main:1.58ビット版(モデルサイズ131GB)
https://huggingface.co/unsloth/DeepSeek-R1-GGUF/tree/main/DeepSeek-R1-UD-IQ1_S
unsloth/DeepSeek-R1-GGUF at main:1.73ビット版(モデルサイズ158GB)
https://huggingface.co/unsloth/DeepSeek-R1-GGUF/tree/main/DeepSeek-R1-UD-IQ1_M
unsloth/DeepSeek-R1-GGUF at main:2.22ビット版(モデルサイズ183GB)
https://huggingface.co/unsloth/DeepSeek-R1-GGUF/tree/main/DeepSeek-R1-UD-IQ2_XXS
unsloth/DeepSeek-R1-GGUF at main:2.51ビット版(モデルサイズ212GB)
https://huggingface.co/unsloth/DeepSeek-R1-GGUF/tree/main/DeepSeek-R1-UD-Q2_K_XL