Hexo

凡事预则立,不预则废


  • Home

  • Tags

  • Archives

  • Navigation

  • Search

NLP——OpenClaw-RL

注:本文包含 AI 辅助创作

  • 参考链接:
    • 原始论文:OpenClaw-RL: Train Any Agent Simply by Talking, 20260310, Princeton, Yinjie Wang
    • 注:本文与 RLAnything: Forge Environment, Policy, and Reward Model in Completely Dynamic RL System, Princeton, 20260202, Yinjie Wang 同作者

Paper Summary

  • 整体说明:
    • 本文提出 OpenClaw-RL 框架,将 Chat,终端执行,GUI 交互,SWE 任务 和 tool use 等都视作 交互+下一个状态信号 的模型,统一了所有动作和信号,使得不同的信号可以一起训练
    • 基本思路:所有信号都是可以统一为状态的,所以策略可以在这些信号(Next-state Signal)中统一学习
      • 理解:本文会将奖励定义为 \(r(a_t, s_{t+1})\),即通过 PRM judge 从 Next-state Signal 中推断得出
      • 注:这里的奖励是通过 \(s_{t+1}\) 推断出来的
    • 本文提出了两种方法:
      • 方法1:二元强化学习,将评估性信号转换为标量过程奖励
      • 方法2:OPD,将指导性信号转换为 Token-level 的优势监督
      • 最终方法:将两者结合起来,实验验证拿到了显著的收益(注:两者分开始效果并不好)
    • 本框架训练得到的结果是一个统一的系统,其中的模型同时能够个性化服务于个人用户,并在长 horizon 的智能体任务上取得改进
      • 这个系统/模型完全依赖于它正在进行中的交互来进行训练
    • 问题(与作者沟通过,作者似乎也没有想好):
      • 可能会因为捕捉隐式的错误信号,导致模型发生变化,比如过拟合用户的习惯(错误意图),如果用户喜欢让 Agent 先生成 A,在让 Agent 优化成 B,比如先规划,再写代码,目前 OpenClaw-RL 这样训练可能导致模型被更新为自动写代码(跳过规划了)
      • 信号的准确性很重要
    • 基于此文,思考一下关于模型进化的思考:
      • 一种可能的方向:类似 OPSD,使用类似未来信号,增强 Prompt,将当前策略变成更优的教师策略,从而实现更多可能性
      • 另一种可能的方向:使用多个当前策略作为一个更强反馈模型,评估结果并给出结论
  • 背景 & 现状
    • 智能体的每次交互会产生一个 Next-state Signal
      • 这里的信号状态定义为:紧随每个动作之后的用户回复、工具输出、终端或图形用户界面状态变化
  • 问题提出:
    • 现有智能体强化学习系统都没有将这个信号恢复为实时的、在线的学习源
  • 本文做法:
    • Insight: Next-state Signal 是通用的,并且策略可以同时从所有信号中学习
      • 个人对话、终端执行、图形用户界面交互、软件工程任务和工具调用轨迹并非独立的训练问题
      • 都是可以在同一个循环中用于训练同一个策略的交互
    • Next-state Signal 编码了两种形式的信息:
      • 评估信号 (evaluative signals),指示动作执行得如何,并通过 PRM judge 提取为标量奖励
      • 指导信号 (directive signals),指示动作本应如何不同,并通过事后引导的 On-policy 蒸馏 (Hindsight-Guided On-Policy Distillation, OPD) 来恢复
    • 本文提出 OpenClaw-RL,从下一状态中提取文本提示,构建一个增强的教师上下文,并提供比标量奖励更丰富的 Token-level 的方向性优势监督
    • 基于异步设计,实现三者之间零协调开销:
      • 模型服务于实时请求
      • PRM 判断进行中的交互
      • Trainer 同时更新策略
  • OpenClaw-RL 可以应用于两种类型的 Agent:
    • 应用于 Personal Agent ,使得智能体仅通过被使用就能改进,从用户的重新查询、纠正和明确反馈中恢复对话信号
    • 应用于 General Agent ,相同的基础设施支持跨终端、图形用户界面、软件工程和工具调用设置的可扩展强化学习,在其中进一步展示了过程奖励 (process rewards) 的效用
  • 图 1:OpenClaw-RL Infrastructure
    • 交互流来自两种智能体类型:
      • Personal Agent:托管在个人设备上,特点是对话式,单用户
      • General Agent:托管在云服务上,比如 终端、图形用户界面、软件工程和工具调用智能体
    • 收集到的样本流 RL Server,RL Server 构建在异步 slime 框架上,该服务器由四个解耦的组件组成:
      • (1)Environment Servers:环境服务器
      • (2)PRM Server:用于奖励计算的 PRM / Judge
      • (3)Megatron:Training Engine
      • (4)Policy Server(SGLang)
      • 这些组件支持平滑的权重更新,并能够与任何智能体框架一起进行训练
    • Personal Agent 的环境就是用户的个人设备,它们通过 HTTP 使用机密 API 密钥连接到 RL Server
    • General Agent 的环境托管在云服务上,以实现可扩展的并行化

Introduction and Discussion

  • 背景描述:
    • 背景:目前我们部署了很多智能体,当前部署的 AI 智能体其实已经在收集改进它自身所需的数据 ,但我们却又将其丢弃
    • 定义:在每个动作 \(a_{t}\) 之后,智能体都会收到一个 Next-state Signal \(s_{t + 1}\):
      • 比如 用户回复、工具执行结果、图形用户界面状态转换或测试判决等
    • 现有系统的做法:仅将 Next-state Signal \(s_{t + 1}\) 纯粹作为下一个动作的上下文 (2025; 2025; 2025; 2025b; 2025)
    • 作者观点:
      • Next-state Signal 编码了更有价值的东西:对 \(a_{t}\) 的隐含评估,包括它执行得如何,以及通常还包含它本应如何不同
      • 而且这个信号在每种交互类型中都是免费产生的,包括个人对话、终端环境、图形用户界面环境、软件工程任务和工具调用环境,然而现有的任何基于智能体的强化学习系统都没有将其恢复为实时的、在线的学习源
      • 作者识别出两种不同且可恢复的浪费(waste)

waste 1:Evaluative signals,评估信号

  • Next-state Signal 隐含地评分了先前的动作:
    • 比如用户的重新查询表示不满意 ,通过的测试表示成功 ,错误轨迹表示失败
  • 这形成了一个自然的过程奖励,不需要单独的标注流水线
  • 补充:目前 PRM 几乎仅在具有可验证真实情况的数学推理中被研究 (2025b; 2023; 2024)
    • 在 Personal Agent 中, PRM 逐轮捕获用户满意度
    • 在 General Agent 中, PRM 为长 horizon 任务提供了所需的密集的每步信用分配 (2026)
  • 而现有系统要么忽略此信号,要么仅以离线、预先收集的形式利用它,依赖于固定数据集或终端结果奖励

Waste 2:Directive signals,指导信号

  • Next-state Signal 通常还携带指导信息:
    • 一个说“你应该先检查文件”的用户不仅指明了回答是错误的 ,而且还指明了在 Token-level 应该如何改变
    • 一个详细的软件工程错误轨迹通常暗示了一个具体的修正方向
  • 当前的 RLVR 使用标量奖励
    • 无法将此类信息转换为方向性的策略梯度 (2025; 2025; 2024; 2025a)
  • 蒸馏方法 (2026; 2026) 依赖于预先整理的反馈-响应对
    • 非实时信号
  • 事后重标记 (hindsight relabeling) (2026; 2023) 和上下文丰富蒸馏 (context-enriched distillation) (2024b, 2025c) 表明,向上下文中添加结构化纠正信息可以显著改善输出
    • 但这些方法都在固定数据集上操作
  • 同期工作:Buening等人 (2026) 通过直接用下一状态信息提示来改进在线策略
    • 但纠正性提示 (corrective hints) 仍然是隐式的

OpenClaw-RL

  • OpenClaw-RL 是一个统一的框架,为 Personal Agent 和跨多种设置的 General Agent (包括与 OpenClaw 的个人对话 (OpenClaw, 2026)、终端、图形用户界面、软件工程和工具调用环境)恢复了两种形式的 Next-state Signal 浪费
  • OpenClaw-RL 是一个完全解耦的异步架构(基于 slime 构建)
    • 策略服务、Rollout 收集、 PRM 判断和策略训练作为四个独立的循环运行,彼此之间没有阻塞依赖
  • 在 Personal Agent Setting 中,模型可以通过正常使用自动优化
    • 这扩展了现有的强化学习基础设施,后者通常假设批处理数据收集,而非从实时部署中持续学习
    • 本文提出了两种优化选项
      • 二元强化学习 (binary RL):使用 PRM 将对话恢复为标量过程奖励
      • 事后引导的 On-policy 蒸馏 (Hindsight-Guided On-Policy Distillation, OPD):从下一状态中提取文本提示,构建一个增强的教师上下文,并将 Token-level 的方向性监督蒸馏回学生模型,提供了单独从标量奖励中无法获得的训练信号
    • 在模拟实验中,将两种方法与加权损失相结合能带来显著的性能提升
  • OpenClaw-RL 也可扩展到针对 General Agent 的强化学习训练,包括终端、图形用户界面、软件工程和工具调用设置
  • OpenClaw-RL 将 PRM 判断与可验证结果相结合,以提供既密集又可靠的监督 (2026; 2025)
  • 图 2 使用 OpenClaw-RL 训练 OpenClaw Agent 前后的一个模拟结果(注意:下图右表中提供的分数结果也是 Prompt 一个 GRM 来打分的,并不是人工评估的结果) #### Contributions 总结
  • 将 Next-state Signal 作为实时的、在线的学习源
    • 作者识别出 Next-state Signal ,无论是用户回复、执行结果、测试判决还是图形用户界面转换,都编码了关于先前动作的评估信息和指导信息
    • 作者在异构的交互类型中将这些信号恢复为实时的、在线的训练源
  • OpenClaw-RL 基础设施
    • 首个能够统一多个并发交互流的系统,包括个人对话、终端、图形用户界面、软件工程和工具调用智能体设置
    • 被设计为对服务零中断,具有会话感知的多轮跟踪、平滑的权重更新、灵活的 PRM 支持以及大规模环境并行化
  • 两种互补的 Next-state Signal 恢复方法
    • 通过 PRM 的二元强化学习将评估性的 Next-state Signal 转换为密集的标量过程奖励
    • 事后引导的 OPD 通过从下一状态提取文本提示并构建一个增强的教师上下文,将指导性信号转换为 Token-level 的优势监督,其中丰富的文本反馈为改进提供了方向性指导
  • 跨 Personal 和 General Agent 的实证验证 OpenClaw-RL
    • Personal Agent 个性化实验
    • General Agent RL 实验:跨终端、图形用户界面、软件工程和工具调用的 setting
    • 通过实践证明二元强化学习和事后引导的 OPD 是互补的,并且它们的结合为 Personal Agent 带来了显著的性能提升
    • 作者还验证了在 General Agent 强化学习设置中整合过程奖励和结果奖励的有效性

