【免费下载链接】Tracely-aiTrace-native CI/CD for AI agents — production failures become regression tests that block the PR. Auto-detect, cluster, freeze into hermetic cases, replay in CI for $0.项目地址https://gitcode.com/gh_mirrors/tra/Tracely-ai点击查看免费下载Tracely SDK 是 Tracely-ai 提供的一体化埋点工具包一行tracely.init()即可对 OpenAI、Anthropic、LangChain 等主流框架实现零 Span 代码的自动 Trace 采集自动捕获模型、消息、Token 用量、延迟、工具调用与错误让生产环境的失败轨迹直接变成 CI 中可阻断 PR 的回归测试。本教程面向新手带你 5 分钟完成接入。为什么 LLM 应用需要自动埋点Agent 应用最难排查的不是模型答错了而是哪一步错了是提示词漂移、工具返回异常还是多轮上下文丢失手动打点不仅繁琐而且往往漏掉关键路径。Tracely 的解决思路是把 LLM 调用作为一类一等公民来追踪自动探针Auto-instrumentor直接包装 OpenAI / Anthropic / LangChain 等 SDK你照常写业务代码Span 自动生成语义化属性所有 Span 同时携带标准gen_ai.*/ OpenInference 属性和 Tracely 专属的tracely.*提示agent、conversation、turn、env服务端据此建立可索引的列失败即信号异常或error()标记会自动变成失败检测、故障聚类和 CI 门禁的触发依据。核心依赖只有opentelemetry-sdk OTLP HTTP 导出器Python ≥ 3.10非常轻量。更多设计细节见 sdk/README.md。一键安装三步准备环境第 1 步启动本地 Tracely 后端仓库根目录执行docker compose up -d --build --wait启动后 API 位于http://localhost:8000开发环境采集密钥为tracely_dev_key前端界面在http://localhost:3001。第 2 步安装 SDK按你使用的框架选择 extrapip install tracely-ai[openai] # 或 [anthropic]、[langchain]、[all]每个 extra 会自动拉取对应的 auto-instrumentor。安装后还会附带tracely命令行工具用于 CI 门禁文末介绍。第 3 步在应用启动时初始化一次。就这三步剩下的都是你原来的代码。接入 OpenAI三行代码完成 Trace以最常见的 OpenAI 调用为例完整埋点只需一个init()加一个tracely.trace(...)上下文import tracely_sdk as tracely from openai import OpenAI tracely.init( endpointhttp://localhost:8000, api_keytracely_dev_key, service_namesupport-agent, envprod, # prod | staging | ci | devCI 门禁的关键轴 instrumentauto, # 自动探测已安装的 SDK 并激活对应探针 ) client OpenAI() with tracely.trace(agentsupport-agent, conversationconv-1, useru_42): resp client.chat.completions.create( modelgpt-4o, messages[{role: user, content: 我的订单 ORD-4471 到哪了}], )这段代码没有任何 Span 手工代码但 Tracely 端会得到一个完整的GENERATIONSpan模型名、输入/输出消息、Token 数、延迟、工具调用、错误状态一应俱全且全部自动携带agent/conversation/user运行上下文——后者通过自定义SpanProcessor注入到上下文中每一个Span包括探针自动创建的那些。流式调用注意OpenAI 默认不在流式响应里返回 usage请加上stream_options{include_usage: True}否则流式请求的 Token 和成本数据会丢失。trace()还可以当装饰器用适合包装请求处理函数tracely.trace(agentsupport-agent, conversationconv-1) async def handle(request): ...Anthropic 与 LangChain只改一行配置不同框架的接入差异几乎只在安装 extra 和instrument参数上框架安装关键配置OpenAIpip install tracely-ai[openai]instrumentauto或[openai]Anthropic (Claude)pip install tracely-ai[anthropic]instrumentauto或[anthropic]LangChain / LangGraphpip install tracely-ai[langchain]instrumentauto或[langchain]LiteLLM100 提供商pip install tracely-ai[litellm]instrument[litellm]需显式指定CrewAI / LlamaIndex[crewai]/[llama-index]instrument[crewai]等需显式指定以 Anthropic 为例业务代码完全保持原生写法messages.createtool_use循环每次调用自动成为 GENERATION Span可运行的完整示例见 sdk/examples/auto_anthropic.py。LangChain 1.0 的create_agent同样零改造init()会自动注册 LangChain 回调处理器Chains、Agents、LangGraph 图都能端到端追踪——图变成CHAINSpan每个节点是子 Span节点内的 LLM 调用是GENERATIONSpan。示例见 sdk/examples/auto_langchain.py。两个值得注意的去重规则instrumentauto下若检测到 LangChain 探针它会接管 LLM Span自动跳过 OpenAI/Anthropic 探针避免一次调用出现两个 Span想两者都要可传显式列表[openai, langchain]LiteLLM、CrewAI、LlamaIndex 是路由器性质刻意不进入auto必须显式声明才启用。observe给任意函数加一个 Span自动探针覆盖了 LLM 调用而你自己写的 Agent 逻辑、工具函数可以用一个装饰器标记tracely.observe(as_typeagent) def support_agent(question: str) - str: # 内部照常调用 client.chat.completions.create(...) ...observe会自动把函数参数记为 input、返回值记为 output、异常记为levelERROR并通过 OpenTelemetry 上下文自动嵌套无需手工指定父 Span。as_type支持agent/tool/generation/thinking/retriever/embedding/guardrail等覆盖 Agent 应用的几乎所有观察类型。四层能力可以按需组合L1 自动探针 OpenAI / Anthropic / LangChain ← 默认零 Span 代码 L2 observe 任意函数 / 工具 ← 一个装饰器 L3 tracely.trace() 运行上下文agent/会话/用户 ← 标签流向每个 Span L4 with tracely.llm() 手动 Span ← 逃生舱自定义观测四层嵌套在同一棵 Trace 树里用多少层取决于你的需求。埋点之后Trace 长什么样数据入库后打开前端Traces页面Agent 的运行会按**会话Conversation**聚合每行一个对话展开即是完整的 agent → llm → tool 树进入任意会话的Timeline视图可以直观看到 AGENT / GENERATION / TOOL 的时间瀑布右侧面板展示该 Span 的输入输出与属性切换到Table视图则是逐 Span 的明细表方便配合评估器Evals逐条核对这些 Trace 就是 Tracely 的核心燃料——失败轨迹会被自动聚类成 Failure Clusters一键提升为回归 Case在 PR 阶段回放拦截。进阶技巧Drop-in 客户端、PII 脱敏与线程不想全局打补丁六个提供商提供非侵入的 drop-in 客户端只包装你手里的这一个 client 实例from tracely_sdk.openai import OpenAI # 预包装好的客户端 client OpenAI() # 用法与原 OpenAI 完全一致同样适用于tracely_sdk.anthropic/.google/.mistral等模块。合规要求脱敏脱敏发生在导出阶段覆盖自动探针捕获的提示词和补全内容tracely.init(redactTrue) # 内置 PII 规则邮箱/电话/SSN/卡号 tracely.init(redact[rORD-\d, racct_\w]) # 自定义正则 → [REDACTED]多线程场景自动嵌套基于 contextvar跨线程工作用tracely.run_in_thread(do_work)继承当前 Span 与trace()上下文即可。完整参数表和属性清单可查阅官方文档 docs/pages/automatic.mdx 与 docs/pages/instrumentation.mdx。下一步让 Trace 成为 CI 门禁自动埋点解决了看得见Tracely 真正的杀手锏是让失败拦得住。SDK 自带 CLI把 Agent 行为变成 PR 检查exit 0 通过 / 1 失败并自动在 GitHub 上回写 commit status 和 PR 评论tracely simulate # 用场景驱动你的 HTTP 端点做门禁 tracely gate agent # 用预采集的 envci Trace 门禁 tracely replay agent # 在 CI 里按录制输入回放 Agent回放基于call_tool/call_llm录制-重放机制离线、确定、零 API 费用——同一份代码生产录制、CI 回放连异常都会以ToolError原样复现。总结✅pip install tracely-ai[openai] 一行tracely.init()OpenAI / Anthropic / LangChain 调用零改造进 Trace✅tracely.trace(...)把 agent / 会话 / 用户上下文注入每一个 Spanobserve覆盖自定义逻辑✅ 流式记得开include_usage跨线程用run_in_thread敏感数据用redact✅ 可运行示例按框架各有一份位于 sdk/examples/索引见 sdk/examples/README.md✅ 五分钟后即可从 Trace 走向 Failure Clusters → 回归 Case → CI 门禁的完整闭环。赞分享【免费下载链接】Tracely-aiTrace-native CI/CD for AI agents — production failures become regression tests that block the PR. Auto-detect, cluster, freeze into hermetic cases, replay in CI for $0.项目地址https://gitcode.com/gh_mirrors/tra/Tracely-ai点击查看免费下载相关推荐Highlight 浏览器 SDK 的 OpenTelemetry 实践内置自动埋点与前后端 Trace 串联Highlight 浏览器 SDK 的 OpenTelemetry 实践内置自动埋点与前后端 Trace 串联 本篇聚焦 Highlighthighligh可观测性后端Grafana Tempo 客户端埋点与传播实践从手动/自动/零代码埋点到跨服务 Trace 上下文传递Grafana Tempo 客户端埋点与传播实践从手动/自动/零代码埋点到跨服务 Trace 上下文传递 Instrumentation埋点是 Grafa后端可观测性链路追踪5分钟在macOS上运行Windows应用Whisky的现代Wine包装器终极指南5分钟在macOS上运行Windows应用Whisky的现代Wine包装器终极指南 想在Apple Silicon Mac上无缝运行Windows应用程序吗桌面应用创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考