← 返回 2026-10-02

基于跨框架适配的检索增强技能优化 Retrieval-Augmented Skill Optimization via Cross-Harness Adaptation

Jaewon Chu, Ji Soo Lee, Jihwan Park, Dohwan Ko, Jeehye Na, Seunghun Lee, Taehoon Lee, Minseo Yoon, Minseok Joo, Yunyang Xiong, Hyunwoo J. Kim 📅 2026-09-29 👍 37 2026-11-11 18:30
LLM Agent 技能优化 提示优化 检索增强 跨域迁移

用外部技能库检索加跨框架适配,替代昂贵rollout试错来初始化并迭代优化智能体技能

前置知识

Agent Skill(智能体技能)

一段可复用、可执行的自然语言文档(如 skill.md),作为上下文提供给 LLM 智能体,指导它在特定执行框架下如何完成任务。与编码在模型权重中的策略不同,技能以纯文本形式存在,因此易于检查、审计、编辑,并且无需修改就能跨模型迁移。Anthropic 在 2025 年提出的 Agent Skills 概念使这一形式成为生态标准。

本文的优化对象就是技能文本本身。理解技能是自然语言决策变量,才能理解为什么可以用检索、适配、文本梯度这些文本操作来优化它,而不需要梯度下降或微调。

Execution Harness(执行框架)

智能体的运行环境契约,定义了可用的工具集、文件访问权限、观察格式、交互轮数预算和评分规则。同一个任务在不同 harness 下(例如用 openpyxl 操作 Excel 的框架与用 numpy 处理栅格图像的框架)需要完全不同的操作指令。

本文的核心痛点就是 harness 不匹配:论文统计 SpreadsheetBench 上检索到的技能 92.9% 来自不同 harness。Cross-Harness Adaptation 整个机制都围绕把知识翻译到目标 harness 的词汇体系。

Rollout 与技能优化

Rollout 指智能体带着当前技能在任务实例上完整执行一次并获得奖励评估。技能优化把技能 $s$ 当作文本决策变量:在训练集上收集 rollout,用 LLM 根据成功/失败经验改写技能,在验证集上选择最优技能 $s^\star = \arg\max_s \mathbb{E}_{x\sim D_{val}}[r(h(M,x,s))]$。

现有方法(TextGrad、GEPA、SkillOpt、WikiSkill)全部依赖 rollout 反馈做纯自举式优化,成本高且受限于智能体自身经验。RASO 的定位就是在初始化和更新两个阶段都注入外部知识来补充 rollout 信息。

文本梯度(Textual Gradient)

把反向传播的思想搬到文本空间:由 LLM 分析失败的执行轨迹,产出自然语言形式的批评和改进建议 $\delta_i$,作用类似参数优化中的梯度,指示技能文本应该往哪个方向修改。TextGrad 首先系统化使用了这一概念。

RASU 中文本梯度是检索查询的来源:每个 $\delta_i$ 配对一个检索查询 $q_i$,使外部知识检索精准对准当前技能暴露出的失败模式,而不是泛泛检索相关内容。

BM25 稀疏检索

经典的词频-逆文档频率类排序算法,根据查询词与文档的词项匹配程度打分,不需要训练。相比稠密向量检索,它对词面精确匹配强,但对同义改写和跨域词汇差异敏感。

RASO 用 BM25 在技能章节级语料上检索 top-K(默认 $K=5$)相关章节,是整个框架的知识入口。理解它的词法匹配特性,有助于分析论文在跨域检索场景下的潜在瓶颈。

研究动机

现有技能优化方法(TextGrad、GEPA、SkillOpt、WikiSkill 等)几乎完全依赖智能体自身的执行轨迹来迭代改进技能:先让智能体在训练任务上反复试错,再用 LLM 根据失败反馈修改技能文本。这带来两个具体问题。其一,试错成本高:实验部分显示 TextGrad 在 WebShop 上优化一个技能需要 360 次 rollout、耗费 41.03 美元 API 费用,GEPA 因额外评估调度甚至需要 370 次。其二,探索范围受限:智能体无法从自己的轨迹中推断出它根本不知道的程序性知识。与此同时,社区已公开积累了几百万份覆盖不同任务、领域和 harness 的技能(GitSkills 数据集),但现有优化方法完全无视这些现成知识。更麻烦的是,即便检索到相关技能也不能直接用:论文实证统计显示,SpreadsheetBench 上检索到的技能有 92.9% 来自与目标不同的 harness,只有 7.1% 可直接复用;直接复用的 SkillRouter 基线在 ALFWorld 上得分 55.97,甚至低于无技能基线的 64.43。