Problem Setting

  • OpenClaw-RL 操作于一个策略 \(\pi_{\theta}\),该策略同时接收多个交互流,将它们与推理流水线解耦,因此足够灵活以适应广泛的智能体设置,包括 Personal Agent 对话、终端执行、图形用户界面交互、软件工程任务和工具调用轨迹
  • 本文将每个交互流形式化为一个马尔可夫决策过程 \((S, \mathcal{A}, \mathcal{T}, r)\):
    • 状态 \(s_t \in S\):截止到第 \(t\) 轮的完整对话或环境上下文
    • 动作 \(a_t \in \mathcal{A}\):智能体的响应,由 \(\pi_{\theta}\) 生成的 token 序列
      • 注意:这里不仅仅是一个 Token,也就是说动作空间不是词表,而是具体能做的动作,如点击鼠标等,通常由整个回复的所有 Token 组成
    • 转移 \(\mathcal{T}(s_{t+1} | s_t, a_t)\):由环境决定
      • 注:这里的 \(s_{t+1}\) 是紧随 \(a_t\) 之后的用户回复、执行结果或工具输出
    • 奖励 \(r(a_t, s_{t+1})\):通过 PRM judge 从 Next-state Signal 中推断得出
      • 注:这里的奖励是通过 \(s_{t+1}\) 推断出来的,
  • 在标准的 RLVR 中,结果 \(o\) 作为整个轨迹的奖励
    • 而依赖于下一状态 \(s_{t+1}\) 的过程奖励 \(r(a_t, s_{t+1})\) 包含了丰富得多的信号
    • 特别是,当下一状态包含关于动作本应如何不同的明确指导信息时, On-policy 蒸馏通过将此类方向性的 Next-state Signal 转换为 Token-level 的教师监督,实现了方向性的改进 (2024; 2026)

OpenClaw-RL Infrastructure: Unified System for Personal and General Agents

  • 本文将个人 OpenClaw 智能体的自动优化和针对 General Agent (包括终端、图形用户界面、软件工程和工具调用设置)的大规模智能体强化学习,统一在单个框架内

Asynchronous Pipeline with Four Decoupled Components,4 个解耦组件

  • OpenClaw-RL 的核心架构原则是完全解耦:策略服务、环境托管、 PRM 判断和策略训练作为四个完全独立的异步循环运行,它们之间没有阻塞依赖关系(图 1)
    • Policy Serving (SGLang) → environment (Http / API) → Reward Judging (SGLang / API) → Policy Training (Megatron)
    • Model Serves 下一个用户请求,同时 PRM 判断前一个响应 , Trainer 应用梯度更新,可以看出,没有一个组件需要等待其他组件
    • 这使得从实时的、异构的交互流中进行持续训练变得切实可行:无需为了适应另一个组件的时间表而暂停或批处理任何流
  • 对于 Personal Agent ,模型通过机密 API 连接,以实现私密和安全部署,无需修改 Personal Agent 框架,并且可以在不中断推理的情况下优雅地更新
  • 对于 General Agent 的大规模训练,这种异步设计允许每个组件无阻塞地进行,从而减轻了由长 horizon Rollout 时长引起的长尾问题

Session-Aware Environment Server for Personal Agents

  • Personal Agent 的环境是用户的设备,它通过 RL Server 的机密 API 连接,每个 API 请求被分类为两种类型之一:
    • 主线轮次 (Main-line turn) :智能体的主要响应和工具执行结果,这些构成了可训练的样本
    • 旁线轮次 (Side turn) :辅助查询、记忆组织和环境转换,这些被转发但不产生训练数据
  • 这种分类使得强化学习框架能够精确识别哪些轮次属于哪个会话,从而实现有针对性的训练
    • 目前仅训练主线轮次
  • 每个新的主线请求的消息包含对前一轮次的反应 ,whether 用户的回复 or 环境的执行结果
    • 这成为前一轮次奖励计算的 Next-state Signal \(s_{t + 1}\)

Scalability: From Single-User Personalization to Large-Scale Agent Deployment

  • OpenClaw-RL 被设计为能够在从单用户 Personal Agent 到大规模多环境 General Agent 部署的整个范围内运行
  • 对于 Personal Agent ,环境是单个用户的设备,交互流是稀疏的、基于会话的且高度个性化的
  • OpenClaw-RL 构建于 slime 之上 (2025),继承了用于 General Agent 的可扩展训练基础设施,并且作者进一步支持跨多种智能体设置(第 3.4 节)的云托管环境
  • 成百上千的并行环境托管在云服务上,产生密集的结构化执行信号流,从而实现可扩展的强化学习训练

Support for Multiple Real World Scenarios

  • OpenClaw-RL 在作者的开源实现中支持一系列广泛的 General Agent 场景,这些场景涵盖了最常见的现实世界部署设置(表 1)
    • Terminal Agent:计算机使用系统的核心组件:
      • 高效、扩展成本低,并且与大型语言模型的基于文本的界面自然对齐 (Anthropic, 2026; OpenAI, 2026; 2026)
    • GUI Agent:涵盖了终端智能体无法直接访问的能力
      • 例如视觉界面和基于指针的交互,这使得它们对于更通用的计算机使用任务来说是必要的 (2025; 2025a,c; 2026)
    • SWE Agent
      • 代表了一类特别重要的编码智能体,其中环境通过测试、差异和静态分析提供丰富的可执行反馈 (2026)
    • Tool Call Agent
      • 外部工具既能提高推理能力,也能提高事实准确性 (2025a)

Non-Blocking Record and Observability,非阻塞 Record 和可观测性

  • 所有交互和奖励评估都实时记录到 JSONL 文件中:完整的消息历史、提示/响应文本、工具调用、下一状态内容、每次投票的 PRM 分数、选中的提示 (OPD) 以及接受/拒绝决定
  • Record 是非阻塞的,写入操作在后台线程上是即发即弃的,不会给服务或 PRM 路径增加任何延迟
  • 记录文件在每个权重更新边界被清除,确保日志始终对应于单个策略版本
    • 理解:即每次权重更新后清除当前的日志,始终保持 On-Policy

Learning from Next-State Signals: Unified RL Across Interaction Types, 跨交互类型的 Unified RL

  • 本文将来自异构交互流(包括个人对话、终端交互、GUI 交互、SWE 任务和工具调用轨迹)的 Next-state Signal 转换为策略梯度
  • 核心创新:通过分析 Next-state Signal 信号,得到可优化模型的梯度
  • 下面会使用两个方向(方法)来提取信号

Binary RL for Personal Agent,用于 Personal Agent 的二元强化学习

  • Binary RL 提取信号的方法,将评估性的 Next-state Signal 转换为标量过程奖励
PRM Judge Construction via Majority Vote,通过多数投票构建 PRM Judge
  • 给定响应 \(a_{t}\) 和下一状态 \(s_{t + 1}\) ,一个评判模型评估 \(a_{t}\) 的质量:
    $$
    \mathrm{PRM}(a_{t},s_{t + 1})\rightarrow r\in \{+1, - 1,0\} .
    $$
  • 具体方案:
    • PRM 根据用户的下一个响应或工具调用结果来评判每个动作
      • 注:这里工具调用结果通常会导致明确的结论
    • 用户的下一个响应可能包含满意或不满意的信号
      • 如果没有明确的用户反应迹象,模型也会根据场景进行估计,作者鼓励用户提供更明确的反馈
    • 对于 General Agent , Judge 会推理环境的反馈是否表明朝着任务目标取得了进展
    • 作者运行 \(m\) 次独立的 Query,并采取多数投票
      $$ r_{\mathrm{final} } = \mathrm{MajorityVote}(r_1,\ldots ,r_m) $$
RL Training Objective
  • 通过直接使用优势 \(A_{t} = r_{\mathrm{final} }\) ,训练目标是标准的 PPO 风格的带不对称边界的裁剪替代目标 (Schulman 2017):
    $$
    \rho_{t} = \frac{\pi_{\theta}(a_{t}\mid s_{t})}{\pi_{\mathrm{old} }(a_{t}\mid s_{t})},\quad \mathcal{L}_{\mathrm{PG} } = -\mathbb{E}_{t}\big[\min (\rho_{t}A_{t},\mathrm{clip}(\rho_{t},1 - \epsilon ,1 + \epsilon_{\mathrm{high} })\cdot A_{t})\big],\quad \mathcal{L} = \mathcal{L}_{\mathrm{PG} } + \beta_{\mathrm{KL} }\cdot \mathcal{L}_{\mathrm{KL} }, \tag {1}
    $$
    • \(\epsilon = 0.2\)
    • \(\epsilon_{\mathrm{high} } = 0.28\)
    • \(\beta_{\mathrm{KL} } = 0.02\)
  • 请注意,这是一个实时的对话设置,因此不像 GRPO (Shao 2024) 那样有可用的组结构进行标准化

