🚀 DeepCoder-1.5B-Preview (AWQ 4bit 128g)
DeepCoder-1.5B-Previewは、分散強化学習(RL)を用いて長文脈に対応するように微調整されたコード推論用の大規模言語モデルです。このモデルにより、強化学習を用いた大規模言語モデル(RLLM)の利用が幅広く普及することが期待されます。
🚀 クイックスタート
このセクションでは、DeepCoder-1.5B-Previewの概要、データ、学習方法、評価、サービング方法、ライセンス、謝辞、引用方法について説明します。
✨ 主な機能
- 分散強化学習(RL)を用いて長文脈に対応するように微調整されたコード推論用の大規模言語モデルです。
- 様々なコーディングベンチマークで高い性能を発揮します。
- 人気の高性能推論システムを用いてサービングすることができます。
📦 インストール
READMEにインストール手順は記載されていないため、このセクションは省略します。
💻 使用例
READMEに使用例は記載されていないため、このセクションは省略します。
📚 ドキュメント
DeepCoderの概要
DeepCoder-1.5B-Previewは、DeepSeek-R1-Distilled-Qwen-1.5Bから微調整されたコード推論用の大規模言語モデルです。分散強化学習(RL)を用いて長文脈に対応するように拡張されています。
データ
学習データセットは、以下のソースから収集された約24,000の一意の問題 - テストペアで構成されています。
- Taco-Verified
- PrimeIntellect SYNTHETIC-1
- LiveCodeBench v5 (5/1/23 - 7/31/24)
学習方法
学習方法は、GRPOの改良版(GRPO+)と反復的な文脈拡張を利用しています。
GRPO+
元のGRPOアルゴリズムをDAPOのアイデアで強化し、より安定した学習を可能にします。
- オフライン難易度フィルタリング:DAPOはオンライン動的サンプリングを使用し、完全に正解または不正解のサンプルを即座に破棄します。これは効果的なバッチサイズを安定させますが、棄却サンプリングによる実行時オーバーヘッドが大きくなります。その代わり、コーディング問題のサブセットに対してオフラインで難易度フィルタリングを行い、学習データセットが適切な難易度範囲内に収まるようにします。
- エントロピー損失なし:エントロピー損失項を含めると、エントロピーが指数関数的に増加し、最終的に学習が崩壊する不安定性が生じることが多いことがわかりました。これを軽減するために、エントロピー損失を完全に排除します。
- KL損失なし:KL損失を排除することで、LLMが元のSFTモデルの信頼領域内に留まることを防ぎます。この削除により、参照ポリシーの対数確率を計算する必要もなくなり、学習が高速化されます。
- 過長フィルタリング(DAPOから):長文脈推論を維持するために、切り捨てられたシーケンスの損失をマスクします。この手法により、DeepCoderは32Kの文脈で学習されているにもかかわらず、64Kの文脈推論に一般化できます。
- Clip High(DAPOから):GRPO/PPOの代理損失の上限を引き上げることで、より多くの探索とより安定したエントロピーを促します。
反復的な文脈拡張
元のDeepscaler-1.5B-Preview
は、長文脈学習を8K→16K→24Kに拡張し、それぞれAIMEで33→38→43%の精度を達成しました。同様に、Deepcoder-14B-Preview
は16K→32Kで学習され、LiveCodeBench(v5)で54→58%の精度を達成しました。DeepCoder-14B-Preview
は、64Kの文脈で評価された場合、長文脈にうまく一般化し、60.6%に達します。
DeepCoderは、DAPOの過長フィルタリングにより、ベースの蒸留モデルよりも長文脈に対してより良く一般化します。ただし、最大長が16Kに制限されている場合、長い応答が切り捨てられることが多く、スコアが低下する可能性があります。
モデル |
16K |
32K |
64K |
DeepCoder-14B-Preview |
45.6 |
57.9 |
60.6 |
DeepSeek-R1-Distill-Qwen-14B |
50.2 |
53.0 |
53.0 |
より詳細な学習方法については、ブログ記事を参照してください。
評価
Deepcoder-1.5B-Preview
は、LiveCodeBench(LCBv5)、Codeforces、HumanEval+などの様々なコーディングベンチマークで評価されています。
モデル |
LCB (v5)(8/1/24 - 2/1/25) |
Codeforces Rating |
Codeforces Percentile |
HumanEval+ |
DeepCoder-1.5B-Preview |
25.1 |
963 |
28.5 |
73.0 |
Deepseek-R1-Distill-Qwen-1.5B |
16.9 |
615 |
1.9 |
58.3 |
サービング
このモデルは、以下の人気の高性能推論システムを用いてサービングすることができます。
- vLLM
- Hugging Face Text Generation Inference (TGI)
- SGLang
- TensorRT-LLM
これらのシステムはすべて、OpenAI Chat Completions API形式をサポートしています。
🔧 技術詳細
READMEに技術詳細に関する具体的な説明が50字以上記載されているため、このセクションでは学習方法の技術的な詳細を説明します。
GRPO+
GRPO+は、元のGRPOアルゴリズムを改良したもので、DAPOのアイデアを取り入れています。具体的には、オフライン難易度フィルタリング、エントロピー損失の排除、KL損失の排除、過長フィルタリング、Clip Highなどの手法を用いて、学習の安定性と効率を向上させています。
反復的な文脈拡張
反復的な文脈拡張は、長文脈学習を段階的に拡張する手法です。Deepscaler-1.5B-Preview
やDeepcoder-14B-Preview
では、この手法を用いて長文脈に対する一般化能力を向上させています。
📄 ライセンス
このプロジェクトはMITライセンスの下で公開されています。これは、オープンでアクセスしやすいAI開発への取り組みを反映しています。私たちは、誰もが自由に使用、変更、拡張できるようにすることで、AI技術の民主化を目指しています。この寛容なライセンスにより、世界中の研究者、開発者、愛好家が制限なく私たちの成果を活用し、拡張することができます。
謝辞
引用
@misc{deepcoder2025,
title={DeepCoder: A Fully Open-Source 14B Coder at O3-mini Level},
author={Michael Luo, Sijun Tan, Roy Huang, Ameen Patel, Alpay Ariyak, Qingyang Wu, Xiaoxiang Shi, Rachel Xin, Colin Cai, Maurice Weber, Ce Zhang, Li Erran Li, Raluca Ada Popa, Ion Stoica},
howpublished={\url{https://pretty-radio-b75.notion.site/DeepCoder-A-Fully-Open-Source-14B-Coder-at-O3-mini-Level-1cf81902c14680b3bee5eb349a512a51}},
note={Notion Blog},
year={2025}
}