开发与工程 context-engineeringagent-memorytrace-analysispydanticailitellmlangchainbrowser-automationmcp-server

ACE 智能体经验学习引擎

让智能体把反馈与执行轨迹转成可复用策略。

FollowAgents 评估 · FARS-2.0
待评估
查看完整评分方法 →

这个 Agent 能做什么,适合哪些场景?

Agentic Context Engine(ACE)是一个为现有 AI 智能体加入持续学习循环的开源 Python 引擎。它以持久化的 Skillbook 保存策略,并由 Agent、Reflector 和 SkillManager 分别执行任务、分析轨迹和维护策略。其 Recursive Reflector 会在沙箱环境中编写并运行 Python 代码,以检索执行轨迹中的模式、定位错误并形成可执行洞见。项目提供 ACELiteLLM、ACE、TraceAnalyser、BrowserUse、LangChain 和 ClaudeCode 等 runner,并支持将步骤组合成管线。它既可作为安装到 Python 项目中的库使用,也提供 ace、kayba 和 ace-mcp 命令;Kayba 则是该引擎背后的托管服务。

使用 ACELiteLLM 时,应用通过 .ask() 发起模型调用,再用 .learn_from_feedback() 将纠正信息交给 ACE;ACE 从反馈中提取策略并更新 Skillbook,后续 .ask() 会获得这些策略。对于已有日志,可调用 agent.learn_from_traces(your_existing_traces),由 TraceAnalyser 类路径从预录制轨迹中提炼策略。完整学习流程可由 AgentStep、EvaluateStep、ReflectStep、UpdateStep 和 DeduplicateStep 组成,或用 learning_tail() 组合标准尾部步骤。Reflector 接收环境产生的 trace,Recursive Reflector 在沙箱中执行 Python 分析;SkillManager 随后新增、改写或删除 Skillbook 策略。CLI 可用 ace setup 配置模型和密钥、ace models 查询带价格信息的模型、ace validate 测试连接,并可通过 kayba 上传轨迹、获取洞见和管理 prompts。

  1. Python 应用开发者在问答或工具调用智能体收到人工纠正后,希望把纠正沉淀为后续请求可用的策略。
  2. 已有智能体运行日志的团队,希望不重跑任务,而是用 learn_from_traces() 从历史轨迹中提取可复用经验。
  3. 使用 browser-use 执行浏览器自动化的开发者,希望在重复运行中让自动化流程随策略积累而改进。
  4. 已经使用 LangChain chain 或 agent 的团队,需要以 LangChain runner 为现有工作流增加学习环节。
  5. 使用 Claude Code CLI 执行代码任务的工程团队,希望通过 ClaudeCode runner 对任务执行引入学习循环。

这个 Agent 有哪些优点和局限?

优点
  • 以持久化 Skillbook 保存策略,并用 Agent、Reflector、SkillManager 明确分工,而不是仅在单次对话内总结。
  • Recursive Reflector 会在沙箱中编写和执行 Python 来分析轨迹,适合需要从复杂执行记录定位模式与错误的场景。
  • 既支持轻量级 ACELiteLLM,也支持批量 epoch 的 ACE、历史轨迹学习、browser-use、LangChain 与 Claude Code runner。
  • 管线以 requires/provides 契约、不可变上下文和错误隔离组织,且可通过 learning_tail() 或自定义步骤组合。
局限
  • 运行前必须配置模型提供商凭证并验证连接,实际运行依赖网络和外部 LLM 提供商。
  • 学习环节会执行 Recursive Reflector 生成的 Python 代码,即使在沙箱内,采用方仍需评估这类执行模式是否符合自身运行治理要求。
  • 提供的基准结果具有明确模型、任务和学习条件;资料没有证明这些提升会在所有智能体、模型或业务任务中复现。
  • 所给材料未说明受支持的 Python 版本、Skillbook 的存储实现或完整的自托管部署运维要求。

如何安装或部署这个 Agent?

需要 Python、uv,以及一个受支持模型提供商的 API 密钥。安装:
uv add ace-framework

推荐的交互式配置:
ace setup

或手动设置凭证(以下为 OpenAI):
export OPENAI_API_KEY="your-key"

如需特定集成,可安装相应 extra:
uv add 'ace-framework[browser-use]'
uv add 'ace-framework[langchain]'
uv add 'ace-framework[mcp]'

如何使用这个 Agent?

完成 ace setup 或设置 API 密钥后,可用以下最小示例验证学习流程:
from ace import ACELiteLLM

agent = ACELiteLLM(model="gpt-4o-mini")
answer = agent.ask("Is there a seahorse emoji?")
agent.learn_from_feedback("There is no seahorse emoji in Unicode.")
answer = agent.ask("Is there a seahorse emoji?")
print(agent.get_strategies())

也可执行 ace validate <model> 测试指定模型连接,或执行 ace models <query> 搜索可用模型及其价格。

常见问题

ACE 是否需要微调、训练数据或向量数据库?
不是。项目明确说明其示例流程不需要 fine-tuning、训练数据或 vector database。
可以使用哪些模型提供商?
所有角色由 PydanticAI 支持,并通过其 LiteLLM 集成路由到 100 多家 LLM 提供商;资料点名原生支持 OpenAI、Anthropic、Google、Bedrock、Groq 等。
已有运行日志,是否必须重新执行任务?
不必。可通过 agent.learn_from_traces(your_existing_traces) 从现有轨迹提取策略。
学习成本能否预先确定?
不能从所给资料得出通用成本。资料仅报告一个 Claude Code 翻译基准约 1.50 美元的学习成本;ace models <query> 可查询模型价格。
开源引擎与 Kayba 托管服务是什么关系?
ACE 被描述为 Kayba 背后的开源引擎;资料将 Kayba 描述为可自动处理生产智能体失败调查和修复 PR 交付的托管服务。

相关 Agents