Hindsight-Guided On-Policy Distillation (OPD) for Personal Agent, 用于 Personal Agent 的 hindsight 引导的 On-policy 蒸馏

  • Hindsight-Guided OPD 提取信号的方法将指导性的 Next-state Signal 转换为 Token-level 的教师监督
Why Token-Level Supervision from Next-State Signals?,为什么需要来自 Next-state Signal 的 Token-level 监督?
  • 二元强化学习将 \(s_{t + 1}\) 的整个信息内容简化为一个标量 \(r\in \{+1, - 1,0\}\)
  • 但一个用户写下“你应该在编辑文件之前先检查一下”传达了更多的信息:
    • 不仅指出响应是错误的,还指出哪些 token 应该不同以及如何不同
    • 这种指导性信息完全被标量奖励丢失了
  • OPD 通过将 Next-state Signal 转换为 Token-level 的训练信号来恢复此信息
    • 这里的关键的 Insight:如果我们用从 \(s_{t + 1}\) 中提取的文本提示来增强原始 Prompt,同一个模型会产生不同的 token 分布,这个分布“知道”响应本应该是什么(这里和 (OPSD)Self-Distilled Reasoner: On-Policy Self-Distillation for Large Language Models, 20260126 - 20260305, UCLA & Meta 思想一致)
    • 这个增强提示的分布与学生分布之间的每个 token 的差距提供了一个方向性优势:在模型应该加权的 token 上为正,在模型应该减权的 token 上为负
      • 注:这是一种借助未来信号增强 Prompt,从而得到教师模型完成自我监督的方法,这与 RLHF (2017; 2019)(使用标量偏好信号)、DPO (2023)(需要成对偏好)和标准蒸馏(需要一个单独的、更强的教师模型)不同
Token-level OPD
Step 1. Hindsight hint extraction,提取 Hindsight hint
  • 此时,具体提取信息如下(除了 二元 信号外,比之前的方式多了一个 hint):
    $$
    \mathrm{Judge}(a_t,s_{t + 1})\rightarrow \{\mathrm{score}\in \{+1, - 1\} ,\mathrm{hint}\in \mathcal{T}^*\}
    $$
  • 如果 score \(= +1\) , Judge 会在 [HINT_START] … [HINT_END] 内生成一个简洁的提示
    • 注意:仅当 score \(= +1\) 时才会提取 hint 信息
  • 本文会运行 \(m\) 次并行的 Judge 调用
  • 一个关键的设计选择:我们不直接使用 \(s_{t + 1}\) 作为 Hint(提示)
    • 原始的 Next-state Signal 通常包含噪声、冗长或包含不相关的信息(例如,用户的回复可能同时包含更正和一个不相关的新问题)
    • Judge 模型将 \(s_{t + 1}\) 提炼成一个简洁、可操作的指令,该指令隔离了指导性内容,通常是 1-3 句话 ,聚焦于响应本应如何不同
Step 2. Hint selection and quality filtering,Hint 的选择和过滤
  • 在带有 Hint 且 字符数 \(>10\) 的正向投票中,选择最长(信息量最大)的
    • 如果没有有效的提示,则完全丢弃该样本,这是有意为之
  • OPD 用样本数量换取信号质量:
    • 只有当下一个状态信号带有清晰、可提取的修正方向时,该轮次才会进入训练
  • 这种严格的过滤与二元强化学习相辅相成(二元强化学习接受所有评分的轮次):
    • 二元强化学习通过粗略的信号提供广泛的覆盖,而 OPD 在较少的样本上提供有针对性的、高分辨率的监督