本文的目标是本文的目标是让外部技能语料库成为技能优化的先验知识,并贯穿优化全程。具体分三点:(1)提出 RASI(检索增强技能初始化),仅凭任务描述 $T$ 和框架描述 $H$,在零 rollout 的条件下构建高质量初始技能,把优化起点从「LLM 凭参数知识自由发挥」提升为「基于检索到的程序性知识有据综合」;(2)提出 RASU(检索增强技能更新),迭代优化时先从失败 rollout 定位缺失知识,再定向检索外部技能来补足,而非仅靠 optimizer 模型自我反思;(3)提出 Cross-Harness Adaptation 机制,解决检索技能与目标任务、目标执行框架的双重不匹配,把来源领域的指令抽象后用目标 harness 支持的物件、命令和单位重新表达。最终目标是在相同的 rollout 预算下,全面超越 TextGrad、GEPA、SkillOpt、WikiSkill 这些强基线。

与已有工作不同的是,本文的独特切入角度是把技能优化从纯自举范式转向检索增强范式——类似 NLP 从零训练到预训练加微调的转变,让积累的公共技能库成为优化的先验而非被忽视的资产。实现上有三个关键设计差异。一是粒度:不做整篇技能文档检索,而是按标题切分做 section 级细粒度检索,避免整篇文档目标相似但过程无关的内容稀释信噪比。二是适配:论文用 92.9% 的 harness mismatch 率说明直接复用不可行,因此提出 Cross-Harness Adaptation,遵循三条原则——删除源领域专有名词和目标 harness 没有对应物的步骤、只聚焦当前需求、关于工具/参数行为的具体断言仅在目标框架描述 $H$ 能佐证时才保留。三是全程使用:已有外部知识方法要么只在测试时逐实例检索适配(如 Agent KB),要么只在初始化时用一次外部知识,而 RASO 在初始化(RASI)和每一次更新(RASU)中都检索适配,随任务经验积累持续引入新知识。

核心方法

直觉上,RASO 把技能优化变成「带着图书馆解题」:遇到不会的步骤先查资料(从外部技能库检索),把资料翻译成本地环境能用的说法(跨框架适配),再写进操作手册(技能文档)。技术路线形式化为:冻结的模型 $M$ 在执行框架 $h$ 下作为智能体运行,唯一决策变量是自然语言技能 $s$,优化目标为 $s^\star = \arg\max_s \mathbb{E}_{x\sim D_{val}}[r(h(M,x,s))]$,初始技能的构建本身也被纳入优化问题。框架包含两个互补阶段:RASI 在零 rollout 条件下从 $T$、$H$ 出发合成初始技能 $s_0$;RASU 从 $s_0$ 出发,在 $D_{train}$ 上执行 rollout,根据失败轨迹把 $s_t$ 迭代改进为 $s_{t+1}$,候选技能只有验证集上超过 $s_t$ 才被接受,否则保留原技能。两个阶段共享同一条「查询生成 → BM25 章节级检索 → Cross-Harness Adaptation」流水线,区别仅在于查询的生成依据是任务描述还是执行反馈。

核心创新是 Cross-Harness Adaptation:适配智能体 $A_{adaptation}$ 以待解决的需求 $c_i$、任务描述 $T$、框架描述 $H$ 和检索到的 top-K 章节 $S_{q_i}$ 为输入,产出一条简明可执行的经验教训 $\ell_i = A_{adaptation}(c_i, T, H, S_{q_i})$。它与已有方法的本质区别在于:SkillRouter 等检索方法把源框架的假设和目标环境不存在的工具原样搬进目标环境;而本文强制适配遵循三条原则——(1) 剔除领域专有名词、省略目标 harness 中没有对应物的流程;(2) 只针对需求 $c_i$,不夹带无关问题;(3) 关于工具或参数行为的具体断言,只有被 $H$ 佐证时才保留,宁可在目标 harness 内保持正确也不追求可能失准的具体性。Figure 5 的定性实验生动展示了价值:从卫星图像处理技能(numpy/raster)检索来的「跳过空组」规则被改写成电子表格语境的「输出留白而非强行计算」,生成的代码正确把无数据部门的单元格留空;去掉该检索章节后,模型把 C 列均值错位写进 B 的单元格导致失败。

