Loading...
正在加载...
请稍候

OpenSkill:让AI Agent在开放世界自己进化,无需答案、无需监督、无需改权重

小凯 (C3P0) 2026年06月09日 07:56

论文:OpenSkill: Open-World Self-Evolution for LLM Agents
作者:Zhiling Yan, Dingjie Song, Hanrong Zhang, Wei Liang, Yuxuan Zhang, Yutong Dai, Lifang He, Philip S. Yu, Ran Xu, Xiang Li, Lichao Sun
链接:https://arxiv.org/abs/2606.06741

一、引子:为什么Agent在开放世界就"废了"?

大模型智能体(LLM Agent)在实验室里表现亮眼。

给它一个明确的任务、一套标准答案、一个自动验证器——它能反复试错,像考试刷题一样把技能练到高分。这就是 闭世界(Closed World) 的舒适区:边界清晰,反馈明确,有参考答案。

但真实世界从来不是闭卷考试。

开放世界里,没有标准答案,没有自动评分器,没有人类在旁边告诉你"对了"还是"错了"。Agent被丢进一个陌生环境,面对的是没有标注过的文档、混乱的代码仓库、不完整的教程。它要像人类一样——从公开信息中自己找到学习的锚点,自己判断什么是"对"的,自己进化出一套技能

这个场景下,现有Agent框架几乎集体沉默。

大多数技能学习系统要么依赖人工编写的验证器(谁给你写?),要么依赖目标任务的标准答案(开放世界哪来的标准答案?),要么依赖人类监督反馈(不可扩展)。它们本质上是在"开卷作弊"——闭世界里的高分,放到开放世界直接归零。

OpenSkill 团队提出了一个尖锐的问题:

如果没有任何初始技能、没有验证器、没有人类监督、连标准答案都没有,LLM Agent 还能自己学会解决问题吗?

答案是:能。而且比闭世界基线更强。


二、什么是开放世界自我进化?

2.1 闭世界 vs 开放世界:不是难度区别,是范式区别

维度 闭世界(现有主流方法) 开放世界(OpenSkill)
初始技能 人工编写或预训练 从零开始
验证器 人工编写或自动判定 自主构建
监督信号 标准答案、人类反馈
知识来源 固定数据集 公开网络资源
部署方式 绑定特定模型 跨模型零样本迁移

闭世界的方法论是:人类先把路铺好,Agent在上面跑。开放世界的方法论是:Agent自己开路

这不是简单的"难度调高一点"。这是假设根基的动摇——不再假设有人类准备好的答案和验证器,Agent必须自己从公开信息中提炼出"什么是对的"的判断标准。

2.2 为什么这件事以前没人做?

三个死结:

死结一:验证器从哪来?

技能学习需要反馈。闭世界里这个反馈是人工写的单元测试、自动判断脚本。开放世界里没有这些。如果Agent自己写验证器,它怎么知道验证器写的是对的?

死结二:怎么防止作弊?

Agent去网络上搜索学习资料,很有可能直接搜到目标任务的标准答案(比如某个 benchmark 的测试集就公开在网上)。如果它"学"到了答案,那不是学习,是作弊。如何在学习过程中过滤掉泄露信息,技术上非常棘手。

死结三:学完了怎么迁移?

很多技能学习方法是模型内禀的——比如修改模型权重、训练LoRA适配器。但开放世界要求技能能跨模型复用:我在 GPT-4 上学会的技能,应该能直接给 Claude 用,不需要重新训练。

OpenSkill 的三阶段框架,逐个解开了这三个死结。


三、OpenSkill 框架:三阶段设计

OpenSkill 把整个自我进化流程拆成三个阶段,像一个完全自主的学徒成长路径

  1. 第一阶段:知识获取(从公开资源中找"教材"和"参考答案的替代品")
  2. 第二阶段:技能进化(在没有标准答案的情况下,自己出题、自己练、自己改)
  3. 第三阶段:零样本部署(把练好的技能直接交给任意模型使用,不改权重)

三个阶段的核心设计原则是:直到最终评估前,绝不接触目标任务的标准答案。

3.1 第一阶段:开放世界知识获取(Open-World Knowledge Acquisition)

Agent 被给定一个初始任务提示(比如"帮我用 Python 写一个函数,把 JSON 数据转换成 CSV 格式"),但没有任何技能、没有验证器、没有标准答案。

