英伟达研究团队本周发布了一个很有看点的开源框架——Polar。它的核心意义在于,让 Codex、Claude Code、Qwen Code 等当前常用的智能体框架,能够在不改动原有工具调用逻辑、上下文管理方式和补丁提交流程的前提下,直接接入 GRPO 训练。简单来说,它相当于为现有智能体框架完成了一次“强化学习升级”,无需推倒重建整套系统。

先简单说明一下 GRPO。通俗理解,它是一种强化学习优化方法,核心机制是依据奖励信号持续调整模型策略,让模型在多步骤决策任务中学会采取更优动作。在本文讨论的场景中,GRPO 主要用于训练代码智能体,使其在实际工具调用、代码修改和补丁提交的完整工作流中,持续提升任务表现。
论文也点出了一个非常明显的行业趋势:智能体强化学习正从单步任务,快速转向长链路、长流程任务——例如修改整个代码仓库、操作浏览器,甚至直接与操作系统交互。这类复杂任务通常依赖成熟的执行框架,涉及多轮调用、工具使用、上下文压缩,有时还需要多个子智能体协同完成。
问题也恰恰出在这里。现有这些执行框架,往往很难直接改造成传统强化学习环境接口。如果强行接入,不仅系统改造成本高,而且很容易损失关键训练信号,影响强化学习训练效果。
英伟达这次的思路非常巧妙——并不是重写一套全新的智能体框架,而是把重点放在模型与框架之间的连接层。更准确地说,Polar 是在模型 API 边界部署智能体,基本不需要改动原有的 harness。
这里提到的 harness,可以理解为 Codex CLI、Claude Code、Qwen Code、Pi 这类智能体系统的“外壳”或执行壳层。传统强化学习基础设施在做这类整合时,通常要求将逻辑改写到类似 env.init()、env.step()、env.reset() 这样的固定环境接口中,不仅接入门槛高,而且原生执行过程中的许多细节也容易丢失。

Polar 的设计理念,是把智能体与模型之间的接口视为训练边界,而不是把执行框架本身强行改造成强化学习环境。它在执行框架和推理服务器之间加入了一个模型智能体层,可兼容 Anthropic、OpenAI、Google 风格的 API 请求。在请求转发的同时,它会记录提示词、采样 Token、对数概率以及响应内容,再将这些信息重建为训练器可以直接使用的“轨迹”数据。
从系统架构来看,Polar 主要由两大部分组成:rollout server 和 gateway node。前者负责提交任务、调度会话、持久化状态以及接收回调;后者则管理会话执行的完整生命周期,包括运行时启动、执行框架准备、轨迹构建、结果评测和资源回收。论文还将初始化、运行中、后处理三个阶段拆分到独立工作池中,并设置了一个 READY 缓冲区。这样设计的目的很明确:让运行时预热和评测预热能够在后台并行进行,减少长尾任务对 GPU 训练流程的阻塞。
实验部分主要聚焦软件工程任务。研究团队基于同一个 Qwen3.5-4B 底座模型,在 Codex、Claude Code、Qwen Code、Pi 四种代码执行框架上引入 GRPO 训练。实验结果相当突出:在 SWE-Bench Verified 的 pass@1 分数上,分别从 3.8% 提升到 26.4%(涨幅 594.74%)、29.8% 提升到 34.6%、34.6% 提升到 35.2%、34.2% 提升到 40.4%。
训练效率方面同样有明确数据支撑。采用 prefix_merging 策略后,三个训练步骤中的更新次数从 1185 次降至 218 次,墙钟时间从 189.5 分钟缩短到 35.2 分钟,整体提速约 5.39 倍;rollout GPU 的平均利用率也从 20.4% 提升到了 87.7%。
最后附上论文和开源项目地址,方便对 Polar、GRPO 训练、代码智能体强化学习感兴趣的读者继续深入了解。
Polar: Agentic RL on Any Harness at Scale
Polar
