Agentic RL:一篇大综述告诉你 RL 怎么把 Agent 从写死的脚本变成自适应系统
译者注:
这是一篇迟来的综述翻译。原文《The Landscape of Agentic Reinforcement Learning for LLMs: A Survey》由 25 位作者(Oxford、NUS、Shanghai AI Lab、UIUC、UCL 等)联合撰写,发表在 Transactions on Machine Learning Research(TMLR),2025 年 9 月提交,2026 年 4 月更新至 v5,引用了 500+ 篇文献。
这篇文章翻译的不是单篇 paper,而是整篇 survey 的骨架和核心观点。翻译保留了 taxonomy 的框架结构,把篇幅集中在和 Coding Agent 实践最相关的部分。
一、核心论点:从 LLM RL 到 Agentic RL
传统的 LLM 后训练(RLHF、DPO)可以形式化为一个退化的单步 Markov Decision Process(MDP):
Prompt → LLM → Response → Reward(人类打分)
状态空间只有 prompt,动作空间只是一段文本的输出,transition 退化到只有一步。奖励是人类的偏好排序。
而 Agentic RL 把它扩展成了时间扩展的部分可观测 MDP(POMDP):
State(代码库状态)→ Agent(思考+行动)→ Action(读/写/搜/跑测试)→ New State → Reward(测试通过/失败)
区别不仅是步数变多了,而是本质差异:
| 维度 | LLM RL(RLHF/DPO) | Agentic RL |
|---|---|---|
| 状态 | 静态 prompt | 动态、部分可观测的环境 |
| 动作空间 | 生成一段文本 | 调用工具、搜索、改代码、操作 GUI |
| Transition | 一步结束 | 多步 + 状态依赖 |
| 奖励 | 人类偏好(主观) | 环境反馈(客观,如测试是否通过) |
| 优化目标 | 让人类觉得好 | 在动态世界中成功完成任务 |
这篇 survey 的核心论点:RL 是把 agent 能力从写死的 heuristic 变成自适应行为的关键机制。
你 prompt 里写 “如果 test 失败就重新改” 是一种 heuristic。让 agent 在 RL training 中自己学会这个策略,是 adaptive behavior。
二、双向 Taxonomy
Survey 用两条轴线组织 500 篇文献。
轴线一:按能力维度(Section 3)
| 能力 | RL 的位置 | 说人话 |
|---|---|---|
| Planning | RL 作为 planner 的 guide 或 internal driver | 不是 hardcode 先 plan 再执行,而是 RL 训出一个能做规划的 policy |
| Tool Using | ReAct 风格已有 → Tool-integrated RL 是前沿 | 模型不是被 prompt 告知调哪个 tool,而是 RL 让它学会什么时候调 |
| Memory | RAG 中的 retrieval 策略可以用 RL 优化 | 不是固定 top-k,而是学什么时候该搜、搜什么 |
| Self-Improvement | Verbal self-correction → Internalize → 迭代自训练 | 从”发现错了就改”进化到”把纠错能力内化到模型权重里” |
| Reasoning | Fast(直觉型)vs Slow(结构型) | CoT 是 slow,RL 可以让两种都 become trainable |
| Perception | 主动视觉认知,grounding-driven | 不是被动看截图,而是 RL 让 agent 决定看哪里 |
轴线二:按任务域(Section 4)
Survey 覆盖了 8 个任务域,与 Coding Agent 最相关的是:
① Search & Research Agent
- 外部搜索(Google / 知识库)vs 内部搜索(LLM 自身知识)
- 案例研究:OpenAI Deep Research——用 RL 训练搜索策略,而不是手写 search agent 的 prompt
② Code Agent(Section 4.2)——篇幅最大、最详细
- RL for Code Generation:Outcome Reward RL vs Process Reward RL
- RL for Iterative Code Refinement:模型写代码 → 跑测试 → 拿 feedback → 再改,把这个循环用 RL 训练
- RL for Automated Software Engineering:多文件、跨模块的完整修复
- Code World Models(新兴):构建一个”代码执行”的世界模型,让 agent 在做之前就能模拟改代码的后果
③ Math Agent
- Formal(Lean/Coq 证明)vs Informal(自然语言推理)
- 两种 reward:结果正确 + 过程正确
④ GUI Agent / Vision / Embodied / Multi-Agent
三、跟 SWE-bench 的联系
把这篇 survey 和之前那篇 timeline 放一起看,逻辑是自洽的:
SWE-bench 的驱动因子(已验证) 这篇 survey 说的(下一阶段)
──────────────────────────────────────────────────────────
Tool access(ACI) Tool-integrated RL(学什么时候用)
Test feedback loop Iterative Code Refinement RL
Reasoning(extended thinking) Reasoning 的 RL training
Ensemble 多 agent RL
之前那篇 timeline 说”80 分之后需要模型层突破”,这篇 survey 给出了具体的突破路径:用 RL 把 agent 的这些能力从 prompt 里的 heuristic 变成可训练的 policy。
一个具体的例子——Reproduction Loop(我们在 Medium 那篇 blog 里看到的案例):
- 传统做法:prompt 里写 “请先复现 bug 再改”
- RL 做法:reproduction script 的质量作为 process reward,agent 通过 RL 学会什么时候该复现、复现到什么程度
四、Open Challenges(Section 6)
Survey 最后一章列出了 6 个开放挑战,这里面有几个跟你的日常工作直接相关:
① Trustworthiness
- Hallucination + Sycophancy(模型讨好用户而不是给出正确答案)
- Security(用 RL 训出来的 agent 可能更擅长找漏洞——双刃剑)
② Scaling up Agentic Training
- 计算成本:agentic RL 的训练比 RLHF 贵几个数量级(多步 rollout)
- 数据:agentic 行为的训练数据比偏好数据难获取
- 效率:当前框架对 RL 训练的支持还很原始
③ Scaling up Agentic Environments
- SWE-bench 只有 500 个任务,agentic RL 训练需要的环境规模和多样性远不够
- 代码领域相对好(有 test suite 做自动 reward),GUI 和 embodied 更缺
④ RL 在 LLM 中的机制性讨论
- RL 到底学到了真正的 reasoning,还是学会了 pattern matching?
- Case study:数学推理——RL 能训出更长推理链,但模型在 OOD 问题上泛化能力始终有限
⑤ 实际部署的架构模式(这节最实用)
- Guardrails 和安全模式
- Human-in-the-Loop 验证
- 层次化编排(Hierarchical Orchestration)——高层 agent 做 plan,低层 agent 执行
- Agent 间通信协议
⑥ 更广泛的社会影响
- Dual-use risks
- 环境可持续性
- 劳动力市场
- 偏见放大
- Evaluation Contamination——和 SWE-bench 被 contaminatied 的问题直接对应
五、环境和框架汇编(Section 5)
Survey 给了当前所有支持 agentic RL 的环境和框架列表。几个值得关注的:
代码/SWE 环境:
- SWE-bench(Verified + Pro + Live)
- SWE-agent / mini-SWE-agent
- CodeAct / InterCode
- CyberSecEval
RL 框架:
- 通用 RL 框架:Ray/RLlib, Stable-Baselines3
- LLM RLHF 框架:TRL, DeepSpeed Chat, OpenRLHF
- Agentic RL 专用框架——这一栏是缺失的,survey 提到目前还没有一个成熟的、支持多步 rollout + 环境交互 + RL 训练的端到端 agentic RL 框架
六、对 Coding Agent 团队的参考
看完这篇 survey 最直接的 takeaways:
-
Process Reward 比 Outcome Reward 更值得投 — 只靠”测试通不通”做 reward 信号太稀疏了。SWE-bench 上那些多文件改动,在中间步骤上加 process reward(如 diff 质量、是否有 compilation error)能更高效地训 agent。
-
Iterative Code Refinement 是 RL 最容易落地的入口 — 你的 agent 已经在做”写→跑→改”循环了。把这个循环从 prompt 里的 heuristic 变成 RL policy,训练的 reward 信号(测试过/不过)已经现成。
-
Code World Models 是值得关注的前沿 — 如果 agent 能在真正改代码之前”模拟”改完的结果,大幅减少 trial-and-error。目前还在早期,但方向明确。
-
从现在起关注 training-ready 的环境 — 你用的开发环境(repo、test suite、Docker)如果天然能提供 RL 的 reward signal(测试结果、编译结果),那往 agentic RL 迁移的成本就低很多。
译者评论:
这篇 survey 的价值不在”提出了新方法”,而在提供了一个统一的思维框架。你可以用它来问自己团队的一个问题:
“我们现在靠 prompt 写的 heuristic(如果 A 就 B),有哪些可以用 RL 训成 adaptive policy?”
答案不是”全部”。但 Iterative Code Refinement 显然是第一个候选——因为它已经有一个完善的 reward signal(测试过/不过),只差把循环本身变成可训练的策略。