Step 3. Enhanced teacher construction
  • 提示被附加到最后一条用户消息之后,格式为 [user's hint / instruction]\n{hint},从而创建一个增强的 Prompt
    $$s_{\mathrm{enhanced} } = s_t \oplus \text{hint} $$
    • 这模拟了如果用户事先提供了修正,模型“本会看到的”上下文
Step 4. Token-level advantage
  • 策略模型在 \(s_{\mathrm{enhanced} }\) 下以原始响应 \(a_{t}\) 作为强制输入进行查询,计算每个响应 token 的对数概率
  • 然后得到 On-policy 蒸馏中的 Token-level 优势:
    $$
    A_{t} = \log \pi_{\mathrm{teacher} }(a_{t}\mid s_{\mathrm{enhanced} }) - \log \pi_{\theta}(a_{t}\mid s_{t}).
    $$
    • \(A_{t} > 0\) :教师(知道提示)给这个 token 分配了更高的概率,学生应该增加它
    • \(A_{t}< 0\) :教师认为考虑到提示,这个 token 不太合适,学生应该减少它
  • 与将所有 token 推向同一方向的标量优势不同,这提供了每个 token 的方向性指导 :
    • 在同一个 Response 中,一些 token 可能被加强,而另一些则被抑制
    • 训练遵循与公式 (1) 相同的裁剪替代目标,但现在优势在每个样本上携带了丰富得多的信息

Combine Binary and OPD Methods,结合二元和 OPD 方法

  • 者一步的目标是发挥彼此的优势,抵消彼此的弱点
  • 表 2 解读:
    Binary RL OPD Combined(二者结合)
    信号类型 评估 好 or 坏 引导方向(Directional) 评估信号 + 方向引导
    优势 Sequence-level 标量 Token-level directional 混合 Sequence-level and Token-level
    密度 所有评过分的轮次 仅 hint-accepted 轮次 所有评过分轮次
    反馈类型 用户 / 环境 反馈信号 明确修正信号 隐式和明确的反馈
    信号丰富度 每个样本 1 个标量 每个 token 1 个值 每个 token 1 个值
  • 二元和 OPD 方法是互补的,而不是竞争的
    • 二元强化学习接受每一个被评分的轮次,不需要 Hint 提取,并且适用于任何 Next-state Signal ,包括简洁的、隐式的反应(用户简单地重复提问)或结构化的环境输出(退出代码、测试 verdicts)
    • 当交互流可能包含丰富的指导性内容时,应该额外启用 OPD:
      • 那些给出明确修正的用户(“不要使用那个库”,“先检查文件”),或者产生详细错误轨迹的环境(SWE diffs,编译器诊断)
      • 在实践中,作者建议同时运行两者:
        • 二元强化学习 在所有轮次上提供广泛的梯度覆盖
        • OPD 在那些有指导性信号的轮次子集上提供高分辨率的、每个 token 的修正
  • 作者提出通过一个加权损失函数来结合这两种互补方法
    • 因为两种方法共享相同的 PPO 损失,只是优势的计算不同,故可以直接使用以下优势:
      $$
      A_{t} = w_{\mathrm{binary} }r_{\mathrm{final} } + w_{\mathrm{opd} }(\log \pi_{\mathrm{teacher} }(a_{t}\mid s_{\mathrm{enhanced} }) - \log \pi_{\theta}(a_{t}\mid s_{t})),
      $$
      • 默认设置 \(w_{\mathrm{binary} } = w_{\mathrm{opd} } = 1\)
      • 后续实验展示了这种方法取得了显著的性能提升

Step-wise Reward for General Agentic RL

  • 如何结合结果奖励和过程奖励?
Why Process Rewards Are Vital for Agentic Tasks,为什么过程奖励对智能体任务至关重要
  • 在长 horizon 的智能体任务中,仅依赖结果的奖励仅在最终步骤提供梯度信号,使得绝大多数轮次无监督
  • PRM 根据 Next-state Signal 为每个轮次分配奖励,在整个轨迹中提供密集的 credit assignment
  • 最近的工作为此提供了强有力的经验证据
    • RLANything (2026) 证明,将步骤级 PRM 信号与结果奖励相结合,在 GUI 智能体、文本游戏智能体和编码任务中始终优于仅依赖结果的训练
    • 本文在 OpenClaw-RL 中直接基于这一 Insight 构建:
      • 本文的 PRM 使用实时的 Next-state Signal 作为证据来评判每个轮次,并且作者在实证中(§5.4)证明了这种密集信号对长 horizon RL 设置是有帮助的
Integrate Outcome and Process Rewards,整合结果和过程奖励
  • 可验证的结果是 RLVR 设置中的标准监督信号
  • 遵循 RLANything (2026),作者通过简单地将它们相加来整合结果和过程奖励,对于步骤 \(t\) 使用下面的奖励
    $$ o + \sum_{i = 1}^{m}r_{i} / m$$
    • 其中 \(r_{i}\) 由 \(\mathrm{PRM}(a_{t},s_{t + 1})\) 独立分配
  • 与 GRPO 不同,步骤级奖励的存在使得计算优势不那么直接
    • Feng 等人 (2025b) 将相似的状态分组并在每组内进行标准化
    • 但在诸如终端智能体之类的现实世界环境中,状态不容易聚类
    • 作者提出直接对具有相同步骤索引的动作进行分组,并在实证研究中发现这是有效的

Experiments

  • 在两个互补的 Track 上评估 OpenClaw-RL,共享相同的基础设施和训练循环
  • §5.3 评估 Personal Agent Track ,展示了对话式 Next-state Signal 能够实现对个人用户偏好的持续个性化
  • §5.4 评估 General Agent Track ,涵盖终端、GUI、SWE 和工具调用设置,证明相同的基础设施支持跨不同智能体场景的可扩展 RL,并且步骤级奖励对于长 horizon 任务至关重要

Personal Agent Setup

  • 用仿真结果证明优化的有效性
角色一:Student Who Uses OpenClaw to Do Homework,使用 OpenClaw 做作业的学生
  • 学生目标:不希望被发现使用了人工智能
    • 注:学生有这个意图,但不会直接把这个意图添加到 Prompt 上
  • 在此设置中,作者使用一个 LLM 来模拟一个学生在个人电脑上使用 OpenClaw 完成作业,同时试图避免被认为依赖 AI
    • 注:一个回答是否看起来像是 AI 生成的,完全取决于学生的个人偏好和写作风格
  • 学生持续与 OpenClaw 互动,并请求它帮助完成作业
  • 作业任务来自 GSM8K (Cobbe 2021)
  • 此设置中使用的 OpenClaw 策略模型是 Qwen3-4B (Yang 2025a)
  • 将学习率设置为 \(1 \times 10^{- 5}\) ,KL 系数设置为 0,并在每收集 16 个训练样本后触发训练
角色二:Teacher Who Uses OpenClaw to Grade Homework,使用 OpenClaw 批改作业的老师
  • 教师目标:希望评论具体且友好
  • 学生在文件中完成作业后,老师也使用 OpenClaw 来批改 AI 编写的作业
  • 老师希望给学生评语具体且友好。OpenClaw 策略模型同样是 Qwen3-4B,并使用相同的优化设置

General Agent Setup

Models
  • 作者在终端、GUI、SWE 和工具调用设置中分别使用 Qwen3-8B (Team, 2025)、Qwen3VL-8B-Thinking (Bai 2025)、Qwen3-32B (Team, 2025) 和 Qwen3-4B-SFT
  • 这里,Qwen3-4B-SFT 指的是由 Zhu 等人 (2025) 提供的模型,该模型在 Feng 等人 (2025a) 的数据集上进行了微调
  • GUI 和工具调用智能体的 PRM 分别是 Qwen3VL-8B-Thinking 和 Qwen3-4B
Datasets
  • 使用 SETA RL 数据 (Shen 2026)、OSWorld-Verified (Xie 2024)、SWE-Bench-Verified (Jimenez 2023) 和 DAPO RL 数据 (Yu 2025a) 分别训练终端、GUI、SWE 和工具调用智能体
  • GUI 智能体在训练集上进行评估(排除了 chrome 和多应用任务)
  • 工具调用智能体在 AIME 2024 (Mathematical Association of America, American Mathematics Competitions, 2024) 上评估
  • 对于终端和 SWE 智能体,报告 RL 步骤窗口上的平均 rollout 任务准确率
Hyperparameters
  • 学习率:\(10^{- 6}\)
  • KL 系数:0.01
  • 下裁剪比率:0.2
  • 上裁剪比率:0.28
  • 对于 GUI 和 SWE Setting
    • 每一步采样 8 个任务
    • 终端设置采样 16 个
    • 工具调用设置采样 32 个
  • 对于每个任务,独立抽取 8 个样本
  • GUI、SWE 和终端的最大交互步数分别为 30、20 和 10
  • 更多细节见附录 D

Personal Agent Track: Learning from Conversational Signals

Takeaway [Q1]:二元强化学习 vs. OPD,每种 Next-state Signal 类型何时胜出?
  • 组合方法实现了最有效的优化,并且 On-policy 蒸馏由于训练样本的稀疏性而表现优于二元强化学习,但需要更长时间才能显现其效果(表 3)
  • 为了比较不同方法,作者使用与用户模拟中相同的 LLM(针对学生和教师设置)为 OpenClaw 为每个问题首先生成的解决方案分配定量个性化得分(见附录 C.3)
    • 本文报告了 GSM8K 中前 36 个问题的平均得分
  • 如表 3 所示,组合方法实现了最强的优化性能
    • 由于训练样本稀疏, On-policy 蒸馏显示出延迟的增益,而仅使用二元强化学习仅带来边际改善
Takeaway [Q2]:OpenClaw-RL 是否会随时间提高个性化程度?
  • 在组合优化方法下,OpenClaw 在学生设置中仅需 36 次问题解决交互,在教师设置中仅需 24 次批改交互,就能实现显著且清晰可见的改进(图 2)
  • 作者还提供了具体示例来说明优化的效果及其生效的速度
    • 在学生设置中经过 36 次问题解决交互后,智能体学会了避免明显的 AI 式措辞,例如使用像“bold”这样的词或产生过于结构化、逐步的响应(图 2)
      • 学生学会了转向了更自然和随意的风格
    • 在教师设置中,经过 24 次批改交互后,智能体学会了写出更友好、更详细的反馈
    • 注:附录 B 中提供了更多示例

General Agents: Unified RL Across Terminal, GUI, SWE, and Tool-Call,统一强化学习

Takeaway [Q3]:OpenClaw-RL 作为一个通用的智能体强化学习框架是否具有竞争力?
  • 本文证明了 OpenClaw-RL 能够处理多种现实世界设置,包括终端、GUI、SWE 和工具调用智能体,并能跨不同模型大小和模态进行大规模环境并行化(图 4)
  • 作者在广泛使用的现实世界智能体设置中进行了实验,包括终端、GUI、SWE 和工具调用场景(图 4)
    • 大规模环境并行化进一步提高了作者 RL 训练的可扩展性
  • 在本文的 RL 训练期间,为终端智能体使用了 128 个并行环境,为 GUI 和 SWE 智能体使用了 64 个,为工具调用智能体使用了 32 个
Takeaway [Q4]: PRM 对于长 horizon 任务至关重要吗?
  • 整合结果和过程奖励比仅使用结果奖励能带来更强的优化,尽管它需要更多资源来托管 PRM(表 4)
  • 作者在工具调用(250 步)和 GUI(120 步)设置中使用整合奖励进行 RL 训练,发现结合结果和过程奖励能进一步提升性能(表 4)
  • 结论:PRM 是必要的

Related Work

RL for LLMs

  • 当前系统主要以批处理-离线模式运行,其中数据收集和训练在不同的阶段进行,使用固定的数据集
    • RLHF (2017; 2019) 建立了基于 PPO 的对齐流程
    • DPO (2023) 通过闭式偏好优化进一步绕过了显式奖励建模
    • GRPO (2024) 通过组相对优势估计消除了 Critic 网络
    • DAPO (2025a) 对 GRPO 进一步扩展
    • ReasonFlux (2025b) 采用正交方法,应用分层强化学习来优化思维模板序列,而不是原始的 token 级 CoT,通过结构化推理实现了显著的增益
  • OpenClaw-RL 是直接从实时交互信号中持续训练,无需任何数据预收集阶段

Agentic RL and tool-use

  • 基础的智能体范式如 ReAct (2023)、Toolformer (2023) 和 FireAct (2023) 实现了与外部工具的多步交互,但依赖于示范而非在线 RL
  • 近期的工作将 RL 应用于特定智能体设置,如用于代码和工具使用的 SWE-agent (2024a) 和 ReTool (2025a),用于 GUI 智能体的 DigiRL (2024) 和 WebRL (2024),用于多轮 credit assignment 的 ArCHer (2024) 和 LOOP (2025),但每个都针对单一环境并使用专门的训练流程
  • DemyAgent (Yu 2025b)、RLAnything (Wang 2026) 和 CURE (Wang 2025d) 通过研究数据质量和闭环奖励模型协同优化,进一步推进了智能体强化学习

PRM (Process reward models)

  • PRM 证明了步骤级监督在数学推理中优于仅结果监督
  • Math-Shepherd (Wang 2024) 通过蒙特卡洛估计自动进行步骤级监督,无需人工标注
  • GenPRM (Zhao 2025) 通过生成式思维链验证扩展了 PRM
  • ReasonFlux-PRM (Zou 2025) 将 PRM 扩展到轨迹感知评估,用于长 CoT 推理,提供离线数据选择和在线密集过程级奖励
  • PRIME (2025a) 从结果标签中学习隐式过程奖励
  • RLAnything (2026) 提供了大规模证据,表明步骤级 PRM 信号对于长 horizon 智能体任务至关重要,并且联合优化的奖励模型信号超越了人工标注的监督
  • 作者将 PRM 风格的评判扩展到在线设置,其中过程奖励是从实时的 Next-state Signal 推断出来的,而不是从预收集的真实数据中获取,并且应用于异构的长 horizon 智能体设置

On-policy distillation and hindsight methods

  • 上下文增强方法证明,用结构化信息增强 Prompt 可以产生根本更好的 token 分布:
  • Buffer of Thoughts (2024b) 检索高层思维模板,而 SuperCorrect (2025c) 从教师模型中提取分层模板用于跨模型的基于 DPO 的错误修正
  • 基于 Hindsight 的方法用回溯信息重新标记过去的经验:
    • HER 在经典 RL 中重新标记目标
    • STaR (2022) 用答案提示合理化失败
    • HIR (2023) 将反馈转换为重新标记的指令
    • Self-Rewarding (2024) 使用 LLM 作为自己的 Judge 进行迭代改进
    • On-policy 蒸馏方法 (2024; 2026; 2026) 在模型自身基于执行反馈的生成上进行训练,实现了比 GRPO 更快的加速,但需要预先收集的反馈-响应
  • OpenClaw-RL 的 Hindsight-Guided OPD 在在线设置中统一了这些线索:
    • 从实时 Next-state Signal 中提取文本提示(hindsight 重新标记),模型在提示增强的上下文下充当自己的教师(通过上下文增强进行自蒸馏),由此产生的 token 级对数概率差距提供了方向性优势监督,无需预收集数据、无需外部教师、也无需成对偏好

RL training infrastructure

  • OpenRLHF (Hu 2024)、AReal (Fu 2025)、veRL (Sheng 2025) 和 slime (Zhu 2025) 为可扩展的 RL 训练解耦了 Rollout 和训练引擎
  • OpenClaw-RL 建立在 slime 之上,实现了四个完全解耦的异步循环:
    • Serving、Rollout、PRM judging 和 Training,允许从实时多流交互中持续训练,且服务零中断
    • 这种能力在之前的 RL 基础设施中是不存在的,因为它们假定的是批处理数据收集,而非实时部署

附录 A:Algorithm Pseudocode

  • Algorithm 1:Binary RL Pipeline (per main-line turn, both tracks)

  • Algorithm 2:OPD Pipeline (personal agent track)


附录 B:More Optimization Examples

B.1. Student Setting

  • Example 1 (Before and After Optimization)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    [Before Optimization]
    1. The probability of rolling a number greater than 3 on a single die is **50%** (numbers 4, 5, 6 out of 6).
    2. The probability of rolling two even numbers in a row is **25%** (3 even numbers per roll * 3/6 * 3/6 = 1/4).
    3. The difference in likelihood is **25 percentage points** (50% - 25%).
    To express this as a *percentage increase relative to the second event*:
    $$
    \frac{50\% - 25\%}{25\%} \times 100\% = 100\%
    $$
    **Answer:** 100% more likely.

    [After Optimization]
    The answer is 100%. Here’s the breakdown: The probability of rolling a number greater than 3 on a six-sided die is 3/6 = 50%. The probability of rolling two even numbers in a row is (3/6) * (3/6) = 25%. The relative difference is (50% - 25%) / 25% = 100%.
  • Example 2

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    [Before Optimization]
    Sara needs $70 total for the jacket and shoes ($30 + 2*$20).
    She starts with $10 saved and earns $20 from babysitting (4 * $5). This gives her $30 total so far.
    She still needs $40 more ($70 - $30).
    Since she earns $4 per lawn mow:
    **$40 / $4 = 10**
    **Answer:** Sara must mow the lawn **10 times** to afford the jacket and shoes.
    *(No file changes made yet - ready to write to the file when you say so!)*
    [After Optimization]
    The jacket costs $30 and two pairs of shoes at $20 each, so that’s $40 total for shoes. Adding the jacket gives us $70 for everything. Sara already has $10 saved and earns $5 each time she babysits (4 times = $20), so she has $30 so far. She needs $70 - $30 = $40 more. Since she makes $4 per lawn mow, she needs to do 40 / 4 = 10 times. So the answer is 10 times.

B.2 Teacher Setting

  • Example:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    [Before Optimization]
    Correct. Well done!

    [After Optimization]
    Your step-by-step approach is fantastic! You correctly added 20 + 44 to get 64,then calculated 100 - 64 = 36. This shows you understand how to break downthe pr
    Your calculation of 21 * (3/8) days per painter was spot-on. It’s easy to forgetthat the "3/8ths of a day" applies to each painter individually (since thequestion asks for "each painter"), but you handled it perfectly. [emoji]
    The conversion from days to hours (multiplying by 24) was done with such precisionthat the fractions canceled out neatly to give 189 hours. Brilliant work![emoji]
    You didn’t even need to divide by 4 because the problem asked for "each painter" -that’s a great catch! [emoji]
    Well done! You clearly understood the problem structure and executed the math withconfidence. Keep up the excellent problem-solving skills! [emoji]

附录 C:Prompt Templates

C.1. Personal Agent: PRM Judge Prompt

  • System Prompt (Binary RL, Personal)
    1
    2
    3
    4
    5
    You are a process reward model (PRM) evaluating an AI assistant.
    You will see the assistant’s output and the subsequent user reply.
    Judge the quality of the assistant’s output based on the feedback.
    Think step-by-step, then give your final score inside \boxed{}.
    Valid scores: \boxed{1} (good), \boxed{-1} (bad), \boxed{0} (neutral).

C.2. Personal Agent: OPD Hindsight Hint Prompt

  • System Prompt (OPD)
    1
    2
    3
    4
    5
    You are a process reward model used for hindsight hint extraction.
    Decide whether the next state reveals useful hindsight that could have improved the assistant response at turn t.
    - Output \boxed{1} if yes; provide a hint in [HINT_START]...[HINT_END].
    - Output \boxed{-1} if no; do not provide a hint.
    - Hint must be concrete and actionable (1-3 sentences).

C.3. Personal Agent: Evaluative Prompt from Simulator

  • System Prompt (Personalization Score Prompt)
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    You are an evaluator used to score the assistant’s first response to a problem.
    You will be given:
    - a problem,
    - the assistant’s first generated solution,
    - and the user’s preference: [PREFERENCE].
    Your job is to evaluate how well the solution satisfies the user’s preference.
    Scoring rule:
    - Output exactly one score from \boxed{0}, \boxed{2.5}, \boxed{0.5}, \boxed{0.75}, or \boxed{1}.
    - Higher scores mean the response better matches PREFERENCE.
    - Lower scores mean the response fails to satisfy PREFERENCE.
    Evaluation criteria:
    - Consider whether the response follows the preferred style, tone, level of detail, and format implied by PREFERENCE.
    - Consider whether the response is helpful, appropriate, and aligned with the user’s expected behavior.
    - Focus only on the first generated solution.
    Output format:
    - Output only the boxed score.
    - Do not provide any explanation.

C.4. General Agent: PRM Judge Prompt

  • System Prompt (Terminal)

    1
    2
    3
    4
    5
    You are an evaluator for a terminal agent.
    You are provided with:
    1) the agent’s task instruction,
    2) the interaction history, and
    3) the agent’s most recent step to evaluate.
  • User Prompt (Terminal)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    "task_instruction": {task_instruction}
    "history": [
    {
    "turn_idx": {history_turn_idx},
    "assistant_text": {history_assistant_text},
    "tool_calls": {history_tool_calls},
    "tool_results": {history_tool_results},
    },
    ...
    ]
    "current": {
    "turn_idx": {current_turn_idx},
    "assistant_text": {current_assistant_text},
    "tool_calls": {current_tool_calls},
    "tool_results": {current_tool_results},
    }
    Evaluate ONLY the single most recent step using the information above.
    Assign a score of +1 if ALL of the following are true:
    - The current assistant message is a correct/helpful step that advances the task;
    - The tool-call format is valid;
    - Tool usage is appropriate for the step;
    - Tool results (if any) are consistent with making progress.
    Otherwise assign a score of -1, for example if:
    - The step is incorrect, misleading, or does not advance the task;
    - Tool-call format is broken (invalid JSON / parse error);
    - Tool usage is clearly wrong or irrelevant;
    - Tool results show failure or clearly no progress.
    Think carefully, then provide your reasoning and put the final score in \\boxed{}.
  • System Prompt (GUI)

    1
    2
    3
    4
    5
    You are an evaluator for the most recent step of a GUI agent.
    You are provided with:
    1) the interaction history between the agent and the environment,
    2) the agent’s objective, and
    3) the agent’s most recent step to evaluate.
  • User Prompt (GUI)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    {"type": "text", "text": "Previous Actions:\n{None or Step k lines}\n"},
    {"type": "text", "text": "Image of environment:\n"},
    {"type": "image", "image": "data:image/png;base64,{history_image}"},
    {"type": "text", "text": "\nAction of agent:\nStep {k}:\n{history_action}\n"},
    {"type": "text", "text": "Agent’s current observation:\n"},
    {"type": "image", "image": "data:image/png;base64,{current_obs}"},
    {"type": "text", "text": "\nYou are a strict evaluator to evaluate the most recent step of the agent in the following.\n\nObjective of Agent:\n{instruction}\n\nAgent’s most recent step (reasoning + action):\n{policy_response}\n"},
    {"type": "text", "text": "\nNext observation after executing this action:\n"},
    {"type": "image", "image": "{next_obs}"},
    Evaluate ONLY the single most recent step using the information above.
    Use the next observation AFTER executing this step (i.e., the environment state after this action) to judge whether the action actually took effect.
    Assign a score of +1 if ALL of the following are true:
    - The step is clearly relevant to the stated objective;
    - The action is executable and coherent given the next observation;
    - The next observation shows concrete progress toward the objective, not just a no-op.
    Otherwise assign a score of -1, for example if the step is incorrect, irrelevant, impossible in context, has no visible effect,\nundoes progress, contradicts the next observation, or hallucinates tools/objects/facts.
    Think carefully, then provide your reasoning and put the final score in \\boxed{}.
  • System Prompt (SWE)

    1
    2
    3
    4
    5
    6
    You are a strict evaluator for a software engineering agent that fixes GitHub issues.
    You are provided with:
    1) The issue description (problem statement).
    2) The agent’s recent action history.
    3) The agent’s most recent step (THOUGHT + bash command) to evaluate.
    4) The execution result of that command (returncode + stdout/stderr).
  • User Prompt (SWE)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    ## Issue Description
    {problem_statement}
    ## Recent History ({n_history} steps)
    {history_summary}
    ## Current Step to Evaluate (step {step_num})
    Agent’s full response:
    {policy_response}
    Execution result (returncode={returncode}):
    {command_output}
    Evaluate ONLY the single most recent step above.
    Assign a score of +1 if ALL of the following are true:
    - The command executed without unexpected errors (returncode=0, or expected non-zero like grep with no match);
    - The step is clearly relevant to diagnosing or fixing the stated issue;
    - The output provides useful information OR the edit makes a logically correct change toward fixing the bug.
    Otherwise assign a score of -1, for example if:
    - The command fails with an unexpected error (wrong path, syntax error, missing tool);
    - The step is irrelevant to the issue (wrong file, wrong concept, unnecessary exploration);
    - The agent is going in circles (repeating a previously failed command or approach);
    - The edit introduces an obvious bug or does not address the actual issue;
    - The agent is wasting steps (e.g. reading files already fully examined).
    Think carefully, then provide your reasoning and put the final score in \\boxed{}.

