NVIDIA AI 发布 Molt:一个 PyTorch 原生的智能体强化学习框架
NVIDIA
NVIDIA 的 NeMo 团队在 Apache 2.0 许可下开源了 Molt,一个紧凑的 PyTorch 原生智能体强化学习框架,包含约 8.6K 行强化学习代码,旨在通过组合 Ray、vLLM 和 NVIDIA AutoModel 来减少研究人员的开销,而无需分叉,并支持正确性不变量,如令牌身份和回放路由。随附的配方假定使用 2 节点 8 个 H100 GPU,面向前沿实验室和相邻实验室。
NVIDIA的NeMo团队发布了Molt,这是一个PyTorch原生的智能体强化学习框架,旨在减少不断修改RL算法的研究开销。代码库有意保持紧凑——RL代码约8.6K行,相比之下verl约62K行,slime约25K行——这样研究人员和AI编码助手就能完全掌握它。Molt可在Apache 2.0许可下部署,附带启动代码、Slurm脚本和预构建容器,但论文将其定位为研究基础设施,而非生产服务。随附的配方假设使用2个节点,每个节点8块H100 GPU,其中8块用于训练,8块用于rollout,这使得它适用于前沿实验室、资金充足的初创企业、企业研究团队以及拥有多节点H100/H200访问权限的学术实验室。Molt组合使用Ray进行任务调度和队列管理,vLLM用于rollout,以及NVIDIA AutoModel配合FSDP2进行训练——所有组件均未分叉,因此上游改进会以容器固定版本的形式引入。运行时使用一个由vLLM引擎组成的智能体池,位于请求路由器之后,并有一个单一的可训练策略actor,部分rollout会暂停引擎,并通过NCCL广播actor分片。RL运行会导出一个AgentRunner模块,通过回环服务器支持Env(符合Gymnasium的step())或ChatAgent(用户通过OpenAI或Anthropic SDK自持循环),该服务器确保token精确累积。设计正确性不变量包括token身份、策略版本语义和前向一致性;对于专家混合策略,Molt应用rollout路由重放,vLLM返回每个token的专家ID,训练前向过程会重放这些ID。吞吐量在统计上可与基于Megatron的栈相媲美,同时披露了MoE不匹配的注意事项,且同一循环可以运行密集的4B模型或700B的MoE(使用--fsdp.ep_size 256)。
来源: MarkTechPost —
原文