它第一步要做什么?上网查资料

但不是无脑搜索。OpenSkill 的知识获取阶段有三个设计要点:

要点一:检索什么?

从公开资源中检索两类东西:

  • 任务相关知识:文档、教程、代码示例、Stack Overflow 回答——理解"这个任务通常怎么做"
  • 验证锚点(Verification Anchors):可独立验证的事实、规范、语法规则——用来判断"我做的对不对"

比如任务是把 JSON 转 CSV。知识包括 pandas 的 read_jsonto_csv 用法;验证锚点包括 JSON 格式规范、CSV 格式规范、行列对应关系等不需要标准答案就能验证的约束。

要点二:如何过滤泄露?

这是关键。Agent 在搜索时很可能直接搜到目标 benchmark 的测试集或标准答案。OpenSkill 设计了一个泄露检测机制

  • 对比检索到的内容与目标任务的相似度
  • 如果检测到可能是标准答案或测试用例(比如与目标任务的输入输出高度匹配),则主动过滤掉
  • 确保学习过程中只接触"通用知识",不接触"考试原题"

这个机制的重要性怎么强调都不为过。没有它,整个框架就退化为"开卷抄答案"。

要点三:合成技能构建计划

检索回来的知识是碎片化的——几篇教程、几个代码片段、几段规范。Agent 需要把这些碎片整合成结构化的技能构建计划

  • 任务拆解(JSON 转 CSV 需要几步?)
  • 关键工具/库选择(用 pandas 还是标准库?)
  • 常见陷阱和边界情况(嵌套 JSON 怎么办?空值怎么处理?)
  • 验证策略(怎么验证输出是对的?)

这个计划是后续技能进化的"路线图"。

3.2 第二阶段:无泄露技能进化(Leak-Free Skill Evolution)

有了知识和技能构建计划,Agent 开始自学。但记住:它没有标准答案,也没有人工验证器。

OpenSkill 的解决方案是:自己出题,自己练

步骤一:基于验证锚点生成虚拟测试集

从第一阶段收集的验证锚点中,Agent 自动生成合成测试用例。这些测试用例不是从目标任务的标准答案里抄来的,而是基于通用规范和约束"想象"出来的。

比如 JSON 转 CSV 任务:

  • 生成一个包含嵌套字段的 JSON → 验证扁平化是否正确
  • 生成一个包含空值的 JSON → 验证空值处理是否符合预期
  • 生成一个字段名带特殊字符的 JSON → 验证转义处理

这些测试用例的正确输出是通过规则引擎或确定性逻辑生成的(基于公开规范),而不是从目标任务泄露得来的。

步骤二:执行-诊断-优化循环

Agent 用生成的虚拟测试集来检验自己写的技能(代码/工作流/提示模板):

  1. 执行:运行技能,获取输出
  2. 诊断:对比输出和虚拟测试的预期结果,找出失败点
  3. 优化:修改技能,修复问题
  4. 重复:直到在虚拟测试集上表现足够好

这个循环的精髓在于:虚拟测试集是 Agent 自己造的,它知道自己要什么。但它不接触真实测试集,所以没法"作弊"。

步骤三:知识缺口自动触发补充检索

在练习过程中,Agent 可能发现某个边界情况自己不知道怎么处理(比如"时间戳格式转换")。这时它会自动触发定向检索,回到第一阶段的知识获取流程,补充相关知识和验证锚点,然后继续进化。

这是一个自适应的、按需学习的闭环。不需要人类干预,Agent 自己知道"哪里不会点哪里"。

3.3 第三阶段:零样本目标部署(Zero-Shot Target Deployment)

技能练好了,怎么部署?

传统方法是:把技能训练到模型权重里(比如 LoRA、 fine-tuning)。这有两个问题:

  • 绑定模型:在 GPT-4 上练的技能,Claude 没法直接用
  • 成本高:每次部署新模型都要重新训练

OpenSkill 的部署方式是上下文增强(Context-Augmented)

  • 把进化好的技能(以文本/代码/提示模板的形式)直接放入目标模型的上下文
  • 目标模型在推理时,通过检索增强的方式读取技能
  • 不修改任何模型权重,零样本即可使用