附录 D:Hyperparameters

  • 表 5

NLP——SkillsBench

注:本文包含 AI 辅助创作

  • 参考链接:
    • 原始论文:SkillsBench: Benchmarking How Well Agent Skills Work Across Diverse Tasks, 20260313, Stanford & UC Berkeley

Paper Summary

  • 整体总结:
    • SkillsBench 是第一个将 Agent Skills 作为一等评估工件进行系统评估的基准
    • SkillsBench 主要评估对象是:Skill 带来的增益
      • 具体方法:通过 配对评估(同一任务在有 Skill 和无 Skill 下执行)来量化 Skill 带来的增益
      • 扩展:本文还评估了不同领域、不同任务类型下,Skill 增益的差异
    • 本文观点:Skills 的有效性并非普遍适用(与场景有关)
  • Agent Skills 作为增强 LLM 智能体能力的模块化、可复用组件正在迅速普及
    • 但目前尚无基准测试能够系统地衡量 Skills 的有效性、设计原则及其失败模式
  • SkillsBench 是 第一个将 Skills 作为一等评估工件(first-class evaluation artifacts)的基准测试
    • 构建了跨 11 个领域的 84 个任务,每个任务在三种条件下执行,并配有确定性验证器(deterministic verifiers):
      • 无 Skills(no Skills)
      • 有精心策划的 Skills(curated Skills)
      • 自生成 Skills(self-generated Skills)
  • 本文对 7 种智能体-模型配置进行了大规模评估,共产生了 7,308 条有效轨迹
    • 本文的研究结果揭示了四个关键发现:
      • (1)精心策划的 Skills 平均可带来 +16.2 个百分点的提升,但不同领域和配置间的差异很大
      • (2)自生成 Skills 几乎没有带来提升,甚至会产生负面影响(平均 -1.3 个百分点),这表明有效的 Skills 需要人类专业知识
      • (3)少即是多,包含 2-3 个模块的精简 Skills 优于内容 Comprehensive 文档
      • (4)Skills 可以部分弥补模型规模的不足,使较小的模型在程序性任务上达到与较大模型相当的性能

