OpenR 是一个开源框架,旨在利用大型语言模型进行高级推理。项目由 Openreasoner 团队维护,采用 MIT 许可证发布。
主要用途:为大型语言模型的高级推理提供开源框架,支持过程奖励模型、MCTS 推理及相关训练与评估。
主要能力:
- 提供数据集 MATH-APS(项目自有数据集)和过程奖励模型 MATH-psa;
- 支持 MCTS 推理(2024 年 10 月 24 日新增);
- 提供基准测试(Benchmark);
- 支持 RL 训练与搜索策略的评估;
- 项目资源包括论文、教程、代码、文档、数据、模型、问题追踪和演示页面(ModelScope 演示页于 2024 年 11 月 29 日添加)。
使用方式:
- 下载所需基础模型:Qwen2.5-Math-1.5B-Instruct、Qwen2.5-Math-7B-Instruct、peiyi9979/mistral-7b-sft、peiyi9979/math-shepherd-mistral-7b-prm。可参考 Hugging Face 模型下载教程,并确保所有模型按项目设置保存在对应目录中。
- 在运行推理前,修改 reason/llm_service/ 下脚本中的变量:$MODEL_BASE(模型存储目录)、$POLICY_MODEL_NAME(策略模型名称)、$VALUE_MODEL_NAME(价值模型名称)、$NUM_LM_WORKER(启动的语言模型工作进程数)、$NUM_RM_WORKER(启动的奖励模型工作进程数)。
- 准备并运行不同技术的推理。例如,为 Math Shepherd 模型启动 LM 和 RM 服务可运行相应命令;终止服务进程推荐使用相应命令。注意脚本中的输入(--LM、--RM)应与待启动工作进程中的变量($POLICY_MODEL_NAME、$VALUE_MODEL_NAME)保持一致。
- 训练前,修改 train/mat/scripts/train_llm.sh 中的 $dataset_path、$model_name_or_path 和 $prm_name_or_path。
适用场景:数学推理相关研究、过程奖励模型训练与评估、MCTS 推理实验、RL 训练与搜索策略评估等。项目还列出了相关参考文献,涵盖推理时计算、从结果监督到过程监督、数据获取等方向。
限制:资料未提供具体的性能指标、收费信息、平台兼容性细节或完整的安装命令。使用前需自行下载并配置基础模型。项目欢迎社区贡献,包括代码、回答问题、帮助他人、完善文档和分享项目。