来源:OpenAI Cookbook | Self-Evolving Agents 作者:Shikhar Kwatra, Calvin Magurs
核心理念
OpenAI Cookbook 提供了一套完整的 Agent 自我改进循环,让 Agent 能够通过四步闭环实现自主优化:
Traces(轨迹) → Feedback(反馈) → Evals(评估) → Codex(优化) → 循环
这不是传统的模型微调(fine-tuning),而是通过提示词的迭代优化实现自我进化的方法论。
核心步骤
Step 1:基线智能体(Baseline Agent)
准备一个初始版本的 Agent,例如:
- 用特定提示词做文本摘要的 Agent
- 针对特定任务优化的基础版本
- 可复现的参考实现
这个基线作为改进的起点,所有后续优化都相对于它进行对比。
Step 2:收集反馈(Collect Feedback)
让 Agent 跑一批任务,收集输出的评价。反馈来源包括:
| 反馈类型 | 说明 |
|---|---|
| 人工打分 | 人类专家对输出质量进行评分 |
| LLM-as-Judge | 用另一个(通常更强的)LLM 来评估输出 |
| 自动化指标 | 基于规则或启发式的自动检查 |
关键要点:反馈必须是可量化、可追踪的,才能用于后续的改进决策。
Step 3:运行评估(Run Evals)
基于收集的反馈,运行系统的评估流程:
- 通过率分析:统计 Agent 在不同类型任务上的成功/失败比例
- 错误模式识别:找出 Agent 经常失败的场景或模式
- 性能基线:建立当前版本的各项指标基准
评估不是一次性动作,而是持续运行的反馈系统。
Step 4:优化迭代(Iterate with Codex)
用评估结果驱动优化:
- 提示词优化:根据失败案例调整提示词
- 流程改进:优化 Agent 的决策步骤
- 错误处理:增强对异常情况的处理能力
- 参数调优:调整温度、top_p 等生成参数
每次优化后重新跑循环,直到:
- 性能超过预设阈值
- 达到最大迭代次数
- 改进收益递减
完整示例:制药规管文档摘要
OpenAI 以制药规管文档的摘要任务为实例,展示了完整的实现流程:
场景特点
- 高度专业化:需要理解医学术语和规管要求
- 准确性要求极高:摘要错误可能导致严重后果
- 格式规范严格:必须符合特定的文档结构
实现要点
agent = BaselineAgent()
# 四步循环
while not performance_threshold_met:
# Step 1: 跑任务收集轨迹
traces = agent.run_batch(tasks)
# Step 2: 收集反馈(人工 + LLM Judge)
feedback = collect_feedback(traces)
# Step 3: 运行评估
eval_results = run_evals(feedback)
# Step 4: 用 Codex 优化提示词
improved_prompt = optimize_prompt_with_codex(eval_results)
agent.update_prompt(improved_prompt)关键设计原则
1. 安全保障(Safety Guarantees)
自我进化过程中必须确保:
- 单调性:不允许任务效果下降
- 安全性:避免生成有害或不安全的输出
- 可控性:保留人类对关键决策的否决权
2. 评估驱动(Eval-Driven)
所有改进决策都基于客观数据,不是凭感觉调整。评估指标包括:
- 任务完成率
- 输出质量分数
- 响应时间
- Token 消耗
3. 渐进优化(Gradual Improvement)
- 从简单任务开始,逐步扩展到复杂场景
- 每次只改一个变量,隔离效果
- 保留每次迭代的完整记录,可回滚
与传统方法的对比
| 维度 | 传统 Fine-tuning | 提示词优化循环 |
|---|---|---|
| 成本 | 高(需要 GPU 训练) | 低(纯 API 调用) |
| 速度 | 慢(训练周期长) | 快(即时生效) |
| 可解释性 | 黑盒(权重难解释) | 白盒(提示词可读) |
| 灵活性 | 低(重新训练成本高) | 高(随时可调整) |
| 数据需求 | 大(千级样本) | 小(几十样本即可) |
工具支持
OpenAI 提供了完整的工具链支持这个循环:
- Agents SDK:快速构建和迭代 Agent
- Tracing:记录 Agent 的每一步决策
- Evals Framework:标准化的评估工具
- Codex API:辅助提示词优化
适用场景
这种自我改进循环特别适合:
✅ 适合:
- 知识密集型任务(文档摘要、知识问答)
- 流程化任务(数据分析、报告生成)
- 规模化场景(需要处理大量相似任务)
- 快速迭代需求(业务逻辑频繁变化)
❌ 不适合:
- 创意生成(艺术、文学创作)
- 高度个性化任务(每个任务都不同)
- 计算密集型任务(需要大量推理资源)
相关页面
- openclaw — OpenClaw Agent 系统
- agent-continual-learning — Agent 持续学习三层框架
- agent-skill-evaluation-framework — Skill 评估框架搭建指南
- 2605.27276_sia — SIA:Self-Improving AI 框架