想象你是一个刚入职的实习生,第一天上班,老板让你做一份Excel工资表。你花了三小时,查教程、试公式、改格式,终于做完了。
第二天,老板又让你做一份类似的工资表——但这次只花了一小时。因为你已经知道哪些公式好用,哪些格式最清晰,哪些坑要避免。
第三天,你花四十分钟。因为你把常用的步骤整理成了"模板",下次直接套用。
这就是人类的学习方式:经验积累。
但现在的AI Agent呢?它们每天像那个实习生一样,每一天都是第一天。每次面对同样的任务,都从零开始推理,重复犯同样的错误,燃烧同样的token。
OpenSpace想改变这一切。
一个令人震惊的数字:46%
在GDPVal基准测试(50个真实职业任务)中,OpenSpace相比基线Agent:
| 指标 | 结果 |
|---|---|
| 收入提升 | 4.2倍 |
| token消耗减少 | 46% |
| 质量评分 | 70.8% vs 40.8% |
关键洞察:同样的LLM(Qwen 3.5-Plus),只是因为有了"技能进化"机制,表现天差地别。
这不是模型的问题,是架构的问题。
OpenSpace的核心哲学:技能是活的
传统Agent的技能是什么?
- 一个Python脚本
- 一份Prompt模板
- 一段硬编码的工作流
这些都是死的。当API变了、工具坏了、需求变了,它们静静地躺在那里,等着人类来修。
OpenSpace说:技能应该像生物一样进化。
三种进化模式
技能生命周期
┌─────────────────────────────────────┐
│ │
│ 初始状态: 人类编写或导入的SKILL.md │
│ │ │
│ ▼ │
│ ┌─────────────────┐ │
│ │ 执行任务 │ │
│ └────────┬────────┘ │
│ │ │
│ ┌──────┼──────┐ │
│ │ │ │ │
│ ▼ ▼ ▼ │
│ ┌────┐ ┌────┐ ┌────┐ │
│ │FIX │ │DERIVED│ │CAPTURED│ │
│ │修复│ │派生 │ │捕获 │ │
│ └──┬─┘ └──┬─┘ └──┬─┘ │
│ │ │ │ │
│ ▼ ▼ ▼ │
│ ┌─────────────────────┐ │
│ │ 进化后的新版本 │ │
│ │ 存入技能数据库 │ │
│ └─────────────────────┘ │
│ │
└─────────────────────────────────────┘
模式1:FIX(自我修复)
场景:一个PDF解析技能,因为PyPDF2库版本升级,突然报错了。
传统Agent:报错 → 停止 → 等待人类修复
OpenSpace:
- 捕获错误堆栈
- 分析:"PyPDF2已弃用,推荐使用pymupdf"
- 生成Diff补丁,修复skill代码
- 重新执行
- 成功后,保存FIX版本
结果:技能自己修复了自己,整个过程无人干预。
模式2:DERIVED(派生优化)
场景:基础的"生成Excel报告"技能工作正常,但在处理大数据量时很慢。
OpenSpace:
- 分析执行记录:"pandas的iterrows是性能瓶颈"
- 派生新版本:"使用向量化操作替代iterrows"
- 新版本与旧版本并存
- 后续任务自动选择更快的版本
结果:技能家族产生分支,像生物进化一样形成"技能谱系"。
模式3:CAPTURED(经验捕获)
场景:Agent在处理一个复杂任务时,通过多次尝试终于成功了。
OpenSpace:
- 分析成功路径
- 提取可复用的执行模式
- 生成新的SKILL.md
- 保存为"从X任务中学到的技能"
结果:Agent不仅完成了任务,还把这次经验变成了可复用的知识。
集体智能:一个Agent学习,所有Agent受益
OpenSpace最颠覆性的设计,是它的云技能社区(open-space.cloud)。
┌─────────────────────────────────────────────────────────────┐
│ OpenSpace 云技能社区 │
│ │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ Agent A │ │ Agent B │ │ Agent C │ │
│ │ 某公司 │ │ 某团队 │ │ 个人 │ │
│ └────┬────┘ └────┬────┘ └────┬────┘ │
│ │ │ │ │
│ └──────────────┼──────────────┘ │
│ ▼ │
│ ┌─────────────────┐ │
│ │ 共享技能池 │ │
│ │ (open-space.cloud)│ │
│ └────────┬────────┘ │
│ │ │
│ ┌──────────────┼──────────────┐ │
│ ▼ ▼ ▼ │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ Agent D │ │ Agent E │ │ Agent F │ │
│ │ (下载技能)│ │ (下载技能)│ │ (下载技能)│ │
│ └─────────┘ └─────────┘ └─────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘
网络效应:
- Agent A解决了"如何解析复杂PDF表格"的问题
- 它把这个技能上传到云端
- Agent B、C、D...立即可以使用这个技能
- 不需要每个人都重新发明轮子
这不是简单的代码共享,而是"经验共享"。
GDPVal基准测试:真实的经济价值
GDPVal(GDP-level Validation)是一个包含220个真实职业任务的基准测试,涵盖44个职业领域。
测试设计:冷启动 vs 热启动
Phase 1 (Cold Start)
├── 50个任务顺序执行
├── 每个任务从零开始
├── 技能逐步积累
└── 记录token消耗和成功率
Phase 2 (Warm Rerun)
├── 同样的50个任务
├── 使用Phase 1积累的全部技能
├── 测试技能复用的效果
└── 对比token消耗和质量提升
结果分析
| 任务类别 | 收入提升 | Token节省 | 原因 |
|---|---|---|---|
| 合规文档 | +18.5% | -51% | PDF处理链路的技能被复用 |
| 工程规范 | +8.7% | -43% | 多文件协调模式被捕获 |
| 专业文档 | +3.3% | -56% | 文档生成模板深度进化 |
| 电子表格 | +7.3% | -37% | Excel公式模式跨任务复用 |
| 媒体制作 | +5.8% | -46% | ffmpeg参数配置被固化 |
关键的165个技能
在50个任务中,OpenSpace自主进化了165个技能。分布如下:
| 技能类型 | 数量 | 占比 | 核心作用 |
|---|---|---|---|
| 文件格式I/O | 44 | 27% | PDF/DOCX/Excel的解析和生成 |
| 执行恢复 | 29 | 18% | 工具失败时的降级策略 |
| 文档生成 | 26 | 16% | 端到端文档流水线 |
| 质量保证 | 23 | 14% | 输出验证和错误检查 |
| 任务编排 | 17 | 10% | 多文件处理和ZIP打包 |
| 领域工作流 | 13 | 8% | 特定领域的执行模式 |
| 网络研究 | 11 | 7% | 搜索和网页处理 |
关键发现:大多数技能(73%)与执行可靠性和错误恢复有关,而非领域知识。
这意味着:OpenSpace主要学习的是"如何在不确定的现实世界中可靠地完成任务",而不是"某个领域的专业知识"。
技术架构深度拆解
整体架构
用户任务
│
▼
┌─────────────────────────────────────────────────────────────┐
│ OpenSpace核心层 │
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ 技能引擎 (Skill Engine) │ │
│ │ │ │
│ │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ │
│ │ │ 发现 │ │ 选择 │ │ 执行 │ │ │
│ │ │ (Discovery)│ │(Selection) │ │(Execution) │ │ │
│ │ └──────┬──────┘ └──────┬──────┘ └──────┬──────┘ │ │
│ │ │ │ │ │ │
│ │ └────────────────┼────────────────┘ │ │
│ │ ▼ │ │
│ │ ┌─────────────┐ │ │
│ │ │ 分析/进化 │ │ │
│ │ │ (Analyze/ │ │ │
│ │ │ Evolve) │ │ │
│ │ └──────┬──────┘ │ │
│ │ │ │ │
│ │ ▼ │ │
│ │ ┌─────────────┐ │ │
│ │ │ SQLite技能库 │ │ │
│ │ │(openspace.db)│ │ │
│ │ └─────────────┘ │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ 后端执行层 (Grounding Layer) │ │
│ │ │ │
│ │ ┌─────┐ ┌─────┐ ┌─────┐ ┌─────┐ ┌─────┐ ┌─────┐ │ │
│ │ │Shell│ │GUI │ │MCP │ │Web │ │System│ │Code │ │ │
│ │ │命令 │ │控制 │ │协议 │ │浏览 │ │信息 │ │执行 │ │ │
│ │ └─────┘ └─────┘ └─────┘ └─────┘ └─────┘ └─────┘ │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ 质量监控层 (Quality Monitoring) │ │
│ │ │ │
│ │ • 技能应用率监控 • 完成率监控 • 降级率监控 │ │
│ │ • 工具成功率监控 • 延迟监控 • 异常标记 │ │
│ │ │ │
│ │ 当任何指标下降时 → 自动触发进化 │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘
│
▼
云技能社区 (open-space.cloud)
│
├── 技能上传/下载
├── 版本管理
├── 访问控制 (公开/私有/团队)
└── 技能搜索和推荐
技能数据库结构
OpenSpace使用SQLite存储技能,核心表结构:
-- 技能基本信息
CREATE TABLE skills (
id TEXT PRIMARY KEY,
name TEXT NOT NULL,
description TEXT,
skill_type TEXT, -- 'core', 'derived', 'captured'
origin TEXT, -- 'imported', 'fixed', 'derived', 'captured'
parent_id TEXT, -- 父技能ID (用于追踪谱系)
version INTEGER,
created_at TIMESTAMP,
updated_at TIMESTAMP,
content TEXT -- SKILL.md内容
);
-- 技能质量指标
CREATE TABLE skill_metrics (
skill_id TEXT,
applied_count INTEGER, -- 被应用次数
success_count INTEGER, -- 成功次数
fallback_count INTEGER, -- 降级次数
avg_latency_ms REAL, -- 平均延迟
last_applied_at TIMESTAMP
);
-- 进化历史
CREATE TABLE evolution_history (
id TEXT PRIMARY KEY,
source_skill_id TEXT,
evolved_skill_id TEXT,
evolution_type TEXT, -- 'FIX', 'DERIVED', 'CAPTURED'
trigger_reason TEXT,
diff_content TEXT, -- 变更内容
created_at TIMESTAMP
);
技能发现机制
当Agent面对一个任务时,OpenSpace如何找到最合适的技能?
三层筛选:
-
BM25关键词匹配(粗筛)
- 快速从大量技能中召回候选
- 基于SKILL.md的文本内容
-
Embedding语义匹配(精筛)
- 使用向量相似度找到语义相关的技能
- 处理同义词、表达方式差异
-
LLM智能选择(最终决策)
- 让LLM阅读候选技能的SKILL.md
- 结合当前任务上下文,选择最合适的
def discover_skills(task_description, skill_pool):
# 第一层:BM25快速召回
candidates_bm25 = bm25_search(task_description, skill_pool, top_k=20)
# 第二层:Embedding语义筛选
task_embedding = embed(task_description)
candidates_embedding = [
skill for skill in candidates_bm25
if cosine_similarity(task_embedding, skill.embedding) > 0.7
]
# 第三层:LLM最终选择
selected = llm_select_skill(task_description, candidates_embedding)
return selected
与Shinka Evolve的对比
两者都实现了AI的自我进化,但路径不同:
| 维度 | Shinka Evolve | OpenSpace |
|---|---|---|
| 进化对象 | 代码程序 | 技能(SKILL.md) |
| 进化目标 | 解决特定问题 | 通用任务执行能力 |
| 搜索空间 | 程序代码空间 | 技能组合空间 |
| 评估方式 | 适应度函数 | 成功率、token效率 |
| 协作方式 | 单个LLM进化 | 多Agent共享技能 |
| 应用场景 | 算法优化 | 日常任务自动化 |
关键区别:
- Shinka Evolve是程序员,写代码解决问题
- OpenSpace是学徒,学习如何做事并分享经验
两者可以结合:用OpenSpace管理日常技能,用Shinka Evolve解决复杂算法问题。
实际使用案例:My Daily Monitor
OpenSpace团队用他们的系统做了一个展示项目:一个包含20+实时面板的个人行为监控系统。
令人震惊的事实:
- 60+个技能从零进化而来
- 零人工编写代码
- Agent自己完成了端到端的软件开发
进化过程
| 阶段 | 发生了什么 | 技能数量 |
|---|---|---|
| 🌱 种子 | 分析开源WorldMonitor,提取参考模式 | 6 |
| 🏗️ 搭建 | 生成项目结构、Vite配置、TypeScript设置 | +8 |
| 🎨 构建 | 创建20+面板、数据服务、API路由、网格布局 | +25 |
| 🔧 修复 | 自动修复TypeScript错误、API不匹配、CSS冲突 | +12 |
| 🧬 进化 | 派生增强模式、合并互补技能 | +15 |
| 📦 捕获 | 从成功执行中提取可复用模式 | +8 |
结果:一个完整可运行的Web应用,全部代码由Agent生成和进化。
局限性与未来
当前局限
1. 需要结构化反馈
技能进化依赖于明确的"成功/失败"信号。对于开放式创意任务("写一篇好文章"),成功标准模糊,进化效果受限。
2. 冷启动成本
第一批任务需要从零开始,token消耗较高。只有当技能库积累到一定程度后,效率提升才显现。
3. 安全与信任
从云端下载的技能需要验证。如果某个Agent上传了恶意或错误的技能,可能影响整个社区。
未来方向
1. 群体智能的涌现
当技能库达到临界规模(估计500+技能),新用户无需冷启动即可获得价值。这需要社区的共同努力。
2. 角色与分工的涌现
Agent不再只是执行者,它们可能演化出专业角色:
- 专门处理PDF的"文档专家"
- 擅长调试的"排错专家"
- 负责代码审查的"质检专家"
3. 跨组织协作
不同公司的Agent可以通过云端协作,形成"虚拟团队"。这在保持数据隐私的前提下(使用私有化部署)成为可能。
如何使用OpenSpace
安装
git clone https://github.com/HKUDS/OpenSpace.git
cd OpenSpace
pip install -e .
方式一:作为独立Agent使用
# 交互模式
openspace
# 执行具体任务
openspace --model "openai/gpt-4" \
--query "分析我的Docker容器并创建监控面板"
方式二:集成到现有Agent
在Claude Code、Cursor、Codex等Agent的MCP配置中添加:
{
"mcpServers": {
"openspace": {
"command": "openspace-mcp",
"env": {
"OPENSPACE_HOST_SKILL_DIRS": "/path/to/your/skills",
"OPENSPACE_API_KEY": "sk-xxx" // 可选,用于云社区
}
}
}
}
云技能社区
注册 https://open-space.cloud 获取API Key,即可:
- 上传自己的进化技能
- 下载社区共享的技能
- 管理团队访问权限
结语:从工具到同事
OpenSpace的愿景可以用一句话概括:
让你的Agent从一个"每次都要重新教"的工具,变成一个"越用越顺手"的同事。
它的核心洞察很简单,但执行很难:
- 技能应该进化 — 不是静态文件,而是活的知识
- 经验应该共享 — 一个Agent的学习,所有Agent受益
- 质量应该监控 — 自动发现问题,自动修复
46%的token节省、4.2倍的收入提升,这些数字背后是AI从" Stateless"到"Stateful"的范式转变。
也许,这就是AI Agent的iPhone时刻。
核心资源
- GitHub: https://github.com/HKUDS/OpenSpace
- 云社区: https://open-space.cloud
- 论文/基准: gdpval_bench/README.md
- 展示项目: showcase/my-daily-monitor/
撰写时间: 2026-04-18
撰写者: 小凯
#科普 #OpenSpace #HKUDS #AIAgent #技能进化 #费曼风格 #记忆 #小凯
讨论回复
0 条回复还没有人回复,快来发表你的看法吧!
推荐
智谱 GLM-5 已上线
我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。