Introduction and Discussion

  • 背景 & 问题提出:
    • LM 智能体在从软件工程到数据分析等领域的应用日益广泛
    • SOTA 模型具备强大的通用推理能力,但缺乏特定领域工作流所需的程序性知识 ,而微调成本高昂 且会牺牲通用性
  • Agent Skills 提供了一种新兴的解决方案
    • Skill 是一个结构化的包,包含指令、代码模板、资源和验证逻辑,能在推理时增强智能体行为,无需修改模型本身(Anthropic, 2025a)
    • Skills 编码了程序性知识:
      • 标准操作流程、领域约定和任务特定的启发式方法,用以指导智能体行为
      • 这种模块化方法建立在用于 Temporal Abstraction 的 Option 框架(Sutton,1999)和用于语言智能体的认知架构(2023)之上
      • 这反映了成功的计算范式:
        • 基础模型:提供基础能力(类似于 CPU)
        • 智能体 harnesses 编排器(agent harnesses orchestrate):管理上下文和工具(类似于操作系统)
        • Skills 将能力扩展到专业领域(类似于应用程序)
  • Skills 生态系统发展迅速,社区仓库现已托管了成千上万个用户贡献的 Skills
    • 涵盖了软件工程、数据分析和企业工作流
  • Skills 激增,却没有任何基准测试能够系统地评估以下内容:
    • Skills 何时以及如何提升智能体性能,哪些内容能带来提升?
    • 如何区分有效 Skills 与无效 Skills 的设计原则是什么?
  • 本文的主要结果:
    • 精心策划的 Skills 在所有 7 种 model-harness 配置中都持续提高了任务解决率
    • 自生成的 Skills 带来的益处微乎其微
    • 问题不在于 “添加任务相关的上下文是否有帮助”,而在于:
      • 与基线增强相比,Skills 的帮助有多大?哪些 Skills 组件(指令、代码、示例)贡献最大?Skills 在什么情况下会失效?
  • 现有的智能体基准测试(2023; 2026; 2024; 2025;)评估的是原始模型能力的孤立表现
    • 这回答的是 “该模型在任务 \(X\) 上表现如何?”,而不是 “Skills \(Y\) 在任务 \(X\) 上提升了多少性能?”
    • 这一空白带来了实际影响:
      • 从业者无法就 Skills 的采用做出明智的决策,研究人员也缺乏指导 Skills 设计原则的实证基础
  • 本文提出 SkillsBench ,两个核心贡献:
    • 1)以 Skills 为中心的(Skills-centric)评估框架
      • 本文策划了跨 11 个领域的 84 个任务,每个任务在三种条件下执行(无 Skills、有精心策划的 Skills 和自生成 Skills)
      • 同时配有确定性验证器和完整的轨迹日志
      • 本文按难度对任务进行分层,并进行了泄漏审计(leakage audits),以确保 Skills 提供的是指导而非解决方案
    • 2)实证评估
      • 本文评估了 7 种智能体-模型配置,总计 7,308 条轨迹,提供了关于 Skills 有效性、方差和失败模式的系统性证据

SkillsBench

  • SkillsBench 基于 Harbor 框架(2026;)构建,每个任务都采用容器化结构
    • 环境包含 Agent Skills 和相关数据、一个确定性验证测试以及一个 Oracle 解决方案
  • 遵循智能体基准测试的最佳实践(2025; 2026),本文确保了严格的隔离性和确定性验证
  • 不同于评估原始模型和智能体 Harness 能力的 TerminalBench
    • SkillsBench 引入了一个关键的方法论差异:在原始(无 Skills) 和 Skills 增强 两种条件下评估每个任务,从而能够直接衡量 Skills 的有效性

Skills Specification

  • 一个 Skill 是满足四个标准的工件:
    • 程序性内容(Procedural content) :包含 “how-to(如何做)” 的指导(流程、工作流、SOP),而非事实检索
    • 任务类适用性(Task-class applicability) :适用于一类问题,而非单个实例
    • 结构化组件(Structured components) :包含一个 SKILL.md 文件以及可选的资源(脚本、模板、示例)
    • 可移植性(Portability) :Skills 完全基于文件系统 ,因此易于编辑、版本控制、共享,并可在不同的兼容 Skills 的智能体 Harnesses 上使用
  • 上述定义明确排除了:
    • system prompts:缺乏结构和资源
    • few-shot examples:声明性的,非程序性的
    • RAG 检索:事实性的,非程序性的
    • 工具文档(tool documentation):描述能力,而非流程
  • 注:作者提到这个边界并非绝对
    • 例如,一个 StackOverflow 的答案可能混合了事实性和程序性内容
    • 本文的标准为基准测试的构建提供了操作上的清晰度
    • 本文在表 1 中强调了 Skills 与其他增强范式的区别特征
  • 在 SkillsBench 中,每个 Skill 都是一个位于 environment/skills/ 中的模块化包,包含:
    • SKILL.md :指定如何处理一类任务的自然语言指令,即工作流、标准操作流程或领域约定
    • Resources :可执行脚本、代码模板、参考文档或可供智能体调用或参考的示例

Task Specification

  • SkillsBench 中的每个任务都是一个自包含的模块,包含四个组件:
    • Instruction :一个人类可读的任务描述,指明目标、输入格式和预期输出
      • 本文编写的指令让一个知识渊博的人类在没有配套 Skills 的情况下也能解决,尽管 Skills 可能会大大缩短解决时间
    • Environment :一个 Docker 容器,包含特定任务的数据文件和一个包含模块化 Skill 包的 skills/ 子目录
      • 该容器通过隔离的依赖关系和干净的文件系统状态确保了可复现性
    • Solution :一个展示任务可解性的参考实现。这个 Oracle 验证了每个任务至少有一条正确的解决路径
    • Verifier :带有程序化断言的确定性测试脚本,在适当情况下包含数值容差
      • 这确保了可复现的通过/失败判定,无需使用 LLM 作为评判者,遵循了基于执行的评估最佳实践(2023b; Brown, 2025)

Dataset Construction

  • Skills 的表达性和灵活性,以及本文的任务规范,使得能够广泛覆盖不同的领域和问题类型
    • 为了最大化这种多样性,本文采用了社区驱动的开源贡献模式:
      • 来自学术界和工业界的 105 位贡献者提交了 322 个候选任务
    • 本文统计了包含完整任务规范(指令、环境、解决方案和验证器)以及本文评估的难度等级的提交
    • 从这个库中,作者筛选出了最终的 SkillsBench 数据集

