AI Agent 自进化引擎,让 Agent 具备自学习和持续改进能力。
python3 scripts/evolution_cli.py analyze --result "<错误信息>"
python3 scripts/evolution_cli.py analyze --result-file result.json
python3 scripts/evolution_cli.py search --query "负数平方计算错误"
python3 scripts/evolution_cli.py search --query "ValueError" --limit 10
python3 scripts/evolution_cli.py stats
python3 scripts/evolution_cli.py stats --agent-id my_agent --json
python3 scripts/evolution_cli.py history --limit 20
python3 scripts/evolution_cli.py history --task-type code_generation
python3 scripts/evolution_cli.py evolve "计算 -5 的平方" --task-type calculation
from evolver_core import EvolutionManager
# 初始化进化管理器
evolver = EvolutionManager(agent_id="main_agent")
# 执行任务后自动进化
def execute_with_evolution(task):
result = execute_task(task)
# 自动分析并学习
evolver.run_evolution(
task_input=task,
task_type="general"
)
return result
# 搜索历史经验
def find_similar_solutions(error_description):
similar = evolver.search_similar(error_description)
return similar
# 获取进化统计
def get_evolution_stats():
return evolver.get_stats()
# 主 Agent 执行任务
result = execute_task("计算 -5 的平方")
# 失败后自动触发进化
if result.status == "failed":
# 自动调用 agent-evolver 技能
evolver = get_skill("agent-evolver")
evolver.analyze(result.error)
# 搜索相似解决方案
similar = evolver.search_similar(result.error.message)
# 应用建议的解决方案
if similar:
apply_solution(similar[0].solution)
所有命令支持 --json 参数输出 JSON 格式:
python3 scripts/evolution_cli.py stats --json
OPENAI_API_KEY - OpenAI API 密钥(用于 LLM 分析和向量化)OPENAI_API_BASE - API 基础 URL(可选,用于自定义端点)EVOLVER_DB_PATH - 数据库路径(默认:~/.evolver/evolution.db)配置文件位于 config/evolver_config.yaml:
llm:
model: gpt-3.5-turbo
temperature: 0.7
vector:
model: text-embedding-3-small
enabled: true
storage:
db_path: ~/.evolver/evolution.db
vector_path: ~/.evolver/chroma
{
"id": "exp_20260224_001",
"task_type": "code_generation",
"status": "failed",
"error_type": "ValueError",
"error_message": "不支持负数输入",
"solution": "使用绝对值处理负数",
"keywords": ["负数", "平方计算", "ValueError"]
}
用户: "这个任务总是失败,帮我分析一下"
Agent: 我来使用 agent-evolver 技能分析错误...
[调用] python3 scripts/evolution_cli.py analyze --result "ValueError: 不支持负数输入"
[结果] 发现类似历史错误 3 次
建议解决方案:使用绝对值处理负数
用户: "帮我优化一下 Agent 的性能"
Agent: 我来分析 Agent 的进化统计...
[调用] python3 scripts/evolution_cli.py stats
[结果] 成功率:85%,改进率:15%
常见错误:ValueError (5次), TypeError (3次)
建议:优先处理 ValueError 类型错误
用户: "之前遇到过类似的负数计算问题吗?"
Agent: 我来搜索历史经验...
[调用] python3 scripts/evolution_cli.py search --query "负数计算"
[结果] 找到 2 条相似经验:
1. 使用绝对值处理负数 (相似度: 95%)
2. 添加负数检查逻辑 (相似度: 87%)
当此技能安装后,主 Agent 会自动:
OPENAI_API_KEY 环境变量~/.evolver/ 目录chromadb共 1 个版本