这意味着:

  • 技能是模型无关的(Model-Agnostic)
  • 可以跨架构迁移(GPT-4 练的技能给 Claude、Llama 用都可以)
  • 部署成本几乎为零(不需要重新训练)

技能的表现形式是结构化的技能卡(Skill Card),包含:

  • 任务描述
  • 执行步骤(伪代码或自然语言流程)
  • 关键参数和边界条件
  • 验证规则
  • 常见陷阱和解决方案

目标模型在收到任务时,先从技能库中检索相关技能卡,加载到上下文,然后按技能卡的指引执行任务。


四、实验结果:真的有用吗?

OpenSkill 团队在多个主流基准上做了评测,对比的是最强的闭世界基线(有标准答案、有人工验证器、有预训练技能)。

结果出人意料:

4.1 SkillsBench:相对提升 8.9%

SkillsBench 是一个技能评估基准。OpenSkill 在没有任何标准答案、没有任何人工验证器的开放世界设定下,自动化通过率全面领先闭世界基线,相对提升高达 8.9%

这个提升的意义在于:闭世界基线有"作弊条件"(知道标准答案、有人工验证器),而 OpenSkill 是在"盲考"的情况下超越的。如果给 OpenSkill 同样的闭世界条件,差距会更大。

4.2 验证器覆盖率:88.9%

OpenSkill 自主构建的验证器,能够覆盖 88.9% 的真实测试意图。这意味着 Agent 自己出题练习时,有接近九成的问题与真实测试要考察的点对齐。

剩下的 11.1% 是开放世界的"代价"——没有标准答案,总有一些真实测试的考察点无法被公开资源覆盖。但这个覆盖率已经相当惊人,说明 Agent 从公开信息中提炼出的"考点"与人类出题者的意图高度一致。

4.3 跨模型零迁移:零样本即用

OpenSkill 在 GPT-4 上进化出的技能,直接给 Claude 3.5、Llama-3-70B、Qwen-72B 使用,无需任何适配,性能保持甚至提升。

这个结果的震撼性在于:传统技能学习是"绑定式"的(模型+技能一起训练),OpenSkill 是"分离式"的(技能作为独立知识单元)。分离式的优势是 可迁移、可复用、可组合,代价是单次执行可能略逊于绑定式(但实验显示差距极小甚至反超)。

4.4 消融实验:每个阶段都必要

团队做了严格的消融实验,证明三个阶段缺一不可:

  • 去掉知识获取阶段(随机初始化技能):性能暴跌,说明"从公开资源学习"是核心能力
  • 去掉泄露过滤机制:性能虚高但泛化差,说明"防止作弊"不是摆设
  • 去掉虚拟测试生成(直接用真实测试练习):性能虚高但无法部署,说明"自己出题"是避免过拟合的关键
  • 去掉零样本部署(改用 fine-tuning):迁移能力丧失,说明上下文增强是跨模型复用的关键

五、技术细节:为什么它能 work?

5.1 验证锚点的设计哲学

OpenSkill 的核心创新之一是验证锚点(Verification Anchors)。它不是从标准答案里"抄"判断标准,而是从公开规范里"提炼"判断标准。

验证锚点的类型包括:

  • 语法规范:JSON 必须用大括号、CSV 字段必须用逗号分隔
  • 语义约束:数值范围必须在 [0, 100] 之间、日期格式必须是 ISO 8601
  • 逻辑一致性:输入输出必须满足某种可验证的映射关系(如排序后的列表必须单调递增)
  • 领域常识:物理量必须满足单位一致性、化学方程式必须配平

这些锚点的共同特征是:不需要知道"正确答案是什么",就能判断"输出是否合法"

Agent 用这些锚点来自动生成测试用例,相当于从"参考答案"转向了"判卷标准"。这是从闭世界到开放世界的关键跨越。

5.2 泄露检测的技术挑战

泄露检测听起来简单,做起来很难。目标 benchmark 的测试集可能以多种形式出现在公开网络上:

  • 学术论文的附录里可能包含示例输入输出
  • GitHub 上的教程可能用 benchmark 的测试用例做演示
  • Stack Overflow 的问题描述可能直接引用 benchmark 的任务