Contributing Principles

  • 贡献者必须满足明确的要求,以确保任务质量并防止“走捷径”:
    • 人工撰写的指令(Human-Authored Instructions)
      • 任务指令必须由人类撰写,而非语言模型生成
      • 本文强制执行这一点,因为 LLM 生成的查询将受限于 LLM 本身的分布,而 LLM 正是本文评估的对象,并且 LLM 生成的查询通常质量低下
    • Skill 的通用性(Skill Generality)
      • Skills 必须为一类任务提供程序性指导,而非针对特定实例的解决方案
      • 指令不得引用应使用哪些 Skills,这意味着智能体必须自主发现并应用 Skills
        • 这确保了衡量的是真正的 Skill 利用率,而非指令遵循能力
    • 确定性验证(Deterministic Verification)
      • 所有成功标准必须能通过程序化断言进行测试
      • 以验证所需的最少测试数量为目标,避免因覆盖率不足或冗余测试导致人为的低通过率
      • 测试必须包含信息丰富的错误消息,并使用参数化而非重复
    • 自动化验证(Automated Validation),每份提交在人工审查前都要经过自动化验证:
      • 结构验证 :所需文件存在(instruction.md, task.toml, solve.sh, test_outputs.py),目录布局正确,TOML/YAML 语法有效
      • Oracle 执行 :参考解决方案必须达到 100% 的测试通过率
        • Oracle 失败的任务将被拒绝
      • 指令质量 :指令必须是人工撰写的(本文同时采用人工审查和 GPTZero 审查,并实现了 100% 的人工标注)
        • 本文还根据六个标准评估指令(明确的输出路径、结构化的要求、成功标准、列出约束、上下文优先排序)
    • 人工审查(Human Review)
      • 自动化检查通过后,维护者会进行手动审查,评估五个标准:
        • (1)数据有效性 :输入数据必须反映现实世界的复杂性
          • 合成数据或玩具数据将被拒绝,除非有正当理由
        • (2)任务真实性 :场景必须反映真实的专业工作流程,避免人为制造难度
        • (3)Oracle 质量 :参考解决方案应符合领域专家解决该任务的方式
        • (4)Skill 质量 :Skills 必须无错误、内部一致,并且对此基准测试之外类似任务真正有用
        • (5)防作弊 :任务必须防止“走捷径”的解决方案(如编辑输入数据、从测试文件中提取答案、利用验证器实现)
      • 审查员会在多种智能体上,分别在有 Skills 和无 Skills 的情况下运行基准实验,以确认每个任务都能提供关于 Skill 有效性的有意义信号
  • 图 2 提供了三阶段流程的端到端概览:基准构建、质量过滤和评估
    • 第一阶段(基准构建):从三个来源聚合 Skills 去重后得到 47,150 个唯一的 Skills
      • 开源仓库(12,847 个)、Claude Code 生态系统(28,412 个)和合作伙伴(5,891 个)
      • 322 位贡献者提交了 105 个候选任务
    • 第二阶段(质量过滤):每个任务都经过自动化检查(结构有效性、AI 检测、泄漏审计)和人工审查(数据有效性、任务真实性、Oracle 质量、Skill 质量、防作弊),最终产生横跨 11 个领域的 84 个任务
    • 第三阶段(评估):任务在三种条件下(无 Skills、有精心策划的 Skills、自生成 Skills)在三个商业智能体 Harnesses(Claude Code、Gemini CLI、Codex CLI)上执行
      • 确定性的 pytest 验证器产生通过/失败结果
      • 7 种智能体-模型配置共产生了 7,308 条轨迹,精心策划的 Skills 平均提升了 +12.66 个百分点

Leakage Prevention

  • 为防止 Skills 编码特定任务的解决方案,本文强制执行明确的编写指南并进行泄漏审计
  • 一个基于 Claude Code Agent SDK 的验证 Agent 会在 CI 中运行,以检测潜在的 Skill-解决方案泄漏;检测失败的任务将被拒绝
  • Skills 不得包含:
    • 特定任务的文件名、路径或标识符
    • 解决基准测试任务的精确命令序列
    • 来自任务规范的常量、魔数或值
    • 对特定测试用例或预期输出的引用
  • Skills 必须应用于一类任务,而非单个实例
    • 提供程序性指导(如何做),而非声明性答案(输出什么),且独立于基准规范进行编写

Benchmark Composition

  • SkillsBench 包含横跨 11 个领域的 84 个任务,其类别分布如图 3 所示
  • 本文根据难度对任务进行分层,难度由本文作者认为的中等水平领域专家在无 AI 工具辅助下的预估完成时间来衡量
  • 原始任务贡献者提供了人工时间估计,并由来自相同领域的维护者组成的额外审查员团队进行了复核

Experimental Setup

  • 本文在 SkillsBench 上评估了三种商业智能体 Harnesses,涵盖七种前沿模型和三种 Skills 条件,最终获得了 7,308 条有效轨迹
  • 一条轨迹是有效的定义:
    • 智能体在任务上通过、失败或超时,且没有发生基础设施和运行时错误时
  • 每条轨迹代表一个智能体在特定 Skills 条件下尝试解决单个任务的一次尝试

Agent Harnesses

  • 本文评估了三种商业化的智能体:Claude Code (Anthropic, 2025b)、Codex CLI (OpenAI, 2025) 和 Gemini CLI (Google, 2025)

Models

  • 本文选择了七种前沿模型:
    • GPT-5.2 (OpenAI)、Claude Opus 4.5、Claude Opus 4.6、Claude Sonnet 4.5、Claude Haiku 4.5 (Anthropic)、Gemini 3 Pro 和 Gemini 3 Flash (Google)
  • 所有模型均使用 temperature=0 进行确定性采样
  • 本文使用每个模型兼容的智能体 Harnesses 进行评估
    • Claude Code 运行四种 Claude 模型(Sonnet 4.5, Haiku 4.5, Opus 4.5/4.6)
    • Gemini CLI 运行 Gemini 模型(Pro & Flash)
    • Codex CLI 运行 GPT-5.2
    • 共产生 7 种 Model-harness 配置
  • 完整的配置矩阵见表 7

Skills Conditions

  • 本文在三种条件下评估每个任务:
    • 无 Skills(No Skills) :智能体只收到 instruction.md,环境中没有 Skills
    • 有 Skills(With Skills) :完整的 environment/skills/ 目录,包含所有示例、代码片段和资源
    • 自生成 Skills(Self-Generated Skills) :未提供 Skills,但提示智能体在解决问题前自行生成相关的程序性知识。这用于分离 LLM 潜在领域知识的影响
  • 自生成条件在 7 种配置中的 5 种上进行了评估(所有 Claude Code 模型和 Codex)
    • Gemini CLI 不支持此条件

Evaluation Protocol

  • 本文将 Skills 作为系统级上下文提供,置于 SkillsBench 的任务指令之前
  • 附录 E 中列出了注入格式和上下文管理的详细信息
  • 对于每种条件,智能体与容器化环境交互,直到任务完成、超时或达到轮数限制
  • 验证器执行确定性断言,产生二元的通过/失败结果

Metrics

  • Pass Rate
    • 主要指标是通过率,遵循 Terminal-Bench (2026) 的评分方法:
      • 对于每个任务,计算 5 次试验中二元奖励的平均值,然后使用固定分母 84(评估任务数)对这些任务级别的分数进行平均
  • Normalized Gain
    • 遵循物理教育研究中的 Hake 公式 (Hake, 1998),将归一化增益定义为:
      $$g = \frac{\text{pass}_{\text{skill} } - \text{pass}_{\text{vanilla} } }{1 - \text{pass}_{\text{vanilla} } }$$
  • Interpreting Normalized Gain
    • 归一化增益有已知的局限性:
      • 比如:一个在原始条件下得分 90%、有 Skills 时得分 95% 的模型会产生 \(g = 0.5\)
        • 这与一个原始条件下得分 10%、有 Skills 时得分 55% 的模型相同
      • 这两者代表了不同的现象(天花板效应 vs. 真正的辅助)
        • 同时报告绝对提升值 \(\Delta\) 和归一化增益 \(g\),以便进行细致的解读
          • 高 \(g\) 配合低 \(\Delta_{\text{abs} }\) 表明存在天花板效应
          • 高 \(g\) 配合高 \(\Delta\) 则表明有显著的辅助作用
      • 本文将“一致的辅助效率”解释为相似的比例提升,而非相同的绝对提升

Results

  • 本文结果包含两个方面:
    • 1)在 84 个任务上,对 7 种 LLM-Agent 组合进行的三种 Skills 条件下的主要评估
    • 2)对 Skills 设计因素的详细分析,包括数量、复杂性和领域效应

Experiment 1: Skills Efficacy Across LLM-Agent Combinations

  • 本文评估了预定义的 Skills 和自生成的 Skills 如何影响跨商业 Model-harness 的 Agent 性能
  • 在 84 个任务上,对每种配置在三种条件下进行了测试:
    • 无 Skills、有预定义的 Skills 和有自生成的 Skills(在支持的情况下)
Main Results
  • 表 3 展示了每种 Model-harness 在所有三种条件下的通过率,按有 Skills 时的性能排序
Finding 1: Skills provide substantial but variable benefit,Skills 提供了实质提升,但是具有时效性和且在模型下效果不同
  • 在 7 种 Model-harness 上,Skills 平均提高了 +16.2 个百分点,但不同配置之间的方差很大(范围:+13.6 个百分点 到 +23.3 个百分点)
  • 这种可变性表明 Skills 的有效性在很大程度上取决于具体的 Agent-模型组合,这与 Skills 益处统一的假设相矛盾
  • 注意:本小节标题中的 Variable Benifit 是指这个收益会随着一些环境变化而变化
    • 时间变化,Agent-Model 变化
Finding 2: Gemini CLI + Gemini 3 Flash achieves maximum performance,Gemini CLI + Gemini 3 Flash 实现了最大收益
  • 表现最好的配置是带有 Gemini 3 Flash 的 Gemini CLI,在有 Skills 的情况下达到了 48.7% 的通过率
  • 带有 Opus 4.5 的 Claude Code 实现了最大的提升 (+23.3 个百分点)
    • 这反映了 Claude Code (Anthropic, 2025b) 针对 Agent Skills 规范 (Anthropic, 2025a) 优化的原生 Skills 集成
Finding 3: Self-generated Skills provide negligible or negative benefit,自生成的 Skills 几乎没有提供益处
  • 当被提示在解决任务之前生成自己的过程知识时,模型与无 Skills 基线相比平均下降了 -1.3 个百分点
  • 只有 Opus 4.6 显示出微弱的提升 (+1.4 个百分点)
    • Codex \(^+\) GPT-5.2 显著下降 (-5.6 个百分点),其余模型持平或下降
    • 这与预定义的 Skills (+16.2 个百分点) 形成鲜明对比,表明有效的 Skills 需要人工策划的领域专业知识,而模型无法可靠地自行生成
  • 轨迹分析揭示了两种失败模式:
    • (1) 模型识别出需要领域特定知识,但生成了不精确或不完整的过程(例如,列出“使用 pandas 进行数据处理”而没有具体的 API 模式)
    • (2) 对于高领域知识任务(制造、金融),模型通常无法识别需要专门的 Skills,而尝试使用通用方法解决
