TraceAI

义项:AI 追踪工具
TraceAI

TraceAI是由Future AGI维护的开源AI应用追踪工具,它以OpenTelemetry为基础,为大语言模型调用与智能体(Agent)工作流提供自动化埋点和可视化调试能力[1]。接入后,每一次模型调用、检索与工具调用都会生成带输入输出、token用量和时延的结构化跨度(span),开发者由此定位多步智能体中的失败环节[2]。其span可直接导出到任意兼容OTLP的后端,被视作AI应用可观测性领域较有代表性的实现之一[3]。

目录
  1. 定义
  2. 原理
  3. 发展历程
  4. 应用
  5. 局限
  6. 参见

定义

TraceAI是一套面向AI应用的分布式追踪库,主要服务于大语言模型调用和多步智能体流程的观测与调试[1]。它以Apache 2.0协议开放源代码,基于OpenTelemetry SDK构建,提供Python、TypeScript、Java和C#四种语言的实现[1]。在功能定位上,它承担的是采集层角色,即把AI运行过程转换成标准化跨度,而不是绑定某一个观测平台[3]。

它与传统应用监控的区别在于观测对象:传统链路追踪关注服务与接口的耗时,TraceAI则把提示词、模型响应、检索结果、工具调用和护栏检查都定义为可独立观察的节点[3]。这些节点按调用层级嵌套成一棵树,一次智能体运行因此可以被完整还原[2]。

原理

TraceAI的采集方式分为自动埋点与手动埋点两类。自动方式只需在程序中调用一次埋点注册,随后框架内所有模型请求都会被包装,记录模型名称、消息内容、响应文本、输入与输出token数、费用、耗时和结束原因等字段[4][5]。手动方式则通过装饰器和上下文管理器,把任意Python函数或代码块声明为节点,并标注其属于检索、模型调用等类别[4]。

跨度之间依靠父子关系组织成执行树。一次智能体运行的根跨度包住整个过程,其下依次挂载规划、工具调用、检索、模型生成等子跨度,每个子跨度携带自己的输入输出与耗时[2]。流式响应会被自动缓冲并聚合,token用量从最后一段数据中提取,因此流式调用无需额外改造即可纳入追踪[4]。

在采样控制上,TraceAI允许按全局或按函数设置采样率,未被采样的调用不产生跨度写入,函数本身仍正常返回结果[4]。采集到的跨度通过OTLP协议导出,既可使用自建收集器,也可直接发往Jaeger、Grafana Tempo、Datadog等兼容后端[2]。其跨度类型约定覆盖LLM、AGENT、TOOL、RETRIEVER、EMBEDDING、RERANKER、GUARDRAIL和EVALUATOR等类别,使不同框架产生的数据可以按统一口径检索[3]。


flowchart TD

A[AGENT 根跨度] --> B[规划跨度]

A --> C[检索跨度 RETRIEVER]

A --> D[工具调用跨度 TOOL]

A --> E[模型生成跨度 LLM]

E --> F[护栏校验跨度 GUARDRAIL]

C --> G[OTLP 导出]

D --> G

E --> G

F --> G

G --> H[兼容后端或自建收集器]

发展历程

TraceAI由Future AGI推出并以开源形式发布,核心库与各框架适配包分开发布,逐步覆盖模型供应商、智能体框架和向量数据库三类接入面。早期版本以Python为主,后续扩展出TypeScript、Java和C#实现,Java侧还提供了Spring Boot自动配置与LangChain4j、Semantic Kernel等适配[3]。

生态文档显示,其适配包数量已达50余项,涵盖OpenAI、Anthropic、Google Vertex AI、AWS Bedrock等模型服务,CrewAI、OpenAI Agents SDK、Mastra、Google ADK、MCP、LiveKit等框架,以及Pinecone、Qdrant、Milvus、pgvector等向量库[3]。2026年前后,TraceAI把语音场景单独拆分为适配包,为LiveKit Agents和Pipecat提供音频段跨度与语音相关属性,使一通语音通话同样呈现为一棵跨度树[1]。

