Microsoft Research Asia 开源 Agent Lightning v1.0:3500 行代码的轻量级 Agent RL 框架,Qwen3.5-9B 在 SWE-bench Verified 上从 41.8% 提升到 56.4%
来源Microsoft Research查看原文
速览
- 核心主张:训练用的 agent 应与部署用的 agent 是同一个,避免重实现带来的行为偏差。
- 接入方式极简:把模型 endpoint 指向 Agent Lightning 的 proxy 即可,harness 代码不改。
- 框架约 3500 行代码,强调可读、可改、可扩展。
- 原生 Kubernetes 支持,绕开 Modal Sandbox、E2B 等按规模计费的商业沙箱。
- Qwen3.5-9B 在 SWE-bench Verified 上从 41.8% 升至 56.4%,仅用约 6000 条样本。
- Collocated Async RL 让 rollout 与训练共享 GPU,约 2 倍端到端加速。
- 指出真实 harness 训练带来四类挑战:重分词与样本合并、advantage 计算、loss 归一化、训练后端调度。
- 实验验证 rollout 级 advantage 与归一化优于 sample 级处理。
Microsoft Research Asia 推出并开源了 Agent Lightning v1.0,提出「Harnessed Agentic RL」训练范式:不再要求开发者把 Agent 在训练框架里重新实现一遍,而是让部署时使用的同一套 agent harness 直接参与强化学习。做法是在 agent 与模型之间放一个 OpenAI 兼容的 LLM proxy,agent 只需把原先调用模型 API 的 endpoint 指向 Agent Lightning,训练框架即可观测并记录其模型调用。整个框架约 3500 行代码,包含 API Gateway、Rollout Controller 和基于 verl 的 Customized Trainer 三个核心组件,原生支持 Kubernetes,agent 以标准 Kubernetes job 运行,不依赖 Modal Sandbox、E2B 等付费商业沙箱服务。在端到端编码 agent 流水线上,基于 Qwen3.5-9B、SWE-smith 和 mini-SWE-agent,仅用约 6000 条训练样本,就把 SWE-bench Verified 上的 Pass@1 从 41.8% 提升到 56.4%,绝对提升 14.6 个百分点。
关键事实
- Agent Lightning v1.0 由 Microsoft Research Asia 开源,整个框架约 3500 行代码。
- 框架提出 Harnessed Agentic RL 范式:部署时使用的 agent harness 直接参与强化学习训练,无需在训练框架内重新实现 agent。
- 实现方式是在 agent 与模型之间放置 OpenAI 兼容的 LLM proxy,agent 只需把模型 endpoint 指向 Agent Lightning 即可接入 RL 训练。
- 三个核心组件为 API Gateway、Rollout Controller 和基于 verl 的 Customized Trainer。
- 原生支持 Kubernetes,agent 以标准 Kubernetes job 运行,可使用自管理集群、云 Kubernetes 或本地基础设施,不依赖付费商业沙箱服务。
- 端到端编码 agent 流水线基于 SWE-smith、mini-SWE-agent 和 Qwen3.5-9B,训练集约 6000 条样本,无需大规模算力。
本站视角
这件事最直接的受益者是那些已经在用 mini-SWE-agent、OpenHands、Claude Code、Codex 等现成 harness 做产品的团队,尤其是国内做编码 Agent 和通用 Agent 的中小团队:过去要自己做 RL,往往得先把 agent 逻辑在 verl 之类的框架里重写一遍,工程量大、且训出来的模型与线上 agent 行为不一致;Agent Lightning v1.0 把接入成本压到「把模型 endpoint 指向它的 proxy」,同时用原生 Kubernetes 支持替代 Modal Sandbox、E2B 这类按规模计费的商业沙箱,对算力预算敏感、又已有自建 K8s 集群的团队来说,这是实打实的成本结构变化。我们的判断是,这是一次偏工程范式的实质进步,而不是营销包装:3500 行代码、开源、可复现,且它正面回应了真实 harness 训练中四个具体的技术难题(重分词与样本合并、advantage 计算、loss 归一化、后端调度),这些不是靠一句「支持 Agent RL」能糊过去的。Collocated Async RL 让 rollout 与训练共享同一组 GPU、换来约 2 倍端到端加速,对 GPU 紧张的中小团队同样有吸引力。但需要指出几点可疑之处:其一,41.8% 到 56.4% 的提升是 Microsoft Research Asia 自家实验,基于 Qwen3.5-9B、SWE-smith 与 mini-SWE-agent 的单一组合,约 6000 条样本,尚无第三方复现,把它当作通用结论为时过早;其二,SWE-bench Verified 本身是编码任务基准,这套流水线在通用 Agent、多轮工具调用等场景是否同样有效,原文没有给出证据;其三,框架基于 verl 构建,团队若已有其他训练栈,迁移成本仍需自行评估。对国内开发者而言,值得跟进的理由是它把「训练与部署一致」这件事变成了可操作的工程路径,而不是又一个需要重写 agent 的 RL 框架;建议先在自有 harness 上做小规模验证,再决定是否投入。
背景与影响
传统 agentic RL 的前提是训练框架自己掌管与环境的交互循环:模型产生动作、环境返回观测、观测拼回上下文,整个 rollout 对应一条连续的 token 轨迹。verl、AReaL、slime 等早期 RL 系统都按这个假设构建,因此要训练一个 agent,就得把它的循环在 RL 框架里重建一遍。但真实 harness 已经超出这个假设——mini-SWE-agent、OpenHands、OpenCode、Claude Code、Codex 各自带有上下文管理、工具协议、执行逻辑和依赖,重建成本高,而且重建后的 agent 行为未必与部署版本一致。Agent Lightning 的思路是在 agent 与模型之间插入 LLM proxy,让训练框架以旁观者身份记录模型调用;v1.0 进一步把这一思路正式定义为 Harnessed Agentic RL。由于交互循环改由 harness 掌管,训练系统只能看到一串 LLM 请求-响应对,一次 rollout 可能被拆成数量不定的训练样本,由此带来重分词与样本合并、advantage 计算、loss 归一化、训练后端调度四个问题。v1.0 的 Collocated Async RL 则针对 rollout 时长差异大的现实:同步 RL 要等最慢的 agent 而让 GPU 空转,完全异步 RL 利用率高但需要为 rollout 和训练分别准备 GPU 池,共享同一组 GPU 是折中方案。这意味着对国内做 Agent 的团队来说,训练侧的门槛可能从「重写一套 agent」降到「改一个 endpoint」,但真实收益仍取决于 harness 本身的质量与任务分布。需要观察的是,官方给出的 14.6 个百分点提升来自单一模型、单一数据集和单一 harness 组合,是否能在其他 harness 与任务上复现,目前还没有第三方验证。
本文由 AI 辅助整理自公开信源,事实部分以原文为准;「本站视角」一节为编辑部判断,欢迎指正。版权归原作者所有,如有异议请联系我们。