AREAL: A Large-Scale Asynchronous Reinforcement Learning System for Language Reasoning
AREAL: A Large-Scale Asynchronous Reinforcement Learning System for Language Reasoning
Wei Fu12, Jiaxuan Gao12, Xujie Shen2, Chen Zhu2, Zhiyu Mei12, Chuyi He2, Shusheng Xu12, Guo Wei2, Jun Mei2, Jiashu Wang23, Tongkai Yang2, Binhang Yuan3, Yi Wu12
1 IIIS, Tsinghua University, 2 Ant Research, 3 HKUST fuwth17@gmail.com, jxwuyi@gmail.com
速读
一句话结论本文提出了一个完全异步的大规模语言模型强化学习系统 AReaL,通过彻底解耦生成与训练阶段并引入陈旧度控制与解耦的 PPO 目标,在数学和代码推理任务上实现了高达 2.77 倍的训练加速,并能线性扩展至 512 张 GPU,同时保持或提升了模型的最终性能。
要解决什么问题现有的大型语言模型强化学习系统大多采用同步架构,这种做法在系统级效率上存在严重的卡点。在同步系统中,生成(rollout)和训练两个阶段在相同的 GPU 上交替进行。由于大模型在推理任务中通常会产生极长的推理序列(例如 32K 个 tokens),且不同提示词生成的输出长度差异巨大,生成阶段必须等待当前批次中最长的一个序列生成完毕,才能开始下一步的模型更新。这种等待机制导致了严重的 GPU 空闲和计算资源利用率低下。此外,同步系统在扩展规模时表现极差。为了增加并行度,同步系统会将生成任务分布到所有设备上,这反而减小了单张 GPU 上的解码批处理大小,将解码过程推入了显存输入输出受限的状态。在这种状态下,单纯增加更多的 GPU 设备已经无法带来吞吐量的提升,导致系统无法有效扩展。
怎么做的核心思路是构建一个完全异步的强化学习系统,将生成和训练彻底解耦,并部署在不同的 GPU 集群上。这种设计让生成节点可以持续不断地输出新数据,而训练节点只要收集到足够的数据就能立刻更新模型,从而绕开了同步系统中因等待长序列而导致的 GPU 空闲卡点。关键设计由四个核心部件构成:首先是可中断的生成工作节点,它负责接收提示词并生成响应。当新的模型权重训练好时,它可以被随时中断,丢弃旧权重计算的键值缓存并用新权重重新计算,然后继续解码未完成的序列。其次是奖励服务,负责在 CPU 上异步评估生成内容的准确性(如执行代码单元测试或字符串匹配),从而不阻塞 GPU 计算。第三是训练工作节点,它持续从重放缓冲区中采样数据,凑齐一个批次后执行参数更新。最后是生成控制器,作为全局调度中枢,负责在上述组件间流转数据并控制生成请求的下发。这种异步架构引入了两个致命的算法挑战:一是数据陈旧度问题,即训练数据是由旧版本模型生成的;二是策略版本不一致问题,因为生成过程可以被中断并更新权重,导致同一条轨迹的不同片段可能由不同版本的模型生成,这破坏了标准近端策略优化算法中假设所有动作由单一策略生成的数学基础。为了解决这两个挑战,作者在算法层做了两项关键改造。第一是引入陈旧度感知训练。系统通过动态控制下发给生成节点的请求吞吐量,强制限制训练批次中的数据陈旧度。假设当前策略版本为 $i$,每个训练步骤的批次大小为 $B$,允许的最大陈旧度超参为 $\eta$,系统会限制生成的轨迹总数 $Nr$ 满足以下不变量: $$Nr \leq B \times (i + \eta)$$ 通过拒绝超额的生成请求,系统确保了训练数据不会过度偏离当前模型。第二是引入解耦的 PPO 目标。作者将用于采样轨迹的行为策略与用于约束模型更新幅度的近端策略分离开来。由于维护指数移动平均参数的成本太高,系统直接使用每次模型更新步骤前的参数作为近端策略 $\pi_{\text{prox}}$,并推导出适合异步训练的更新式: $$\mathcal{L}^{\text{decoupled}}(\theta) = \mathbb{E} \left[ \min \left( u_t^{\text{behav}}(\theta) \hat{A}(s_t, a_t), \operatorname{clip}(u_t^{\text{prox}}(\theta), 1 - \epsilon, 1 + \epsilon) \hat{A}(s_t, a_t) \right) \right]$$ 其中 $u_t^{\text{behav}}(\theta)$ 是当前策略相对于行为策略的重要性比率,而 $u_t^{\text{prox}}(\theta)$ 是相对于近端策略的重要性比率。这一公式在数学上放宽了对单一策略生成数据的要求,使得由多个模型版本拼接生成的轨迹依然等价于从单一行为策略中采样,从而保证了可中断生成机制的算法正确性。在工程实现上,系统还采用了无填充的序列打包策略和动态微批次分配算法,在固定显存下平衡标记分布,进一步榨干了 GPU 的显存利用率。
效果如何实验在 64 个节点(共 512 张 H800 GPU)的集群上展开,采用 DeepSeek-R1 蒸馏的 Qwen2 系列模型,参数规模覆盖 1.5B 到 32B。训练任务包括数学推理(使用开源标准规模数据,在 AIME24 基准上评估)和代码生成(使用 DeepCoder 数据集,在 LiveCodeBench 上评估)。模型配置了 32K 个标记的最大生成长度和 16K 或 32K 的上下文长度。对比基线包括代表最先进开源强化学习框架路线的 verl、代表特定任务强基线的 DeepScaleR 和 DeepCoder,以及 AReaL 自身的同步版本。量化结果显示,在端到端训练中,AReaL 在保持甚至略微提升最终准确率的前提下,相比同步系统实现了高达 2.77 倍的训练加速。例如在数学任务上训练 1.5B 模型,AReaL 达到了与同步系统相同的首选准确率,但训练耗时缩短了一半。在扩展性测试中,AReaL 展现出近乎线性的扩展能力,最高吞吐量达到 verl 的 2.5 倍;而 verl 在 32B 模型和 32K 上下文的极端设置下直接遭遇了显存溢出失败。消融实验证明,适度的陈旧度控制(如 $\eta \leq 8$)配合解耦 PPO 目标是必须的,能在无损性能下提速 2 倍,而纯粹的无界陈旧度会导致性能崩塌;系统层面的可中断生成和动态微批次分配则分别贡献了 12% 到 17% 以及 30% 的吞吐量提升。该方法也存在一定的局限性和代价。首先,实验中推理与训练设备的比例被硬编码固定为 3:1,尚未实现根据上下文长度变化在训练中动态调整资源分配。其次,在上下文较短的任务中,由于生成吞吐量无法完全匹配训练速度,AReaL 的异步优势会有所减弱。最后,目前系统仅在单步数学和代码任务上得到了验证,尚未在多轮交互和智能体场景中测试其表现。
主要贡献
强化学习(RL)已成为训练大型语言模型(LLM)的一种流行范式,尤其是在推理任务中。有效的LLM RL需要大规模并行化,并对高效训练系统提出迫切需求。大多数现有的LLM大规模RL系统是同步的,通过在批处理设置中交替进行生成和训练,其中每个训练批次的 rollout 由相同(或最新)模型生成。这稳定了RL训练,但存在严重的系统级低效问题。生成必须等待批次中最长输出完成后再进行模型更新,导致GPU利用率低下。本文提出AReaL,一个完全异步的RL系统,完全解耦生成和训练。AReaL中的 rollout 工作者持续生成新输出而不等待,而训练工作者在收集到一批数据时更新模型。AReaL还包含一系列系统级优化,导致GPU利用率显著提高。为了稳定RL训练,AReaL平衡 rollout 和训练工作者的负载以控制数据陈旧度,并采用陈旧度增强的PPO变体来更好地处理过时的训练样本。在数学和代码推理基准上的广泛实验显示,AReaL相比同步系统实现了高达2.77倍的训练加速,并匹配或甚至改进了最终性能。
核心问题:现有同步RL系统在LLM推理训练中面临系统低效,尤其是由于输出长度变异导致的GPU空闲和并行化挑战。研究目标:开发一个完全异步的RL系统,用于大规模LRM训练,实现高GPU利用率和线性可扩展性,同时保持或提升模型性能。创新点:完全解耦生成和训练的异步架构;引入陈旧度控制和修改的PPO目标,以处理多版本样本;系统优化包括可中断 rollout、动态批处理和并行奖励服务;在数学和代码任务上实现2.57倍吞吐量提升和线性扩展至512 GPU,同时提升准确性。
背景知识/关键Observation/设计原则
RL训练初步知识
我们将问题制定在马尔可夫决策过程(MDP)框架中,由元组⟨S, A, r, P, γ, H⟩定义。这里,S表示状态空间,A表示动作空间,P表示转移模型,r : S × A → R表示奖励函数,γ表示折扣因子,H表示时域。LRM实现参数化策略πθ : S → A,其中每个动作at ∈ A对应词汇表中的文本标记。状态st ∈ S由问题s1 = q以及先前生成的响应标记(a1, .., at−1)组成,具有确定性转移st+1 = concat(st, at)。给定问题分布D,我们优化目标:
$J(\theta) = \mathbb{E}_{q \sim D, a_{1:H} \sim \pi_\theta} \left[ \sum_{t=1}^H \gamma^{t-1} r(s_t, a_t) \right]$
遵循常见实践【6,DeepSeek-AI 等人的Deepseek-r1: Incentivizing reasoning capability in llms via reinforcement learning,2025,CoRR,https://doi.org/10.48550/arXiv.2501.12948】,我们使用基于规则的奖励函数,仅在最终动作上提供非零反馈,表示答案正确性,并设置γ = 1。我们使用近端策略优化(PPO)【42,Schulman 等人的Proximal policy optimization algorithms,2017,CoRR,http://arxiv.org/abs/1707.06347】优化此目标:
$\mathcal{L}^{\text{PPO}}(\theta) = \mathbb{E} \left[ \min \left( u_t(\theta) \hat{A}(s_t, a_t), \operatorname{clip}(u_t(\theta), 1 - \epsilon, 1 + \epsilon) \hat{A}(s_t, a_t) \right) \right]$
其中ut(θ) = πθ(at|st) / πold(at|st) 表示重要性比率,Aˆ(st, at) 表示估计优势【41,Schulman 等人的High-dimensional continuous control using generalized advantage estimation,2016,ICLR,http://arxiv.org/abs/1506.02438】。遵循RL标准实践【42,Schulman 等人的Proximal policy optimization algorithms,2017,CoRR,http://arxiv.org/abs/1707.06347;33,Ouyang 等人的Training language models to follow instructions with human feedback,2022,NeurIPS】,我们将全局批次分为小批次进行顺序参数更新。
我们的工作专注于在监督微调(SFT)后增强LRM的推理能力,与激励预训练基础模型中推理的方法不同【6,DeepSeek-AI 等人的Deepseek-r1: Incentivizing reasoning capability in llms via reinforcement learning,2025,CoRR,https://doi.org/10.48550/arXiv.2501.12948】。SFT后的LRM产生长推理序列(例如,32K标记),通常需要大的全局批次大小(例如,128个提示,每个有16个响应)以实现稳定的RL训练【6,DeepSeek-AI 等人的Deepseek-r1: Incentivizing reasoning capability in llms via reinforcement learning,2025,CoRR,https://doi.org/10.48550/arXiv.2501.12948;25,Luo 等人的Deepscaler: Surpassing o1-preview with a 1.5b model by scaling rl,2025,Notion Blog;24,Luo 等人的Deepcoder: A fully open-source 14b coder at o3-mini level,2025;60,Yu 等人的DAPO: an open-source LLM reinforcement learning system at scale,2025,CoRR,https://doi.org/10.48550/arXiv.2503.14476;61,Yue 等人的Vapo: Efficient and reliable reinforcement learning for advanced reasoning tasks,2025,arXiv,https://arxiv.org/abs/2504.05118】。在同步RL系统中,两个阶段迭代执行:生成(rollout)和训练。生成阶段使用最新模型参数为训练批次中的每个查询产生多个推理轨迹。训练阶段然后基于生成的轨迹更新模型参数。这些阶段在相同GPU上迭代执行。
异步RL系统的动机
我们识别出同步RL系统的两个基本限制:
图1:同步(左)和一步重叠(右)RL系统的执行时间线,显示推理设备的利用率低下。
图2:AReaL架构,包含异步生成和训练组件。
推理设备利用率低下。如图1(左)所示,生成必须等待最长序列完成后再开始训练。这导致GPU间的解码长度不均匀,从而低利用GPU计算资源。
同步RL系统的可扩展性差。同步系统将生成分布到所有设备上,减少每个GPU的解码批次大小。这将解码过程推入内存IO绑定状态【4,Chen 等人的Sequoia: Scalable and robust speculative decoding,2024,NeurIPS,https://proceedings.neurips.cc/paper_files/paper/2024/file/ea1f5f0878d43ff4fb8bf64ef4a2326c-Paper-Conference.pdf;28,Miao 等人的Specinfer: Accelerating large language model serving with tree-based speculative inference and verification,2024,ASPLOS,https://doi.org/10.1145/3620666.3651335】,其中额外设备无法改善吞吐量。
方法细节
系统架构
第3.2节中识别的限制激励我们设计一个完全解耦生成和训练的系统,跨单独GPU集群。该系统应硬件高效、可扩展,并具有自定义RL工作流的灵活性。我们在AReaL中实现这些原则,AReaL是一个专为高效大规模LRM训练设计的异步RL系统。
系统概述
图2展示了AReaL的架构和数据流。该系统包括4个核心组件:
可中断Rollout工作者 处理两种请求:(1)生成请求,给定提示生成响应。(2)update_weights请求中断所有正在进行的生成,并加载新版本的参数。在中断时,rollout工作者丢弃由旧权重计算的KV缓存,并使用新权重重新计算它们。随后,rollout工作者继续解码未完成的序列,直到下一次中断或终止。我们强调,这种中断和飞行中权重更新会导致轨迹由不同模型版本产生的段组成。这引入了一个新的算法挑战,将在第5节中解决。
图3:AReaL中生成管理的说明。垂直线显示下一训练步骤的就绪时间。蓝色十字显示新参数到达时的中断请求。
奖励服务 评估模型生成的响应的准确性。例如,在编码任务中,此服务提取代码并执行单元测试以验证其准确性。
训练工作者 持续从重放缓冲区采样,积累数据直到达到配置的训练批次大小。然后它们执行PPO更新,并将结果参数存储在分布式存储中。为了确保数据新鲜度,重放缓冲区的数据仅使用一次。
Rollout控制器 作为rollout工作者、奖励服务和模型工作者之间的关键桥梁。在训练过程中,它从数据集读取数据并调用rollout工作者的generate请求。然后将收到的响应发送到奖励服务以获取奖励。轨迹连同奖励存储在重放缓冲区,等待模型工作者训练。在模型工作者更新参数后,控制器调用rollout工作者的update_weight。我们在图3中说明了生成和训练管理。这种异步流水线确保了生成和训练资源的持续充分利用。
算法挑战
虽然异步系统设计通过改进设备利用率提供了显著加速,但它引入了几个需要算法考虑的技术挑战。
数据陈旧度 由于AReaL的异步性质,每个训练批次包含来自多个先前策略版本的数据。先前关于异步RL训练系统的工作已证明,这种陈旧度可能降低RLHF【30,Noukhovitch 等人的Asynchronous RLHF: faster and more efficient off-policy RL for language models,2024,CoRR,https://doi.org/10.48550/arXiv.2410.18252】和游戏环境【2,Berner 等人的Dota 2 with large scale deep reinforcement learning,2019,CoRR,http://arxiv.org/abs/1912.06680】中的学习性能。数据陈旧度导致训练数据与最新模型之间的分布差距。在LRM的异步RL训练中,由于解码时间延长,此问题对于长轨迹可能更严重。
不一致的策略版本 如第4.1节所述,生成的轨迹可能涉及由不同策略版本产生的段。这种不一致从根本上违反了标准PPO在方程2中的表述,该表述假设所有动作由单一策略πold生成。
在以下部分,我们详细说明了克服这些挑战的技术创新,同时保留异步系统的效率优势。
解决AReaL中的算法挑战
陈旧度感知训练
为了避免由于训练极高陈旧度数据而导致的性能下降,我们引入超参数η,表示每个训练批次中允许的最大陈旧度。具体而言,当η = 0时,我们的系统退化为同步RL,所有训练样本由当前策略生成。我们通过动态控制发送到生成服务器的生成请求吞吐量在系统中实现陈旧度控制。给定当前策略版本i、生成的轨迹总数Nr以及每个训练步骤的训练批次大小B,我们在提交新生成请求时强制执行以下公式:
$Nr \leq B \times (i + \eta)$
我们还优先从数据缓冲区中使用较旧的轨迹来形成训练批次。在我们的系统实现中,rollout控制器从参数服务器跟踪生成的样本Nr和策略版本i。它拒绝可能违反陈旧度约束的新生成请求。
注意,这种速率限制协议在实践中是一个简单而有效的设计选择。然而,当η太小时,如果生成一些极长轨迹,生成吞吐量可能会减慢。因此,我们经验上建议采用较大的陈旧度控制参数η以获得最佳系统吞吐量。这种系统级实践也激励我们应用增强算法,以有效利用更多陈旧数据进行RL训练。
解耦PPO目标
我们应用解耦PPO目标【10,Hilton 等人的Batch size-invariance for policy optimization,2022,NeurIPS,http://papers.nips.cc/paper_files/paper/2022/hash/6ceb6c2150bbf46fd75528a6cd6be793-Abstract-Conference.html】,它分离行为策略和近端策略。行为策略πbehav表示用于采样轨迹的策略,近端策略πprox是一个近端策略,用于规范πθ的更新。通过对采样轨迹应用重要性采样,我们推导出适合异步RL训练的解耦PPO目标:
$\mathcal{L}^{\text{decoupled}}(\theta) = \mathbb{E} \left[ \min \left( u_t^{\text{behav}}(\theta) \hat{A}(s_t, a_t), \operatorname{clip}(u_t^{\text{prox}}(\theta), 1 - \epsilon, 1 + \epsilon) \hat{A}(s_t, a_t) \right) \right]$
其中uproxt (θ) = πθ(at|st) / πprox (at|st) 是相对于近端策略的重要性比率。我们为简洁省略状态-动作项。
异步PPO目标在方程5中与标准目标在方程2中的主要区别在于用于规范模型更新的近端策略πprox。在异步PPO训练中,使用行为策略作为近端策略会将最新策略πθ拉向旧版本和低质量策略,从而减慢模型改进。通过采用最近策略作为近端策略,模型更新发生在高质量近端策略πprox周围的信任区域中,从而稳定训练。
方程5中的解耦PPO目标提供了一个自然益处:它放松了对一个训练批次中所有数据必须由单一策略生成的要求。此属性对于将可中断生成与策略更新结合时维护算法正确性至关重要。我们声称轨迹中不一致的策略版本保持与单一行为策略πbehav的等价性。(见附录C的证明。)
命题1 对于由策略(πθ, . . . , πθ+k)生成的任何序列(q, a1, . . . , aH ),其中πθ+i产生标记(ati , . . . , ati+1 ),其中1 = t0 < · · · < tk+1 = H,存在行为策略πbehav,使得中断生成等价于完全从πbehav采样。
实践备注 虽然Hilton 等【10,Hilton 等人的Batch size-invariance for policy optimization,2022,NeurIPS,http://papers.nips.cc/paper_files/paper/2022/hash/6ceb6c2150bbf46fd75528a6cd6be793-Abstract-Conference.html】维护参数的指数移动平均作为πprox,但此方法对于LRM是禁止昂贵的。因此,我们简单地使用每个模型更新步骤前的参数作为πprox。方程5通过在每个训练步骤中全局批次到达时重新计算标记概率来实现。
实现
我们使用Python和PyTorch【35,Paszke 等人的Pytorch: An imperative style, high-performance deep learning library,2019,NeurIPS,https://proceedings.neurips.cc/paper/2019/hash/bdbca288fee7f92f2bfa9f7012727740-Abstract.html】实现AReaL,基于ReaLHF框架【27,Mei 等人的Realhf: Optimized RLHF training for large language models through parameter reallocation,2024,CoRR,https://doi.org/10.48550/arXiv.2406.14088】。我们的系统结合SGLang【63,Zheng 等人的Sglang: Efficient execution of structured language model programs,2024,NeurIPS,http://papers.nips.cc/paper_files/paper/2024/hash/724be4472168f31ba1c9ac630f15dec8-Abstract-Conference.html】v0.4.6用于生成服务,并使用Megatron-Core【46,Shoeybi 等人的Megatron-lm: Training multi-billion parameter language models using model parallelism,2019,CoRR,http://arxiv.org/abs/1909.08053】v0.11.0作为训练后端,由SLURM【59,Yoo 等人的SLURM: simple linux utility for resource management,2003,JSSPP,https://doi.org/10.1007/10968987_3】管理资源调度。为了最大化生成和训练阶段的吞吐量,我们实现了几个关键系统级优化,以解决流水线中的关键瓶颈。
AReaL将GPU计算与CPU操作解耦,包括基于规则的奖励计算(例如数学问题的字符串匹配或代码的单元测试执行)和基于TCP的数据传输。通过在单独线程中执行这些操作并流水线化工作流,我们将奖励计算和数据传输与后续生成请求重叠。我们使用asyncio协程在rollout工作者中并发运行多个请求,以避免相互阻塞等待。
为了处理可变长度序列的训练,我们采用无填充序列打包策略结合动态分配算法。该算法在固定内存约束下平衡微批次中的标记分布(见算法1)。此方法最大化GPU内存利用率,同时最小化所需的前向-后向传递次数。
实验环境
数据集:数学任务使用DeepScaleR【25,Luo 等人的Deepscaler: Surpassing o1-preview with a 1.5b model by scaling rl,2025,Notion Blog】的开源数据;代码训练使用DeepCoder【24,Luo 等人的Deepcoder: A fully open-source 14b coder at o3-mini level,2025】发布的数据集。规模:数学和代码任务的训练数据集为开源标准规模,用于固定PPO更新次数的训练。用途:用于评估数学推理(AIME24基准)和代码生成(LiveCodeBench基准)。
模型架构:使用DeepSeek-R1【6,DeepSeek-AI 等人的Deepseek-r1: Incentivizing reasoning capability in llms via reinforcement learning,2025,CoRR,https://doi.org/10.48550/arXiv.2501.12948】的蒸馏Qwen2模型系列【54,Yang 等人的Qwen2 technical report,2024,CoRR,https://doi.org/10.48550/arXiv.2407.10671;55,Yang 等人的Qwen2.5 technical report,2024,CoRR,https://doi.org/10.48550/arXiv.2412.15115】(R1-Distilled-Qwen),参数从1.5B到32B。关键参数:最大生成长度32K标记,每个问题采样32响应;上下文长度16K或32K(提示长度上限1K)。
硬件配置:H800 GPU集群,64节点,每节点8 GPU。节点内NVLink连接,节点间RoCE 3.2Tbps带宽。最小16节点作为基线,扩展至48节点用于32B模型。AReaL中推理和训练设备比例固定为3:1。
软件配置:Python和PyTorch;基于ReaLHF框架;生成后端SGLang v0.4.6或vLLM v0.8.4;训练后端Megatron-Core v0.11.0;资源调度SLURM;操作系统未指定,但兼容集群环境。
实验结果
实验包括三个部分:(1)与最先进开源框架在不同模型大小上的全面比较;(2)不同计算资源的强扩展分析;(3)验证设计选择的消融研究。
端到端比较:在数学推理(1.5B模型)和代码生成(14B模型)上与DeepScaleR【25】和DeepCoder【24】比较;对于7B和32B模型,使用AReaL的同步变体作为控制。结果见表1(来源:第7.2节):AReaL匹配或超过基线性能,同时训练时间减少2.77倍。例如,在AIME24上,1.5B模型的pass@1准确率为同步系统的匹配值,但训练小时减少2倍;在LiveCodeBench上,14B模型类似。分析:AReaL通过异步设计实现加速,而不牺牲性能。
可扩展性:在不同模型大小和上下文长度(16K和32K)上与verl【45,Sheng 等人的Hybridflow: A flexible and efficient RLHF framework,2025,EuroSys,https://doi.org/10.1145/3689031.3696075】比较。结果见图4(来源:第7.3节):AReaL显示近似线性扩展趋势,而同步系统通常无法有效扩展;AReaL吞吐量在大多数设置中超过基线,高达2.5倍加速。分析:对于较小上下文,AReaL优势较小,因为生成吞吐量无法匹配训练;对于长生成,AReaL更鲁棒,因为异步和可中断生成隐藏了长响应。
图4:强扩展趋势。虚线表示理想线性扩展。verl在32k上下文和32B模型上一致遇到OOM,因此数据点缺失。
算法消融:在1.5B模型上数学任务,变化最大允许陈旧度η,并比较有无解耦PPO目标。结果见图5a、5b(学习曲线,来源:第7.4节)和表2(最终性能,来源:第7.4节):朴素PPO在η>0时性能下降;解耦PPO改善稳定性,适度η(≤8)加速2倍而性能无损。分析:验证了陈旧度控制和解耦目标的必要性;无界陈旧度仍劣于零陈旧度oracle。
图5:解耦PPO目标和陈旧度控制的消融研究,使用1.5B模型在数学推理任务上。两种算法选择都是必需的。使用适度陈旧值和解耦目标,训练进度可加速超过2倍,同时保持最终评估性能。
系统消融:可中断生成:在4节点上,1.5B和7B模型吞吐量分别增加12%和17%(图6,来源:第7.5节)。动态微批分配:与标准微批相比,平均吞吐量提高30%(图7,来源:第7.5节)。分析:验证了架构设计在提高吞吐量中的作用。
图6:可中断生成的消融研究。
图7:动态微批分配的消融研究。
额外结果:表4(来源:附录B)显示AReaL模型在更多数学基准上的性能,确认一致优势。
结论
本文介绍了AReaL,一个完全异步系统,用于高效大规模强化学习(RL)训练。AReaL架构提供了实现异步算法所需的灵活性和表现力。在此基础上,我们贡献了几个算法创新,包括陈旧度感知训练和解耦PPO目标,这些创新实现了异步环境中的高效和稳定PPO训练。我们的实验结果展示了AReaL相比现有同步RL系统的优越硬件效率、样本效率和可扩展性。本工作为可靠扩展RL训练提供了起点。我们希望它能启用大规模AI系统的未来进步,进一步推动机器智能的边界。
对未来工作的展望:推理和训练设备比例可进一步优化,并可能在训练中动态调整,尤其是在上下文长度增加时;探索多轮交互和代理场景。
附录
PPO细节
我们禁用PPO中的评论者模型和参考模型。GAE中的优势估计参数λ和RL折扣因子γ固定为1。如果答案正确,最终标记的奖励为5,否则为-5。我们额外采用全局批次中的优势归一化来稳定训练。其他学习相关超参数和配置见表3。
数据集细节
对于数学任务,我们使用DeepScaleR【25,Luo 等人的Deepscaler: Surpassing o1-preview with a 1.5b model by scaling rl,2025,Notion Blog】的开源数据。对于代码训练,我们使用DeepCoder【24,Luo 等人的Deepcoder: A fully open-source 14b coder at o3-mini level,2025】发布的数据集。所有比较方法使用相同数据集。
动态批处理
动态批处理算法见算法1。
基线
在我们的实验中,我们使用verl【45,Sheng 等人的Hybridflow: A flexible and efficient RLHF framework,2025,EuroSys,https://doi.org/10.1145/3689031.3696075】的最新版本(main分支,2025年5月7日)来评估图4中的训练吞吐量和表1中的训练小时。对于大多数结果,我们使用SGLang【63,Zheng 等人的Sglang: Efficient execution of structured language model programs,2024,NeurIPS,http://papers.nips.cc/paper_files/paper/2024/hash/724be4472168f31ba1c9ac630f15dec8-Abstract-Conference.html】v0.4.6作为生成后端和PyTorch FSDP【62,Zhao 等人的Pytorch FSDP: experiences on scaling fully sharded data parallel,2023,VLDB,https://www.vldb.org/pvldb/vol16/p3848-huang.pdf】作为训练后端。在少数情况下SGLang出错(32B模型或64节点实验),我们使用vLLM【18,Kwon 等人的Efficient memory management for large language model serving with pagedattention,2023,SOSP,https://doi.org/10.1145/3600006.3613165】v0.8.4作为替代。
额外结果
我们使用AReaL训练的模型在更多数学基准上评估,结果列在表4中。
命题1的证明
命题1 对于由策略(πθ, . . . , πθ+k)生成的任何序列(q, a1, . . . , aH ),其中πθ+i产生标记(ati , . . . , ati+1 ),其中1 = t0 < · · · < tk+1 = H,存在行为策略πbehav,使得中断生成等价于完全从πbehav采样。
证明 对于问题q,让St(q)表示策略序列在步骤t遇到的状态。由于Sti (q) ∩ Stj (q) = ∅ 对于 i ≠ j,我们可以构造:
$ \pi_{\text{behav}}(a_t | s_t) = \pi_{\theta + i}(a_t | s_t) \text{ if } s_t \in S_{t_i}(q) $
限制和未来工作
我们的工作存在几个限制,建议未来研究方向。首先,推理和训练设备之间的比例可以针对特定训练设置进一步优化。此外,此比例可能受益于训练期间的动态调整,尤其是在微调预训练基础模型时上下文长度通常增加。虽然我们将评估集中在单步数学和编码任务上,但AReaL架构并非固有地限于这些领域。我们将多轮交互和代理场景的探索留给未来工作。
💬 评论讨论
欢迎在这里分享您的想法和见解!