PyTorch 发布 Miles:原生大模型强化学习后训练框架
随着大语言模型(LLM)规模向万亿参数演进,并广泛采用混合专家(MoE)架构,强化学习(RL)已成为模型后训练的核心环节。然而,当模型跨越 NVIDIA Blackwell 和 Hopper 等专用硬件,并在大规模分布式集群上运行时,RL 训练已不再仅仅是简单的训练循环,而演变为一个复杂的分布式系统问题。
为了解决这一挑战,PyTorch 联合 RadixArk 推出了开源框架 Miles。Miles 旨在让前沿规模的 LLM RL 训练更具可组合性、可复现性,并降低运维难度。
核心架构:小核心,多组件
Miles 遵循“小核心,多组件”(small-core, many-edges)的哲学设计,将用户最常修改的部分(如采样逻辑、奖励计算、损失函数等)封装为可插拔的 Python 模块,使研究人员和基础设施团队无需分叉框架即可快速适配新算法。
其底层由四大核心系统深度集成组成:
- SGLang:负责高吞吐度的采样生成(Rollout),利用其高效的 KV Cache 管理。
- Megatron-LM:作为生产级的分布式训练后端,直接对接 Megatron 的参数解析、模型构建及并行原语,支持前沿规模的 Dense 和 MoE 训练。
- Ray:负责集群编排、Actor 生命周期管理、调度及监督,提供原生的故障恢复与日志聚合能力。
- PyTorch:作为贯穿整个栈的共同编程与数值层,提供模型定义、自动求导、分布式原语及数据类型支持。
关键技术突破
1. 无缝的 MoE 路由对齐
Miles 解决了 MoE 模型在采样(Rollout)与训练(Training)阶段路由行为不一致的难题。通过统一的低精度配方(Low-precision recipes)和 MoE 感知机制,确保路由逻辑在生成和更新权重时保持高度同步。
2. 高性能的异步流水线
利用 Ray 的持久化 Actor 模型,Miles 支持完全异步的 RL 模式。采样 Actor 持续将样本流式送入队列,训练器按自身节奏消费,消除了传统同步模式中的阻塞等待,极大提升了系统吞吐量。
3. 智能的权重同步与容错
Miles 内置了针对 NVIDIA NCCL/RDMA 的快速权重同步通道,并支持 Rack-aware 的节点放置策略。这使得系统能够区分单卡故障与整机架问题,实现长周期(如数周)任务的自动恢复与持续运行。
实际价值
对于开发者而言,Miles 将复杂的分布式系统编排抽象化,使得构建大规模 LLM RL 系统变得像调用 API 一样简单。对于用户而言,它提供了开箱即用的可观测性(Observability)和故障容错能力,无需额外搭建复杂的监控基础设施即可应对生产环境的不确定性。
“Miles 的目标很简单:让大规模 LLM RL 训练更加易于构建、复现和扩展,同时保持核心训练器足够小巧,供研究人员和基础设施团队进行深度定制。” —— PyTorch/RadixArk 团队