复刻 OpenAI o1 推理大模型,开源界传来最新进展:
LLaMA 版 o1 项目刚刚发布,来自上海 AI Lab 团队。
简介中明确:使用了蒙特卡洛树搜索,Self-Play 强化学习,PPO,以及 AlphaGo Zero 的双重策略范式(先验策略 + 价值评估)。
在 2024 年 6 月,o1 发布之前,团队就开始探索蒙特卡洛树搜索提高大模型数学能力,积累了一些关注。
这次最新开源代码,也在开发者社区引起热议。
OpenAI o1 系列发布后,团队开始升级算法,专注于数学奥赛问题,作为 OpenAI 草莓项目的开源版本。
10 月初,团队上传新论文,使用成对优化(不直接给出绝对分数,而是比较两个答案的相对优劣)提高 Llama 模型数学奥赛能力。
在最难的 AIME2024 基准测试 30 道题中,原版 LLaMA-3.1-8B-Instruct 做对 2 道,优化后做对 8 道,超过了除 o1-preview 和 o1-mini 之外的其他商业闭源方案。
10 月底,团队宣布在基于 AlphaGo Zero 架构复刻 OpenAI o1 的努力中取得了重大进展:
已成功使模型在学习过程中通过与搜索树交互获得高级思维能力,无需人工标注。
不到一周时间,项目便开源了。
LLaMA 版 o1 最新进展
目前已开源内容包括:预训练数据集、预训练模型、强化学习训练代码。
OpenLongCoT-Pretrain 数据集,包含 10 万 + 条长思维链数据。
每条数据包含一个完整的数学问题推理过程,包含思考内容和评分结果。
例如一个几何问题,包含了问题描述、图形坐标、计算过程和结论推导等完整的推理链路,以及对各个推理步骤的批评和验证内容,对推理过程进行评价和指导。
在此数据集继续预训练后,模型可读取和输出类似 o1 的长思维链过程。
预训练代码尚未发布,目前推荐使用 LLaMaFactory 代替。
有意思的是虽然项目名为 LLaMA-O1,但目前官方给的预训练模型基于谷歌 Gemma 2。
目前在预训练模型基础上,可以继续进行强化学习训练,从代码中可以看出训练过程如下:
-
使用蒙特卡洛树搜索进行自我对弈 (self-play) 以生成经验
-
将经验存储在优先经验回放缓冲区中
-
从缓冲区采样批次数据进行训练
-
更新模型参数和经验优先级
论文中也给出了训练过程的图示。
同时训练代码中使用了以下关键技术点:
-
使用 LoRA 进行参数高效微调
-
使用 PPO 算法作为策略优化方法
-
实现了 GAE (Generalized Advantage Estimation) 算法用于计算优势函数
-
使用优先经验回放提高训练效率
最后,LLaMA-O1 代码发布在名为 SimpleBerry 的 GitHub 账号下,并没有特别简介,还比较神秘。
其他与 SimpleBerry 有关的账号和官网中,只能看出性质是一个研究实验室,也并未透露更多研究方向信息。
其他 o1 复刻项目进展
除 LLaMA-O1 之外,另一个公开进展的 o1 复刻项目 O1-Journey 来自上交大团队。
团队在十月初发布了第一份进展报告,其中介绍了创新 Journey Learning 范式,以及第一个成功将搜索和学习整合到数学推理中的模型。
O1-Journey 核心开发团队主要由上交大大三、大四本科生,以及上交大 GAIR 实验室(生成式人工智能研究实验室)的一年级博士生组成。
指导教师包括上交大副教授刘鹏飞,姚班校友、斯隆奖得主李远志等。
LLaMA-O1:
-
https://github.com/SimpleBerry/LLaMA-O1
相关论文:
-
https://arxiv.org/abs/2406.07394
-
https://arxiv.org/abs/2410.02884
O1-Journey:
-
https://github.com/GAIR-NLP/O1-Journey/
本文来自微信公众号:量子位(ID:QbitAI),作者:梦晨,原标题《Llama 版 o1 来了,来自上海 AI Lab,强化学习代码已开源,基于 AlphaGo Zero 范式》