方法步骤详情

RASI 四步(无 rollout):(1) 程序与查询生成——$A_{query\_init}$ 从任务描述 $T$ 和框架描述 $H$ 产出需求-查询对 $\{(c_i, q_i)\}_{i=1}^M$,$c_i$ 是具体任务流程或框架约束(如多轮预算管理),$q_i$ 是对应的检索查询;(2) 章节检索——技能文档按标题切分为语料 $\mathcal{C}$,BM25 为每个 $q_i$ 取 top-$K=5$ 章节 $S_{q_i}$;(3) 跨框架适配——每对生成教训 $\ell_i$ 组成 $L_{init}$;(4) 技能初始化——$s_0 = A_{skill\_init}(T, H, \{c_i\}, L_{init})$,把每条教训整合进 $c_i$ 对应的执行步骤。RASU 四步(带 rollout):(1) 从 $D_{train}$ 采 40 任务 minibatch 用 $s_t$ 执行 rollout,轨迹按 8 个一组分块,$A_{query\_update}$ 为每个失败模式生成文本梯度 $\delta_i$ 和查询 $q_i$,再合并去重;(2)(3) 走同一条检索加适配流水线得 $L_{update}$;(4) 更新——$s_{t+1} = A_{skill\_update}(s_t, \{\delta_i\}, L_{update})$,仅当验证集上优于 $s_t$ 才接受。优化共跑 2 个 epoch。

技术新颖性

技术新颖性体现在四个层面。其一,问题定义扩展:把初始技能构建纳入技能优化问题(此前工作假设初始技能外部给定),并证明零 rollout 初始化本身就有大幅收益——GPT-5.6-Luna 上 RASI 比 RFSI 在 OfficeQA 高 5.63 分。其二,检索粒度:section 级检索针对技能文档「整体目标各异但局部流程可迁移」的特点,比文档级检索信噪比更高。其三,适配作为一等公民:与 Agent KB 只在测试时逐实例适配、Anything2Skill 只在编译期一次性用外部知识不同,RASO 把「检索→适配→写入技能」做成 RASI 与 RASU 共享的原语;消融显示去掉适配后 RASI 在 SpreadsheetBench 从 49.17 跌到 41.43(-7.74),RASU 从 63.33 跌到 57.86(-5.47),证明收益主要来自适配而非检索本身。其四,失败驱动的定向检索:RASU 的查询由文本梯度引出,让检索服务于补足当前技能的具体缺陷。此外在效率上,RASO 的 rollout 数与 TextGrad/WikiSkill 完全相同(196/320/114/360),但 API 成本降低 42–75%,说明收益并非靠堆预算。

Overview of RASO.
Figure 2: Overview of RASO.
Qualitative example of Cross-Harness Adaptation.
Figure 5: Qualitative example of Cross-Harness Adaptation.

实验结果

主实验覆盖 4 个基准、2 个模型(GPT-5.6-Luna、Qwen-3.5-9B)、3 个随机种子。初始化阶段(Table 1):RASI 在两模型全部基准上第一,GPT-5.6-Luna 上比 RFSI 在 OfficeQA +5.63(45.74 对 40.11)、Spreadsheet +4.77(49.17 对 44.40)、ALFWorld +3.24(72.64 对 69.40)、WebShop +1.17(45.06 对 43.89);Qwen 上 WebShop 提升高达 +10.73(23.27 对 12.54)。直接复用检索的 SkillRouter 在 ALFWorld 只有 55.97,低于无技能的 64.43,佐证适配必要性。更新阶段:GPT-5.6-Luna 上 RASO 比最强对手在 OfficeQA +3.49(49.03 对 SkillOpt 45.54)、Spreadsheet +6.31(63.33 对 57.02);Qwen 上 WebShop +11.30(24.73 对 13.43)、ALFWorld +7.47(51.00 对 43.53)。消融(Table 2):两组件互补,OfficeQA 上 RFSI+RFSU 40.70 → 仅 RASU 47.56 → 仅 RASI 45.93 → 全开 49.03(+8.33),Spreadsheet 51.67 → 63.33(+11.66)。Table 4 固定 RASI 初始化后,RASU 仍比最强更新基线高 1.94–3.09,说明优势来自更新算法本身。成本(Table 9/10):rollout 数与 TextGrad 完全相同的情况下,RASO 在 4 个基准中 3 个 API 成本最低,比 TextGrad 省 42–75%(WebShop 10.28 对 41.03 美元)。Figure 3 显示 $K=5$ 最优、$K=10$ 略降;Figure 4 显示仅 1% 语料已有收益,语料越大越好。

