蚂蚁强化学习框架又又又大幅升级了!
清华大学交叉信息学院与蚂蚁技术研究院的联合团队近日正式开源了全异步强化学习训练系统——AReaL-boba² (AReaL v0.3)。想要深入了解 AReaL 的发展历程,可以参考吴翼老师的亲自答。此次开源代码诚意十足! 本次 v0.3 版本带来了重大升级,全面实现了异步强化学习(RL)训练。新系统完全解耦了模型生成与训练过程,从而大幅提高了显卡利用率并显著提升了训练效率。基于 AReaL v0.3,团队已在代码任务上训练出新的 SOTA模型。 AReaL-boba² 原生支持多轮智能体强化学习训练。通过强化学习算法和训练系统的协同设计 (co-design),该系统在完全不影响模型效果的前提下,实现了稳定且高效的异步 RL 训练。这标志着团队正朝着全面支持 Agentic AI的最终目标不断迈进。 论文:《AReal: A Large-Scale Asynchronous Reinforcement Learning System for Language Reasoning》 该论文提出了一种名为AReaL的大规模异步强化学习(RL)系统,传统同步RL系统在训练大型语言模型(LLMs)时,因需等待批处理中最长输出完成才能进行模型更新,导致GPU利用率低下。AReaL通过完全解耦生成(rollout)和训练过程,让rollout工作节点持续生成新输出,训练工作节点则在收集到足够数据后立即更新模型,从而显著提高GPU利用率。为了保证训练稳定性,AReaL平衡了rollout和训练工作节点的负载以控制数据陈旧度,并采用了一种增强的、能处理过时样本的PPO变体。实验表明,AReaL在数学和代码推理任务上,相比同步系统,在相同GPU数量下能实现高达2.77倍的训练加速,同时保持甚至提升了最终性能。 同步RL系统的两大局限性 马尔可夫决策过程(MDP)框架$<\mathcal{S},\mathcal{A},r,P,\gamma,H>$,其中LRM实现参数化策略 $\pi_{\theta}$。优化目标为 实践中常使用$\gamma=1$且仅在最终动作上给予非零奖励的基于规则的奖励函数,并采用PPO算法进行优化,其目标函数为 其中 $u_{t}(\theta)=\frac{\pi_{\theta}(a_{t}|s_{t})}{\pi_{old}(a_{t}|s_{t})}$ 是重要性比例。 LRM的分布式训练通常在SFT之后进行,同步RL系统迭代执行生成和训练两个阶段。 同步RL系统的两大局限性:一是推理设备利用率不足,因为生成必须等待最长序列完成;二是同步RL系统扩展性差,因为将生成任务分散到所有设备导致每个GPU的解码批次减小,易陷入内存IO瓶颈。 系统架构 为解决同步系统的局限性,AReaL设计了一个完全解耦生成和训练的异步系统,旨在实现硬件高效、可扩展和灵活的RL工作流。其核心架构包含四个关键组件:1) 可中断Rollout工作节点:处理生成请求和权重更新请求;更新时会中断当前生成,丢弃旧权重计算的KV缓存,用新权重重新计算并继续未完成序列的解码,这导致轨迹可能由不同模型版本生成 。2) 奖励服务:评估模型生成响应的准确性(如代码任务中执行单元测试)。3) 训练工作节点:从重放缓冲区采样数据,达到训练批次大小后执行PPO更新,并将参数存入分布式存储;为保数据新鲜,数据仅使用一次。4) Rollout控制器:作为协调者,读取数据,调用rollout工作节点生成,将响应送至奖励服务获取奖励,将轨迹和奖励存入重放缓冲区,并在模型更新后调用rollout工作节点的权重更新。 该架构引入了两个算法挑战:一是数据陈旧性,训练批次包含来自多个先前策略版本的数据,可能降低学习性能 ;二是策略版本不一致,生成的轨迹段可能来自不同策略版本,这从根本上违反了标准PPO的假设。 解决AReaL中的算法挑战 首先,为了应对数据陈旧性,引入了**“有意识的陈旧性训练” (Staleness-Aware Training)**。关键做法是设定一个超参数 $η$ 表示训练批次中允许的最大陈旧度(相对于策略版本) 。当 $\eta=0$ 时,系统退化为同步RL 。系统通过动态控制发送给生成服务器的生成请求吞吐量来实现陈旧度控制,具体约束为 $\lfloor(N_{r}-1)/B\rfloor\le i+\eta$,其中 $N_r$ 是已生成的轨迹数, $B$ 是训练批大小, $i$ 是当前策略版本号。同时,优先从数据缓冲区中选择较旧的轨迹组成训练批次。鼓励使用较大的 $η$ 以获得最佳系统吞吐量,这也促使算法能有效利用更陈旧的数据。其次,为了解决策略版本不一致及进一步处理陈旧数据问题,采用了解耦的PPO目标函数。该目标函数将用于采样轨迹的行为策略$\pi_{behav}$ 和作为近期目标以正则化 $\pi_{\theta}$ 更新的近端策略 $\pi_{prox}$ 解耦。新的目标函数为: ...