需要说明的是,以TraceAI命名的工具并非只有一套。另有学术会议论文提出过同名系统,尝试把大语言模型引入分布式系统追踪以减少人工分析[6];也有项目将TraceAI用于记录AI招聘决策的审计留痕,以及与链上资金追查相关的产品[7][8]。这些同名对象彼此独立,与本词条所述的开源追踪库不属同一体系。

应用

TraceAI最常见的用途是生产环境监控。团队在预发布和正式环境接入后,可以按模型、租户、环境等维度检索调用记录,定位时延瓶颈究竟出现在模型侧还是检索侧,并对token用量异常设置告警[2]。

在多步智能体调试中,它能把笼统的“回答错误”拆解为可核查的步骤序列,例如指出某一步检索返回了不相关片段、模型据此生成了失真内容,而护栏因只检查特定类型信息而未拦截[2]。对于向量检索环节,跨度数据还可暴露索引过期或阈值设置错误导致的空结果,这类问题往往被模型的流畅输出所掩盖[2]。

在实验管理方面,TraceAI支持把多次运行归入具名实验并在面板中并排比对,同一任务在不同供应商上的成本与质量差异因此可以基于自身负载数据得出[4]。其跨度数据还可作为离线回放与评测的输入,供后续的评估、失败聚类和提示词优化环节使用[1]。

局限

TraceAI解决的是“看得见”的问题,并不直接判断输出好坏。跨度只记录实际发生的调用与数据,回答是否准确、是否存在幻觉,仍需借助外部评估器打分,评测属于链路之上的另一层能力[1]。

数据完整性受采样策略约束。为控制开销而设置的采样率会使部分调用完全不落盘,事后复盘失败请求时可能缺少对应记录[4]。同时,跨度默认携带完整的提示词与响应内容,涉及个人信息的场景需要依靠隐私开关隐藏输入、输出、图像或向量等字段,否则敏感数据会随追踪数据一并外流[9]。

工具本身也与后端选择相互独立。TraceAI以Apache 2.0发布并遵循OpenTelemetry标准,采用它并不强制绑定某一平台,但这同时意味着存储、检索引擎和可视化面板需另行搭建或选购,开箱即用的完整体验依赖配套后端[1]。此外,同名工具在生态中并存,检索资料与安装包时需核对维护方,避免将不同产品的文档混用[7][4]。

参见

  • OpenTelemetry —— TraceAI构建于其SDK之上,并采用其OTLP协议导出数据。

  • 大语言模型 —— 该工具主要观测的对象。

  • 智能体 —— 多步智能体流程是其核心调试场景。

  • 向量数据库 —— 检索跨度所对应的基础设施组件。

  • 可观测性 —— TraceAI所属的技术范畴。

参考资料

  1. traceAI: OpenTelemetry-Native LLM and Agent Tracing in 2026 [引用日期2026-10-29]
  2. traceAI: OpenTelemetry LLM Tracing in 2 Lines of Code [引用日期2026-10-29]
  3. What Is TraceAI? Definition & FutureAGI Guide (2026) [引用日期2026-10-29]
  4. traceai-sdk [引用日期2026-10-29]
  5. traceai [引用日期2026-10-29]
  6. Satra et al., 2025 - Google Patents [引用日期2026-10-29]
  7. gettraceai - TraceAI Python SDK [引用日期2026-10-29]
  8. Trace AI: Track Stolen Crypto With an AI Agent | BlockSec [引用日期2026-10-29]
  9. fi-instrumentation-otel - traceAI Python SDK [引用日期2026-10-29]
词条评价
词条统计

浏览次数:0 次

阅读量:0 次 · 阅读完成量:0 次

最近更新:2026-10-28T18:38:45Z

历史版本

本条目引用的词条
OpenTelemetry 大语言模型 智能体 向量数据库 可观测性