用途
该技能提供使用 A-Evolve 自动演化和优化 AI 智能体的完整指导。A-Evolve 是通用基础设施,可用任意进化算法演化任意领域中的任意 AI 智能体,无需手动工程。它把智能体的可演化状态全部表示为文件(提示词、技能、记忆、工具),针对基准运行“求解—观察—演化”迭代循环,并用 LLM 驱动的变异自动提升性能。
适用场景包括:针对可度量基准优化智能体提示词、技能或记忆;构建带自动门控和回滚的自改进智能体;通过 LLM 变异演化领域特定的工具使用与流程;运行迭代循环最大化智能体表现;需要每次变更都有可复现、git 版本化的演化历史。
该文档强调的区别:其他框架用于构建智能体,A-Evolve 用于优化智能体,可叠加在任意智能体框架之上。
不适合的场景:从零构建多智能体编排(可用 CrewAI、LangGraph);无需迭代的一次性智能体任务(可用 LangChain、LlamaIndex);RAG 流水线优化(可用 LlamaIndex、Chroma);仅做提示词优化而不演化技能和记忆(可用 DSPy)。
主要能力
A-Evolve 将智能体工作区组织为文件结构,包含 manifest.yaml 元数据与入口、prompts/system.md 系统提示词及 fragments 模块、skills 技能目录(含 SKILL.md)、memory 记忆(episodic.jsonl 与 semantic.jsonl)、tools 工具注册与实现,以及由引擎管理的 evolution 目录。
每个演化周期分五个阶段:Solve(智能体处理一批基准任务)、Observe(基准评估轨迹并产出任务、轨迹、反馈三元组)、Evolve(进化引擎依据观察变异工作区文件)、Gate(验证变异,前后 git 快照用于回滚)、Reload(智能体从演化后的文件系统状态重新初始化)。
三个可插拔接口:Agent 实现 solve() 返回 Trajectory;Benchmark 实现 get_tasks() 与 evaluate();Engine 实现 step() 进行变异。
配置项 EvolveConfig 支持 batch_size、max_cycles、holdout_ratio、evolve_prompts、evolve_skills、evolve_memory、evolve_tools、trajectory_only、evolver_model、evolver_max_tokens、egl_threshold、egl_window 等。当最近 egl_window 个周期的分数提升低于 egl_threshold 时提前收敛停止。
使用方式
安装:
pip install a-evolve # Core pip install a-evolve[anthropic] # With Claude support pip install a-evolve[all] # All providers
三行快速开始:
import agent_evolve as ae
evolver = ae.Evolver(agent="swe", benchmark="swe-verified") results = evolver.run(cycles=10) print(f"Final score: {results.final_score}")
该示例复制内置 SWE 种子工作区,针对 SWE-bench Verified 运行 10 个演化周期并返回优化后的智能体。
演化已有智能体时,需满足:Agent 实现 BaseAgent.solve() 返回 Trajectory;Benchmark 实现 BenchmarkAdapter 的 get_tasks() 与 evaluate();种子工作区含 manifest.yaml(入口与可演化层);prompts/system.md 存在;工作区为 git 仓库(git init && git add -A && git commit -m "init")。之后通过 EvolveConfig 配置参数并运行 evolver.run(),查看 cycles_completed、final_score、converged 与 score_history。演化后可进入工作区用 git log 查看 evo-N 标签、git diff 比较首末演化、读取演化后的提示词与技能目录。
文档另提供两个工作流:自定义基准需定义任务格式、0.0–1.0 评分逻辑、训练与留出数据集划分,实现 BenchmarkAdapter;自定义进化引擎需继承 EvolutionEngine 并实现 step(),例如按失败模式生成规则追加到提示词。
内置组件包括种子智能体 swe(SWE-bench,Claude Opus 4.6,验证修复循环与技能提案)、terminal(Terminal-Bench,Claude Sonnet 4,并发超时与环境发现)、mcp(MCP-Atlas,Claude Opus 4.6,MCP 服务器集成);基准有 swe-verified、mcp-atlas、terminal2、skill-bench、arc-agi-3;进化算法有 A-Evolve/SkillForge、Guided Synthesis、Adaptive Evolution、Adaptive Skill。
技能以带 frontmatter 的 SKILL.md 定义,包含 name、description(触发与不触发条件)、Pattern 与 Process 等段落;技能累积在工作区 skills/ 目录,进化器会接受、合并或跳过提案,目标是 5–10 个宽泛技能而非 30 个狭窄技能。
适用场景与限制
适用:带基准的提示词、技能或记忆优化;带门控与回滚的自改进智能体;领域工具使用与流程演化;每次变更可复现的 git 版本化演化历史。
限制与已知问题处理:分数过早进入平台期时增大 batch_size(如 15–20)、确保任务覆盖多样失败模式并设置 trajectory_only=False;工作区膨胀时依赖默认 SkillForge 自动整理技能或为自定义引擎实现合并逻辑;git 冲突时让每次 evolver.run() 使用独立工作区副本;LLM 提供方报错时检查 evolver_model 配置及相应凭证(Bedrock 的 AWS 凭证、Anthropic 的 ANTHROPIC_API_KEY);自定义智能体未加载演化状态时需重写 reload_from_fs()。文档还列出警告信号:分数震荡可能表示评估不确定;技能目录超过 15 个说明未正确合并;提示词超过 10K 字符说明只追加未重构;2–3 个周期就 converged=True 说明收敛参数过于激进。
文档给出的基准结果为(Claude Opus 4.6):MCP-Atlas 79.4%(#1)、SWE-bench Verified 76.8%(约 #5)、Terminal-Bench 2.0 76.5%(约 #7)、SkillsBench 34.9%(#2)。
扩展参考见 references 下的 architecture.md、api.md、tutorials.md、examples.md、issues.md、design-patterns.md、releases.md。