🚀 🍓 Marco-o1:迈向开放式解决方案的开放推理模型
Marco-o1 不仅专注于像数学、物理和编码这类有标准答案、适合强化学习(RL)的学科,更着重于 开放式解决方案。我们旨在解决这个问题:“o1 模型能否有效泛化到缺乏明确标准且难以量化奖励的更广泛领域?”目前,Marco-o1 大语言模型(LLM)由 思维链(CoT)微调、蒙特卡罗树搜索(MCTS)、反思机制 和 创新推理策略 驱动,针对复杂的现实世界问题解决任务进行了优化。
🚀 快速开始
加载 Marco-o1-CoT 模型
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("AIDC-AI/Marco-o1")
model = AutoModelForCausalLM.from_pretrained("AIDC-AI/Marco-o1")
推理
执行推理脚本(你可以在其中输入任何自定义内容):
./src/talk_with_model.py
./src/talk_with_model_vllm.py
✨ 主要特性
目前,我们的工作具有以下显著特点:
- 🍀 使用 CoT 数据进行微调:我们通过使用开源的 CoT 数据集结合自主研发的合成数据对基础模型进行全参数微调,开发了 Marco-o1-CoT。
- 🍀 通过 MCTS 扩展解决方案空间:我们将大语言模型与 MCTS(Marco-o1-MCTS)集成,利用模型输出的置信度来指导搜索并扩展解决方案空间。
- 🍀 推理行动策略:我们实施了新颖的推理行动策略和反思机制(Marco-o1-MCTS Mini-Step),包括在 MCTS 框架内探索不同的行动粒度并促使模型进行自我反思,从而显著增强了模型解决复杂问题的能力。
- 🍀 在翻译任务中的应用:我们首次将大型推理模型(LRM)应用于机器翻译任务,探索了多语言和翻译领域的推理时间缩放规律。
OpenAI 最近推出了具有开创性的 o1 模型,以其卓越的推理能力而闻名。该模型在 AIME、CodeForces 等平台上表现出色,超越了其他领先模型。受此成功启发,我们旨在进一步突破大语言模型的界限,增强其推理能力以应对复杂的现实世界挑战。
Marco-o1 利用 CoT 微调、MCTS 和推理行动策略等先进技术来增强其推理能力。如图 2 所示,通过结合过滤后的 Open-O1 CoT 数据集、Marco-o1 CoT 数据集和 Marco-o1 指令数据集对 Qwen2 - 7B - Instruct 进行微调,Marco-o1 提高了对复杂任务的处理能力。MCTS 允许使用从 top - k 替代令牌的 softmax 应用对数概率得出的置信度分数来探索多条推理路径,引导模型找到最优解决方案。此外,我们的推理行动策略涉及在步骤和小步骤内改变行动粒度,以优化搜索效率和准确性。

如图 3 所示,Marco-o1 在 MGSM(英语)数据集上的准确率提高了 6.17%,在 MGSM(中文)数据集上提高了 5.60%,展示了其增强的推理能力。

此外,在翻译任务中,Marco-o1 能够出色地翻译俚语表达,例如将“这个鞋拥有踩屎感”(字面翻译:“This shoe offers a stepping - on - poop sensation.”)翻译为“This shoe has a comfortable sole”,展示了其对口语细微差别的出色把握。

如需更多信息,请访问我们的 Github。
👨🏻💻 致谢
主要贡献者
来自阿里巴巴国际数字商业 AI 业务的 MarcoPolo 团队:
引用
如果您发现 Marco-o1 对您的研究和应用有用,请引用:
@misc{zhao2024marcoo1openreasoningmodels,
title={Marco-o1: Towards Open Reasoning Models for Open-Ended Solutions},
author={Yu Zhao and Huifeng Yin and Bo Zeng and Hao Wang and Tianqi Shi and Chenyang Lyu and Longyue Wang and Weihua Luo and Kaifu Zhang},
year={2024},
eprint={2411.14405},
archivePrefix={arXiv},
primaryClass={cs.CL},
url={https://arxiv.org/abs/2411.14405},
}
📄 许可证
本项目遵循 Apache License Version 2(SPDX - License - identifier: Apache - 2.0)许可。
免责声明
我们在训练过程中使用了合规性检查算法,以尽最大努力确保训练的模型和数据集的合规性。由于数据复杂且语言模型使用场景多样,我们不能保证模型完全没有版权问题或不当内容。如果您认为有任何内容侵犯了您的权利或产生了不当内容,请联系我们,我们将及时处理。
⚠️ 重要提示
我们想强调的是,这项研究工作受到了 OpenAI 的 o1 的启发(名称也由此而来)。这项工作旨在探索潜在方法,为目前尚不明确的大型推理模型技术路线提供思路。此外,我们专注于开放式问题,并在多语言应用中观察到了有趣的现象。然而,我们必须承认,当前模型主要表现出类似 o1 的推理特征,其性能仍未达到一个完全成熟的“o1”模型。这不是一次性的努力,我们将继续致力于持续优化和改进。