模型简介
模型特点
模型能力
使用案例
🚀 Open Reasoner Zero
Open Reasoner Zero 是首个面向大规模推理的强化学习训练的开源实现方案,聚焦于可扩展性、简易性和可访问性。使用与 DeepSeek - R1 - Zero - Qwen - 32B 相同的基础模型,在多个基准测试中表现卓越,同时效率惊人。
🚀 快速开始
数据
我们将所有精心整理的高质量训练数据发布在 data
文件夹中:
- 精心整理的 129k 数据:
- 困难 13k,从 ORZ - 32B 训练的第一阶段挖掘而来。
数据收集的详细信息在我们的 论文 中有描述。
安装与训练脚本
我们在 docker 文件夹中发布了 Dockerfile,以方便复现我们的训练。
要安装软件包,请运行:
pip install -e .
启动 ORZ - 32B PPO 训练
以下是在 16 个节点上的启动命令。
首先在主节点上运行:
ray start --head
# 你将看到如下日志:
# Next steps
# To add another node to this Ray cluster, run
# ray start --address='<master-node-ip>:<master-node-port>'
然后在所有其他节点上运行:
ray start --address='<master-node-ip>:<master-node-port>' # <master-node-ip> 和 <master-node-port> 来自上述日志!
最后在主节点上运行:
python -m playground.orz_32b_ppo
训练日志将显示在主节点终端中。
启动 ORZ - 0.5B PPO 训练
你可以在单个 A800/H800 节点上启动 ORZ - 0.5B PPO 训练:
python -m playground.orz_0p5b_ppo
你甚至可以在 单个 A800/H800 GPU 上运行:
python -m playground.orz_0p5b_ppo_1gpu
注意:由于不是多节点设置,不需要 ray start
相关逻辑。
启动 ORZ - 7B PPO 训练
在 4 个节点上进行多节点训练:
# 为多节点训练进行设置
ray start --head # 在主节点上
ray start --address='<master-node-ip>:<master-node-port>' # 然后在其他节点上
# 然后在主节点上运行:
python -m playground.orz_7b_ppo
训练日志将显示在主节点终端中。
启动 ORZ - 1.5B PPO 训练
在 2 个节点上进行多节点训练:
# 为多节点训练进行设置
ray start --head # 在主节点上
ray start --address='<master-node-ip>:<master-node-port>' # 然后在其他节点上
# 然后在主节点上运行:
python -m playground.orz_1p5b_ppo
调试设置
在代码中,我们预留了一个环境变量 DEBUG_MODE
,供研究人员在调试设置下进行迭代。(目前,我们建议使用 python -m playground.orz_0p5b_ppo_1gpu
进行调试。)
调试运行命令示例:
# 注意:仅用于调试,非最终设置!
## 在单个 GPU 上使用 `EleutherAI/pythia - 14m` 进行调试命令
DEBUG_MODE=True python -m playground.orz_14m_ppo_mini
## 在单个节点(8 个 GPU)上使用 `Qwen/Qwen2.5 - 7B` 进行调试命令
DEBUG_MODE=True python -m playground.orz_7b_ppo
如何使用模型
策略模型
策略模型可以像 transformers 和 vllm 中的任何聊天模型一样使用,因为我们已经将聊天模板 jinja 放入了分词器中。
评判模型
评判模型可以像 训练代码 中那样加载。
✨ 主要特性
- 采用单控制器训练器设计,灵活且对研究人员友好。
- 将训练和生成操作置于同一 GPU 中,以最大化 GPU 利用率。
📦 安装指南
我们在 docker 文件夹中提供了 Dockerfile 以方便复现训练。安装软件包的命令如下:
pip install -e .
📚 详细文档
概述 🌊
我们推出了 Open - Reasoner - Zero,这是首个面向大规模推理的强化学习训练的开源实现,专注于可扩展性、简易性和可访问性。使用与 DeepSeek - R1 - Zero - Qwen - 32B 相同的基础模型,我们的实现方案在 AIME2024、MATH500 和 GPQA Diamond 基准测试中取得了卓越的性能,同时展现出惊人的效率 —— 与 DeepSeek - R1 - Zero 管道相比,仅需十分之一的训练步骤。
为了让更多人参与到这个重要时刻,并加速迈向通用人工智能 (AGI) 的研究,我们发布了源代码、参数设置、训练数据和模型权重。有关不同模型大小的更多见解,请参考我们的 论文。
让 Reasoner - Zero 的浪潮崛起!
主要结果 🏆
图 1 | Open - Reasoner - Zero - {7B, 32B} 的评估性能。Open - Reasoner - Zero - {7B, 32B} 在训练期间在基准测试(16 个响应的平均值)上的评估性能。使用与 DeepSeek - R1 - Zero - Qwen - 32B 相同的基础模型,Open - Reasoner - Zero - 32B 在 AIME2024、MATH500 和 GPQA Diamond 基准测试中取得了卓越的性能,仅需十分之一的训练步骤。
图 2 | Open - Reasoner - Zero (ORZ) - {0.5B, 1.5B, 7B, 32B} 的训练奖励和响应长度的训练时间扩展。训练奖励和响应长度稳步增加,表明在不同模型大小上具有一致的可扩展性。有趣的是,ORZ - 32B 的响应长度出现波动,但并未对训练稳定性产生负面影响,凸显了我们极简配方的鲁棒性。
版本发布 📦
[2025/03/31]
我们宣布 Open - Reasoner - Zero
取得了一个重要里程碑:
- 🌊 更新后的论文,包含新的结果。
- 🔭 易于使用的训练脚本:
- ORZ - 1.5B 训练脚本 和 ORZ - 0.5B 训练脚本(图 2 中的主要结果)。
- 最小资源训练脚本:ORZ - 0.5B 可以在单个 A800/H800 GPU 上运行!
- 🤩 更新后的精选数据集:
- 🤗 更多 HF 模型:
- 更新后的 HF 模型:
Open - Reasoner - Zero - 7B
和Open - Reasoner - Zero - 32B
。 - 发布的 HF 模型:
Open - Reasoner - Zero - 1.5B
和Open - Reasoner - Zero - 0.5B
。
- 更新后的 HF 模型:
- 🚀 用于深入研究的全套评判模型:
Open - Reasoner - Zero - Critic -
{0.5B, 1.5B, 7B, 32B}。
[2025/02/18]
我们发布了 Open - Reasoner - Zero
。
作为此次发布的一部分,我们开源了:
- 🌊 论文,关于我们在 Reasoner - Zero 训练中的全面分析和见解。
- 🤗 HF 模型
Open - Reasoner - Zero - 7B
和Open - Reasoner - Zero - 32B
。 - 🎁 我们精心整理的 57k 训练数据。
- 📄 训练脚本,让你开启自己的 Reasoner - Zero 之旅!
💖 致谢
- 本工作得到了 StepFun 和清华大学提供的计算资源和宝贵反馈的支持。
- 我们的训练框架基于 OpenRLHF、vllm、DeepSpeed 和 ray 构建。
- 我们的模型基于 基础模型 Qwen2.5 系列,包括 Qwen2.5 - 0.5B、Qwen2.5 - 1.5B、Qwen2.5 - 7B 和 Qwen2.5 - 32B。
- 我们感谢 Project Numina、Tulu3 和 OpenR1 - Math - 220k 提供的开源数据。
📣 招聘信息
我们正在招聘有才华的研究人员和工程师加入我们的团队。如果你对我们的项目感兴趣,并希望为推理器扩展直至通用人工智能的发展做出贡献,请随时通过 hanqer@stepfun.com 与我们联系。
🍺 社区讨论
我们有几个微信群用于讨论和分享,你可以扫描下面的二维码加入最新的群组。
📄 许可证
本项目采用 MIT 许可证。
📖 引用
@misc{hu2025openreasonerzeroopensourceapproach,
title={Open-Reasoner-Zero: An Open Source Approach to Scaling Up Reinforcement Learning on the Base Model},
author={Jingcheng Hu and Yinmin Zhang and Qi Han and Daxin Jiang and Xiangyu Zhang and Heung-Yeung Shum},
year={2025},
eprint={2503.24290},
archivePrefix={arXiv},
primaryClass={cs.LG},
url={https://arxiv.org/abs/2503.24290},
}