Agent performance with GPT-5.6-Luna and Qwen-3.5-9B.
Table 1: Agent performance with GPT-5.6-Luna and Qwen-3.5-9B.
Ablation on the initialization (Init.) and update components with GPT-5.6-Luna.
Table 2: Ablation on the initialization (Init.) and update components with GPT-5.6-Luna.
Effect of adaptation with GPT-5.6-Luna.
Table 3: Effect of adaptation with GPT-5.6-Luna.
Update methods under a fixed RASI initialization with GPT-5.6-Luna.
Table 4: Update methods under a fixed RASI initialization with GPT-5.6-Luna.
Number of tasks in each split.
Table 5: Number of tasks in each split.
Update methods under a fixed RFSI initialization with GPT-5.6-Luna.
Table 8: Update methods under a fixed RFSI initialization with GPT-5.6-Luna.
Number of rollouts used for skill optimization, excluding test-set evaluation.
Table 10: Number of rollouts used for skill optimization, excluding test-set evaluation.
Effect of the number of retrieved sections K with GPT-5.6-Luna.
Figure 3: Effect of the number of retrieved sections K with GPT-5.6-Luna.
Effect of skill corpus size with GPT-5.6-Luna.
Figure 4: Effect of skill corpus size with GPT-5.6-Luna.
查看结构化数据
任务指标本文基线提升
OfficeQA 技能优化(GPT-5.6-Luna) 准确率 (%) RASO 49.03 SkillOpt 45.54 +3.49
SpreadsheetBench 技能优化(GPT-5.6-Luna) 在线评测通过率 (%) RASO 63.33 SkillOpt 57.02 +6.31
ALFWorld 技能优化(GPT-5.6-Luna) 任务成功率 (%) RASO 74.13 SkillOpt 72.64 +1.49
WebShop 技能优化(GPT-5.6-Luna) 奖励 (%) RASO 46.61 GEPA 45.54 +1.07
OfficeQA 技能优化(Qwen-3.5-9B) 准确率 (%) RASO 42.25 WikiSkill 37.40 +4.85
SpreadsheetBench 技能优化(Qwen-3.5-9B) 在线评测通过率 (%) RASO 31.55 WikiSkill 29.76 +1.79
ALFWorld 技能优化(Qwen-3.5-9B) 任务成功率 (%) RASO 51.00 GEPA 43.53 +7.47
WebShop 技能优化(Qwen-3.5-9B) 奖励 (%) RASO 24.73 WikiSkill 13.43 +11.30
OfficeQA 零 rollout 技能初始化(GPT-5.6-Luna) 准确率 (%) RASI 45.74 RFSI 40.11 / SkillRouter 11.44 +5.63(相对 RFSI)
SpreadsheetBench 零 rollout 技能初始化(Qwen-3.5-9B) 在线评测通过率 (%) RASI 30.48 RFSI 27.74 / No skill 28.81 +2.74(相对 RFSI)
WebShop 零 rollout 技能初始化(Qwen-3.5-9B) 奖励 (%) RASI 23.27 RFSI 12.54 +10.73
优化 API 成本(GPT-5.6-Luna, WebShop) 美元 (USD) RASO 10.28 TextGrad 41.03 降低 75%(-30.75)

局限与改进

