🚀 DeepCoder-14B-Preview-exl2
DeepCoder-14B-Preview-exl2は、コード生成に特化したモデルです。このモデルは、強化学習を用いて長いコンテキストに対応するように調整されており、コード生成の精度を向上させています。
🚀 クイックスタート
このモデルは、様々な高性能推論システムを使用してサービングすることができます。以下に、使用可能なシステムを示します。
- vLLM
- Hugging Face Text Generation Inference (TGI)
- SGLang
- TensorRT-LLM
これらのシステムはすべて、OpenAI Chat Completions API形式をサポートしています。
✨ 主な機能
- 高精度なコード生成:LiveCodeBench v5で60.6%のPass@1精度を達成し、ベースモデルよりも8%向上しています。
- 長いコンテキスト対応:強化学習を用いて長いコンテキストに対応するように調整されており、64Kのコンテキストでの推論にも対応しています。
- 高性能推論システム対応:vLLM、Hugging Face Text Generation Inference (TGI)、SGLang、TensorRT-LLMなどの高性能推論システムを使用してサービングすることができます。
📦 インストール
READMEに具体的なインストール手順が記載されていないため、このセクションをスキップします。
💻 使用例
READMEに具体的なコード例が記載されていないため、このセクションをスキップします。
📚 ドキュメント
モデルの概要
DeepCoder-14B-Previewは、DeepSeek-R1-Distilled-Qwen-14Bをベースに、分散強化学習を用いて長いコンテキストに対応するように調整されたモデルです。このモデルは、LiveCodeBench v5で60.6%のPass@1精度を達成し、ベースモデルよりも8%向上しています。また、たった14Bのパラメータで、OpenAIのo3-miniと同程度の性能を達成しています。
データ
訓練データセットは、以下のデータセットから約24Kの一意の問題 - テストペアを収集して構成されています。
- Taco-Verified
- PrimeIntellect SYNTHETIC-1
- LiveCodeBench v5 (5/1/23 - 7/31/24)
訓練方法
訓練方法は、DeepScaleRで導入された改良版の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-14B-Preview
は、LiveCodeBench (LCBv5)、Codeforces、HumanEval+などの様々なコーディングベンチマークで評価されています。
モデル |
LCB (v5)(8/1/24 - 2/1/25) |
Codeforces Rating |
Codeforces Percentile |
HumanEval+ |
DeepCoder-14B-Preview (ours) |
60.6 |
1936 |
95.3 |
92.6 |
DeepSeek-R1-Distill-Qwen-14B |
53.0 |
1791 |
92.7 |
92.0 |
O1-2024-12-17 (Low) |
59.5 |
1991 |
96.1 |
90.8 |
O3-Mini-2025-1-31 (Low) |
60.9 |
1918 |
94.9 |
92.6 |
O1-Preview |
42.7 |
1658 |
88.5 |
89 |
Deepseek-R1 |
62.8 |
1948 |
95.4 |
92.6 |
Llama-4-Behemoth |
49.4 |
- |
- |
- |
使用推奨事項
使用推奨事項は、R1およびR1 Distillシリーズと同様です。
- システムプロンプトを追加しないでください。すべての指示はユーザープロンプト内に含める必要があります。
temperature = 0.6
top_p = 0.95
- このモデルは、
max_tokens
を少なくとも64000
に設定すると最適な性能を発揮します。
🔧 技術詳細
モデルの構成
量子化
量子化に関する注意事項
- Exllamav2 0.2.8を使用し、デフォルトのデータセットで作成されています。
- TabbyAPI、Text-Generation-WebUIで使用することができ、WindowsではRTX GPU、LinuxではRTX/ROCmが必要です。
- RAMオフロードはネイティブでサポートされていないため、GPU VRAMに収まるようにしてください。
- 4 - 5bpwの量子化には、少なくとも12GBのGPUを推奨します。
📄 ライセンス
このプロジェクトはMITライセンスの下で公開されており、オープンでアクセス可能なAI開発への取り組みを反映しています。私たちは、誰もが自由に使用、変更、拡張できるようにすることで、AI技術を民主化することを信じています。この許容的なライセンスにより、世界中の研究者、開発者、エンス enthusiastが制限なく私たちの成果を活用し、拡張することができ、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}
}