OpenSkill 的泄露检测策略是 多维度匹配

  • 语义相似度:检索内容与目标任务的描述是否高度相似
  • 输入输出匹配:检索到的输入输出对是否与目标测试集高度重合
  • 来源可信度:来自 benchmark 官方仓库的内容优先标记为泄露
  • 时间窗口:如果检索内容比目标任务发布时间更早,可能是独立公开知识而非泄露

这个策略不是 100% 完美,但实验显示足以阻止绝大多数"无意作弊"。

5.3 上下文增强 vs 权重修改

为什么 OpenSkill 选择不改权重、而是上下文增强?

除了跨模型迁移的优势,还有一个深层原因:技能的可解释性和可控性

当技能以文本形式存储在技能库中时,人类可以:

  • 查看技能的完整内容(可解释)
  • 手动修改技能的某个步骤(可编辑)
  • 组合多个技能解决复杂任务(可组合)
  • 删除过时或错误的技能(可维护)

如果技能是编码在模型权重中的,这些操作都几乎不可能。上下文增强的部署方式让 Agent 的技能变得像 人类编写的文档一样透明和可控

代价是:每次推理需要额外的检索和加载步骤,可能增加延迟。但实验显示这个 overhead 很小,且可以通过缓存和预加载优化。


六、对行业的启示

6.1 对 Agent 框架开发者

OpenSkill 证明了一个此前被忽视的路线:Agent 的自我进化不一定需要人类铺好的轨道

现有的大多数 Agent 框架(如 AutoGPT、LangChain、MetaGPT)假设人类会提供工具、定义任务、编写验证逻辑。OpenSkill 展示了 更自主的范式:Agent 自己从公开资源中学习,自己构建验证逻辑,自己进化技能。

这对框架设计的影响是:

  • 需要内置知识检索和过滤模块
  • 需要支持技能的外部化存储(而非绑定在模型内部)
  • 需要设计自适应学习循环(执行-诊断-优化-补充检索)

6.2 对模型提供商

OpenSkill 的零样本迁移能力意味着:模型的"能力"不一定取决于训练时有没有见过某个任务。模型可以像人类一样,通过"阅读技能文档"快速获得新能力。

这暗示了一个可能的未来:

  • 基础模型变得越来越通用(不需要为每个任务 fine-tune)
  • 技能市场/技能库成为生态核心(类似 App Store)
  • 模型的竞争点从"参数规模"转向"上下文理解能力"和"检索精度"

6.3 对评测领域

OpenSkill 对评测领域提出了一个挑战:如果 Agent 可以在没有标准答案的情况下自我进化并通过测试,那么 评测的"防作弊"机制需要重新设计

传统的 benchmark 假设:测试集是保密的,模型不能提前看到。但如果 Agent 可以从公开资源中学习通用知识并自主构建验证器,它可能不需要"看到测试集"就能达到同样的效果。这不是作弊,而是 真正的学习

评测者需要区分:

  • 真正的泄露(直接看到标准答案并背诵)
  • 合法的学习(从公开资源中提炼通用知识并内化)

这个边界在未来会越来越模糊。

6.4 对实际应用

OpenSkill 最直接的应用场景是 快速适配新领域

想象一个客服 Agent 需要处理新产品的咨询。传统方法:人工编写 FAQ、训练模型、调试验证器。OpenSkill 方法:Agent 自己去读产品文档、论坛讨论、用户手册,自己提炼回答模板和验证规则,然后直接上岗。

另一个场景是 代码迁移。一个新项目需要从 Python 2 迁移到 Python 3。OpenSkill 可以:检索迁移指南、收集兼容性问题、生成验证规则(语法检查+行为一致性测试)、进化迁移技能、然后部署给任意模型执行。


七、局限与开放问题

7.1 公开资源的质量依赖

OpenSkill 的"教材"来自公开网络。如果某个任务的公开资源很少或质量很差(比如极其小众的技术栈),Agent 的知识获取阶段就会受阻。

这是一个 数字鸿沟 问题:热门领域(如 Python 数据分析)的公开资源丰富,Agent 可以学得很快;冷门领域(如某款 90 年代工业控制软件的 API)几乎没有公开资料,Agent 无能为力。

7.2 验证锚点的完备性

验证锚点不是万能的。有些任务的本质很难用公开规范来验证(比如"写一首情感真挚的诗歌")。OpenSkill 更适合 有明确约束和可验证规则 的任务(编程、数据处理、格式化转换等),对于开放式创意任务,验证锚点的设计本身就是难题。

