为 CrewAI 智能体提供会话回放、调试与成本分析
CrewAI负责智能体框架运行,AgentOps客户端负责采集LLM调用并将会话呈现到分析面板。
方案简介
方案简介
这是一套面向 CrewAI 智能体应用的可观测性方案:在原有智能体程序中接入 AgentOps 客户端,由 AgentOps 对运行过程进行记录,并在控制台查看会话数据。仓库将 AgentOps 定位为面向 AI Agent 的 Observability and DevTool platform,覆盖从原型到生产阶段的构建、评估与监控。
该组合适合已经使用 CrewAI 构建多智能体或任务型工作流、又需要了解每次运行过程的开发者。它重点解决智能体运行过程不透明、LLM 调用成本难以统计以及问题难以复盘等问题。AgentOps 提供 CrewAI 的原生集成,同时保留低代码量的 Python SDK 接入方式;开发者可以先在程序入口初始化客户端,再在结束时标记会话状态,随后从 AgentOps dashboard 查看会话。
方案不要求替换现有智能体框架,仓库明确列出 CrewAI 是支持的框架集成对象。因此它更适合作为 CrewAI 应用外接的观测层,而不是新的 Agent 编排框架。
亮点与能力
亮点与能力
- CrewAI 原生集成:AgentOps 将 CrewAI 列入 Native Integrations,适合为既有 CrewAI 应用增加观测能力。
- 会话回放与调试:提供 Replay Analytics and Debugging,并展示逐步的 agent execution graphs,便于检查智能体执行路径。
- LLM 成本管理:能够跟踪 LLM foundation model providers 产生的 spend,用于观察模型调用成本。
- LLM 调用分析:初始化 AgentOps client 后,可以自动获得 LLM calls 的 analytics。
- 低侵入式埋点:官方示例通过
session、agent、operation、task和workflow装饰器增加层级化追踪。 - 会话状态标记:程序开始时初始化,结束时调用
end_session('Success'),形成完整会话边界。 - 云端控制台查看:完成采集后,所有 sessions 可在 AgentOps dashboard 查看。
- 自托管能力:仓库说明完整 AgentOps app 可以在自己的机器上运行,包含 Dashboard 与 API backend。
组成与分工
组成与分工
- CrewAI:作为智能体应用的运行框架,承载由 agent、任务和工作流组成的业务执行逻辑。仓库将其列为 AgentOps 的原生框架集成对象。
- AgentOps Python 客户端:在应用启动阶段初始化,用于自动获取 LLM 调用分析,并在程序结束阶段提交会话结果。
- LLM foundation model providers:作为被观测的模型提供方,其相关 spend 由 AgentOps 的 LLM Cost Management 能力跟踪。
- AgentOps dashboard:承载会话查看、回放分析和调试结果;采集完成后,开发者从这里检查运行记录。
- AgentOps 装饰器:
session用于创建根会话 span,agent追踪 agent 操作,operation或task追踪具体操作,workflow追踪多操作工作流。 - Python:承载 AgentOps SDK 接入代码,仓库 Quick Start 使用
pip安装并以 Python 示例展示初始化方式。
前置要求
前置要求
- 准备一个 CrewAI 智能体应用,并使用 Python 编写接入代码。
- 安装 AgentOps Python 包:
pip install agentops
- 从 AgentOps settings 页面获取 API key,并将其用于初始化客户端。仓库 Quick Start 将 API key 作为接入前提。
- 如果需要查看运行结果,应准备访问 AgentOps dashboard;如果不希望使用托管应用,仓库还提供完整 App、Dashboard 和 API backend 的自托管路径。
材料没有给出 CrewAI 的安装命令、Python 版本或额外数据库配置,因此这些内容不应作为本方案的硬性前置条件写入实施清单。
实施步骤
实施步骤
1. 安装 AgentOps 客户端
在 CrewAI 项目所使用的 Python 环境中执行仓库给出的安装命令:
pip install agentops
2. 获取 API key
访问 AgentOps 的项目设置页面创建或获取 API key。该 key 用于让应用把会话数据关联到 AgentOps 项目。
3. 在程序入口初始化
将初始化代码放在主程序或包初始化位置,位于 CrewAI 智能体实际运行之前:
import agentops
# Beginning of your program (i.e. main.py, __init__.py)
agentops.init( < INSERT YOUR API KEY HERE >)
...
# End of program
agentops.end_session('Success')
其中 ... 位置放置原有 CrewAI 应用的执行逻辑。开始处调用 agentops.init,结束处调用 agentops.end_session('Success'),从而为一次运行建立会话边界。
4. 按需增加层级化追踪
如果默认的客户端采集还不足以表达业务层级,可以在工作流、agent 类或具体操作上增加装饰器。创建根会话 span 的示例为:
# Create a session span (root for all other spans)
from agentops.sdk.decorators import session
@session
def my_workflow():
# Your session code here
return result
对具体操作可以使用 operation 或 task:
# Create operation/task spans for tracking specific operations
from agentops.sdk.decorators import operation, task
@operation # or @task
def process_data(data):
# Process the data
return result
5. 运行并检查会话
执行原有 CrewAI 程序,结束时保持会话完成调用,然后进入 AgentOps dashboard 查看对应 session 的分析结果。
使用与配置要点
使用与配置要点
基本使用方式
最小接入模式只需要在程序开始初始化 AgentOps,在程序结束提交会话状态。仓库明确说明这种初始化方式会自动获取所有 LLM calls 的 analytics,因此可以先不修改 CrewAI 内部的 agent 或任务代码。
建立可读的追踪层级
对于包含多个 agent、操作和工作流的 CrewAI 应用,可按照业务边界选择装饰器:
- 使用
session表示一次完整运行,是其他 span 的根。 - 使用
agent追踪 agent 的操作。 - 使用
operation或task标记具体任务和操作。 - 使用
workflow标记由多个操作组成的工作流。 - 通过嵌套装饰器形成正确的 span hierarchy。
验证是否接入成功
验证路径应包括三步:首先确认应用能正常启动并执行 CrewAI 逻辑;其次确认程序结束时执行会话结束调用;最后在 AgentOps dashboard 中查找对应 session。仓库说明所有 sessions 都可以在 dashboard 查看,因此控制台中出现该会话即可作为基础接入验证。
成本与调试使用
运行稳定后,可以使用 Replay Analytics and Debugging 检查逐步的 agent execution graphs,并使用 LLM Cost Management 关注模型提供方产生的 spend。这样可以把问题定位和成本观察放在同一套会话数据上。
注意事项与常见问题
注意事项与常见问题
- API key 不应遗漏:Quick Start 要求先获取 API key,并将其填入
agentops.init。示例中的占位符必须替换为实际项目密钥。 - 结束调用要保留:仓库示例把
agentops.end_session('Success')放在程序末尾;如果没有结束会话,完整会话边界可能无法按示例方式表达。 - 不要把集成误解为替换 CrewAI:仓库将 CrewAI 描述为 Framework Integrations 中的 Native Integration,AgentOps承担的是观测、分析和调试角色。
- 自托管是另一条部署路径:如果需要运行完整 AgentOps app,仓库要求参考
app/README.md的 setup guide;该路径包含 Dashboard 与 API backend,不是 Quick Start 的单纯 SDK 安装。 - 本文不补充未给出的参数:材料没有提供 CrewAI 专用配置项、网络参数、数据库要求或部署命令,实施时应以对应文档和
app/README.md为准。 - 集成范围:仓库还列出 AG2(AutoGen)、Agno、LangGraph 等原生集成,但本配方只聚焦 CrewAI,不将其他框架作为同时使用的组合成员。
优缺点
- ✓ 接入代码量少
- ✓ 支持会话回放与成本追踪
出处
本方案挖掘自开源项目 AgentOps-AI/agentops,方案内容与实施命令均来自其 README 原文。
本方案由真实开源项目挖掘整理,实施命令均来自其 README 原文,安装使用请遵循项目开源协议。