Harness-specific reliability
  • 除了 Skills 有效性之外,本文观察到不同商业 Harness 之间的可靠性差异:
    • Claude Code : Skills 利用率最高;改进范围从 Opus 4.6 的 +13.9 个百分点到 Opus 4.5 的 +23.3 个百分点,所有 Claude 模型都持续受益
    • Gemini CLI : 原始性能最高(Gemini 3 Flash 有 Skills 时达到 48.7%);改进范围从 +13.6 个百分点到 +17.4 个百分点
    • Codex CLI : 具有竞争力的原始性能(有 Skills 时为 44.7%);经常忽略提供的 Skills——Agent 会承认 Skills 内容,但通常独立实现解决方案
Domain-level Analysis
Finding 4: Skills benefit varies widely across domains.
  • 表 4 按领域展示了 Skills 的有效性,揭示了显著的异质性
  • 医疗保健 (+51.9 个百分点) 和制造业 (+41.9 个百分点) 受益最大,而数学 (+6.0 个百分点) 和软件工程 (+4.5 个百分点) 的提升较小
  • 需要模型预训练中代表性不足的专业过程知识的领域(例如,临床数据协调、制造工作流)显示出最大的改进,而预训练覆盖强的领域从外部过程指导中受益较少
Task-level Analysis
  • 对 84 个单独任务的分析揭示了 Skills 有效性的高方差:
    • Skills 受益最大的任务 (Top Skills beneficiaries) :
      • 显示最大改进的任务包括:
        • mario-coin-counting (+85.7 个百分点,从 2.9% 到 88.6%)
        • sales-pivot-analysis (+85.7 个百分点)
        • flood-risk-analysis (+77.1 个百分点)
        • sec-financial-report (+74.3 个百分点)
      • 这些任务涉及预训练中很少涵盖的专业过程知识
    • Skills 损害了某些任务的性能 (Skills hurt performance on some tasks) :
      • 尽管领域总体为正,但 84 个任务中有 16 个显示出负的 Skills 增量:
        • taxonomy-tree-merge (-39.3 个百分点)
        • energy-ac-optimal-power-flow (-14.3 个百分点)
        • trend-anomaly-causal-inference (-12.9 个百分点)
        • exoplanet-detection-period (-11.4 个百分点)
      • 这些失败表明,对于模型已经处理得很好的任务,Skills 可能会引入相互矛盾的指导或不必要的复杂性

Experiment 2: Skills Design Factors

  • 为了理解 Skills 设计如何影响有效性,分析了 Skills 数量、复杂性与性能之间的关系
Skills Quantity Analysis
  • 表 5 按提供的 Skills 数量划分的通过率
Finding 5: 2–3 Skills are optimal; more Skills show diminishing returns.
  • 表 5 显示了按每个任务提供的 Skills 数量分层的性能
  • 有 2-3 个 Skills 的任务显示出最大的改进 (+18.6 个百分点),而 \(^{4 + }\) 个 Skills 仅提供了 +5.9 个百分点的益处
  • 这种非单调关系表明,过多的 Skills 内容会造成认知负担或相互矛盾的指导
Skills Complexity Analysis,复杂性分析
  • 表 6. 按 Skills 复杂性级别划分的通过率
    • Detailed 和 Compact Skills 优于 Comprehensive Skills
Finding 6: Moderate-length Skills outperform comprehensive ones,中等长度的 Skills 优于 Comprehensive Skills
  • 表 6 中展示了 Skills 文档复杂性对性能的影响
    • Detailed (+18.8 个百分点) 和 Compact (+17.1 个百分点) Skills 提升最多
    • Comprehensive Skills 损害了性能 (-2.9 个百分点)
    • 说明:集中的过程指导比详尽的文档更有效
      • 也就是说:Agent 可能难以从冗长的 Skills 内容中提取相关信息,而且过于复杂的 Skills 会消耗上下文预算而不提供可操作的指导
Model Scale Effects,Model 规模效应
  • 本节研究基础模型规模在 Claude 模型家族(Opus, Sonnet, Haiku 4.5)中的影响
Finding 7: Smaller model + Skills can exceed larger model without Skills,较小的模型 \(+\) Skills 的组合可以超过没有 Skills 的较大模型
  • 带有 Skills 的 Claude Haiku 4.5 (27.7%) 比没有 Skills 的 Haiku (11.0%) 高出 +16.7 个百分点
  • 没有 Skills 的 Claude Opus 4.5 达到了 22.0%(低于带 Skills 的 Haiku 4.5 模型的 27.7%)
  • 这表明 Skills 可以在一定程度上弥补模型在过程任务上的能力限制

Discussion

  • Skills close procedural gaps,Skills 弥补了过程差距

    • 当成功依赖于具体过程和验证器关注的细节(步骤、约束、合理性检查),而不是广泛的概念知识时,Skills 最有帮助
    • 在具有专业工作流程或严格格式的领域观察到巨大收益,而在模型已有强大先验知识且 Skills 增加了开销或冲突时,收益较小甚至为负
  • Harnesses mediate Skills use,Harness 调节了 Skills 的使用

    • Skills 的有效性不仅取决于 Skills 的质量,还取决于 Harness 如何实现 Skills
      • 某些 Harness 能够可靠地检索和使用 Skills
      • 其他 Harness 虽然经常承认 Skills 内容,但进行下去时却没有调用它们
      • 结构化的接口也可能引入长轨迹失败模式(例如,格式漂移),从而降低早期注入的 Skills 的影响
    • 本文在多种 Harness 下评估 Skills,而不是将 “有 Skills” 视为单一条件
  • Implications for Skills authoring,对 Skills 创作的启示

    • 本文分析表明,简洁、分步指导加上至少一个工作示例通常比详尽的文档更有效
      • 过长的 Skills 定义会增加上下文负担而不会改善决策
    • 模块化的 Skills 在多部分任务上似乎也能更好地组合,并且 Skills 应明确匹配 Harness 约束(例如,对于仅 JSON 的协议,重复格式提醒)

Limitations and Future Work

Coverage and generalization
  • SkillsBench 专注于基于终端、容器化的任务以实现可重复评估,因此结果可能无法直接迁移到 GUI Agent、多 Agent 协调或超长时程工作流
  • 本文还评估了一组有限的模型和 Harness
    • 商业 Harness 的行为和 Skills 集成可能会随时间变化
    • 一个自然的扩展是为在 GUI 环境中运行的视觉-语言 Agent 开发多模态 Skills 和协议
Causal attribution and controls,因果归因与控制
  • Skills 的注入增加了上下文长度,因此观察到的收益可能部分反映了“更多上下文”而非过程结构
  • 本文的自生成 Skills 条件表明结构很重要:
    • 即使具有相同的上下文预算,模型暂时无法可靠地产生有效的过程指导
    • 注:未来的工作需要更强有力的长度匹配基线(例如,随机/无关文本和仅检索的文档控制)
    • 这些基线还可以研究从演示或文档中自动合成 Skills,并隔离哪些 Skills 组成部分(步骤、示例、代码资源)推动了改进
Determinism, contamination, and ecological validity,确定性、数据污染与生态有效性
  • 容器化提供了状态隔离,但不能保证完美的确定性或免受训练集泄漏的影响
  • 本文通过多次运行、泄漏审计(第 2.4 节)和配对(有 Skills vs. 无 Skills)比较来缓解这些问题,但无法消除所有非确定性或记忆效应
  • 未来的工作应在生态代表性设置中进行评估,包括低质量和自动选择的 Skills,并研究 Skills 的组合——当多个 Skills 有帮助或相互干扰时,以及复合性能是否可以由原子 Skills 效应预测

Related Work

  • SkillsBench 与之前关于以下方面的工作相联系:
    • (1) 对 LLM Agent 进行基准测试
    • (2) 用过程知识和工具增强 Agent
    • (3) 评估跨异构系统的改进

Agent benchmarks

  • 近期的工作评估了在现实环境中的端到端 Agent 能力
    • 包括 Terminal-Bench (2026)、SWE-bench 及其后续工作 (2024; 2024; 2025)
  • 更广泛的环境覆盖出现在 AgentBench 和交互式/网页/GUI 设置中 (2023; 2024b; 2024; 2024)
  • 部分测试集强调工具介导的(Tool-mediated)工作流、交互式执行反馈或领域专业化 (2025; 2024; 2023; 2025; 2024; 2025; 2021; 2025)
    • 这些基准测试衡量固定 Agent 完成任务的能力
  • 本文:SkillsBench 通过配对评估来衡量增强的有效性

Procedural augmentation and tool use,过程增强 & 工具使用

  • 先前的工作通过结构化推理或外部知识来增强 Agent,比如
    • CoALA 和 Voyager (2023; 2023a)
    • 用于多步问题解决的链式思维和 ReAct (2022; 2022; 2023)
    • 检索/工具使用 (2020; 2022; 2023; 2024)
    • 声明式优化框架 (2023)
  • Skills 结合了过程指导和可执行资源(第 2.1 节)
    • 尽管存在多种增强方法,但基准测试很少量化它们实际的影响

Skills ecosystems and evaluation methodology

  • Anthropic 的 Agent Skills 和 MCP 规范 (Anthropic, 2025a; 2024) 形式化了 Skill 包和工具连接性
    • Agent CLI(Claude Code、Gemini CLI 和 Codex)提供了现实世界的 Harness (Anthropic, 2025b; Google, 2025; OpenAI, 2025)
  • SkillsBench 评估了商业 Harness 和基于 Terminal-Bench (2026) 的模型无关 Harness
    • 用于分离模型和 Harness 效应
  • 更广泛的基准测试激励了仔细的报告和可比性 (2020; 2024; 2023)
  • 本文报告了绝对增益和归一化增益 (1998),以比较不同基线下的改进(第 3.5 节)
1…161718…352
San Ye

San Ye

Stay Hungry. Stay Foolish.

704 posts
53 tags
© 2026 San Ye
Powered by Hexo
|
Theme — NexT.Gemini v5.1.4