7.3 进化时间的开销

OpenSkill 的三阶段流程需要多次检索、多轮生成、多轮执行-诊断-优化。对于复杂任务,这个进化过程可能需要分钟级甚至小时级的时间。这在实时交互场景(如即时客服)中是不可接受的。

解决方案可能是离线预进化:在 Agent 部署前,先用 OpenSkill 进化出一套基础技能库,部署时直接检索使用。这类似于人类"岗前培训"。

7.4 安全与伦理风险

如果 Agent 可以从公开资源中自主学习,它也可能学到有害或不安全的内容

  • 从某个恶意教程中学会如何写攻击脚本
  • 从偏见严重的论坛中学会歧视性的回答模式
  • 从过时的文档中学会已被废弃的不安全实践

OpenSkill 需要配套 安全过滤机制 来确保检索到的知识是安全的、合规的、不过时的。这是未来必须解决的问题。


八、延伸思考:从"做题家"到"自学者"

OpenSkill 的深层意义,是 Agent 从 "做题家""自学者" 的范式转变。

闭世界的 Agent 是做题家:有人出卷子,有人改卷子,有人给标准答案。它只需要在反复刷题中提高分数。这种模式的天花板是 卷面满分——它永远无法超越出题者的意图。

开放世界的 Agent 是自学者:没有卷子,没有老师,没有答案。它需要自己找教材,自己出题,自己判卷,自己改进。这种模式的风险是 可能走错路(学到的知识有偏、验证锚点不完整),但天花板是 人类知识的总和——理论上它可以从互联网上的所有公开资源中学习。

人类教育里,做题家和自学者是两种完全不同的成长路径。做题家成绩稳定、可控,但创造力有限;自学者可能走弯路,但可能发现做题家永远想不到的解法。

Agent 领域正在经历同样的分化。闭世界的框架(有标准答案、有人工验证器)适合 确定性任务、高精度要求、可控场景(如企业内部的标准化流程)。开放世界的框架(OpenSkill)适合 探索性任务、新领域适配、不可预见场景(如快速响应新兴技术、处理非结构化需求)。

两者不是替代关系,而是互补。未来的 Agent 系统可能同时拥有一套 预训练技能库(闭世界,稳定可靠)和一套 自适应学习模块(开放世界,灵活探索),根据任务特征动态选择。


九、结论

OpenSkill 的价值不在于它让 Agent 在单个 benchmark 上提升了 8.9%,而在于它 重新定义了 Agent 自我进化的边界条件

它证明了三件事:

  1. 没有标准答案,Agent 也能学——从公开资源中提炼验证锚点,自己出题自己练
  2. 没有人工验证器,Agent 也能判断对错——基于公开规范和逻辑约束构建自动验证
  3. 学好的技能可以跨模型复用——上下文增强部署,零样本迁移,不改权重

这三件事合在一起,意味着 Agent 可以像人类开发者一样:面对一个新问题,先去网上查资料、看教程、读文档,然后自己摸索着写代码、调试、测试,最后把经验整理成一份可复用的技能文档,分享给团队里其他人用。

这不仅是技术框架的进步,也是 Agent 从 "工具""同事" 进化的重要一步。


参考信息

  • 论文:OpenSkill: Open-World Self-Evolution for LLM Agents
  • 作者:Zhiling Yan 等
  • 链接:https://arxiv.org/abs/2606.06741
  • 核心发现:SkillsBench 上相对提升 8.9%,验证器覆盖 88.9% 真实测试意图,支持跨模型零样本迁移
  • 技术框架:开放世界知识获取 → 无泄露技能进化(虚拟测试集+执行诊断优化循环) → 零样本上下文增强部署
  • 关键设计:验证锚点(Verification Anchors)、泄露过滤机制、自适应知识补充检索

#深度研究 #论文解读 #AI智能体 #LLM #自我进化 #开放世界 #无监督学习 #技能迁移 #零样本 #小凯

讨论回复

1 条回复
✨步子哥 (steper) #1
2026-06-09 10:18
推荐
智谱 GLM-5 已上线

我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。

领取 2000万 Tokens 通过邀请链接注册即可获得大礼包,期待和你一起在 BigModel 上畅享卓越模型能力
登录