Open R1 更新3 在代码领域使用R1的教训

在过去的几周里,我们主要致力于复现 DeepSeek-R1 配方中 competitive programming(代码推理)的部分。 从 R1 轨迹训练代码模型中获得的经验教训 在创建 OlympicCoder 模型时,我们进行了大量的 SFT 实验,以了解应用于 CodeForces 数据集的各种过滤器的作用。我们发现 open-r1/codeforces-cots 的以下子集给出了最佳的整体性能: solutions:R1 根据问题陈述生成的解决方案。 solutions_w_editorials:R1 根据问题陈述和解释(解释了正确的解决方案)生成的解决方案。 请注意,我们只关注了 C++ 解决方案,但如果混合使用 Python 解决方案,可能会进一步提高性能。我们使用 LiveCodeBench 作为我们模型的试验平台,然后通过更难的 IOI 基准测试运行性能最佳的检查点。我们测试了各种超参数配置来训练我们的模型,并确定了以下配置: 模型:Qwen2.5 Coder Instruct 7B 和 32B Epochs: 10 Effective batch size: 128 Learning rate: 4e-5 Scheduler: Cosine with a decay to 10% of the peak learning rate Context size: 32,768 tokens for 7B 和 22,528 tokens for 32B 下面我们分享一些从在 R1 推理轨迹上调整 Qwen2.5 Coder 模型中获得的经验教训。 ...

March 12, 2025 · 小茄墩