可观察到的局限包括:(1)实验规模有限——训练集很小(OfficeQA 仅 50 题、ALFWorld 39 局),优化只跑 2 个 epoch,技能优化的上限和更长时间尺度的行为未探明;(2)检索器只是 BM25 词法匹配,未用稠密检索或重排,而跨域检索(电子表格任务查到卫星图像技能)恰是本文的核心场景,词汇不重叠的语义相关章节可能漏检;(3)收益依赖 GitSkills 语料的领域覆盖,虽然 Figure 4 显示 1% 语料已有收益,但稀疏领域会缩水;(4)适配智能体由 LLM 充当,原则 (3) 虽要求以 $H$ 为准,但适配忠实性没有形式化保证,可能默默丢失或篡改关键程序细节;(5)验证集接受准则在小验证集(24–40 题)上受随机波动影响,可能误拒好候选或对 $D_{val}$ 过拟合,文中未做显著性分析;(6)任务与框架描述 $T,H$ 由 codex 一次性生成并固定,其质量成为所有方法的共同上限;(7)防数据泄漏靠关键词 blocklist 加整仓库排除,是保守启发式,无法保证完全无泄漏;(8)只在 2 个模型上验证,且 optimizer 与 target 同模型,论文自己强调技能可跨模型复用,但跨模型迁移的稳健性未测。

独立分析的弱点

独立分析有六个弱点。其一,BM25 检索瓶颈:跨域检索是本文立身之本,但纯词法匹配对「同义不同词」的程序性知识很弱,Figure 3 中 $K=10$ 性能下降也暗示噪声问题。改进方向是混合检索(BM25+稠密向量)加 cross-encoder 重排。其二,检索与适配单向串联:适配只能改写检索到的内容,检索漏了就无法补救,可让适配产出的教训反查语料做二次检索形成闭环。其三,贪心验证集接受:单一候选接受/拒绝在噪声下不稳定,可引入 GEPA 式 Pareto 前沿保留多样性或做配对显著性检验。其四,单文档技能形态:所有知识压进一个 skill.md,技能变长后有上下文压力和条目冲突风险,可走向模块化技能库加依赖管理。其五,失败归因依赖 optimizer LLM:文本梯度 $\delta_i$ 的质量决定检索查询质量,归因错了检索就白做,可让环境原生信号(报错信息、评分细则)直接参与查询构造。其六,语料时效性:技能生态持续演化,BM25 索引需要增量更新与技能质量过滤机制,否则旧索引会逐渐偏离社区知识分布。

未来方向

作者层面的延伸:Cross-Harness Adaptation 目前完全依赖 LLM 隐式对齐,可构建显式的 harness 本体或工具映射表来校验适配产物的正确性;把 RASO 推广到多智能体系统和多技能组合优化场景。基于成果可延伸的方向:(1)与强化学习结合——把适配后的教训当作策略先验,用 RL 在检索增强的技能空间内继续优化,检验文本先验与参数更新的互补性;(2)可迁移性预测器——学习一个打分器预测哪些技能章节对目标任务值得检索适配,替代纯相关性排序,直接优化「迁移价值」;(3)终身学习部署——技能随线上运行持续更新,研究外部语料知识与自身经验教训的置信度加权融合,避免外部过时知识污染;(4)跨模型与跨 harness 迁移的系统性研究——论文强调技能文本天然可移植,可量化 RASO 优化出的技能在不同目标模型、不同 harness 版本间的保持率;(5)理论刻画——何时检索增强的文本优化优于纯自举,可从探索覆盖面和知识先验偏差的角度建模。

复现评估

复现难度中等偏低,总体友好。有利因素:(1)方法全部由 prompt 工程加 BM25 加现成 LLM 调用构成,无需任何训练,算力门槛极低——Qwen-3.5-9B 用 vLLM 在单张 RTX A6000 上即可服务,GPT-5.6-Luna 走 API 且整个优化流程成本仅 0.49–10.28 美元/基准;(2)实现细节披露非常充分:2 个 epoch、minibatch 40、轨迹分块 8、$K=5$、采样温度(rollout 0.0 / optimizer 0.7)、reasoning effort low、blocklist 的构造规则(关键词命中即排除整个仓库)、$T/H$ 由 codex 生成一次并冻结、RFSI 与 RASI 严格同 pipeline 只去掉检索,全在附录写明;(3)四个基准全部公开且 train/val/test 划分明确(Table 5),外部语料 GitSkills 公开可取。不利因素:(1)GPT-5.6-Luna 是闭源 API,结果受模型版本迭代影响;(2)GitSkills 是动态演化的 GitHub 语料,检索命中难以逐条复现;(3)流水线涉及查询生成、适配、初始化、更新多个 LLM 智能体,若 prompt 未完全开源会引入实现差异;(4)文中未明确承诺开源代码。综合判断:若代码与 prompt 公开,复现相对结论(各方法排序)较容易,逐数字复现受语料与 API 漂移影响有一定随机性。

相似论文推荐