基于 OpenTelemetry 标准的 LLM 可观察性方案,支持分布式追踪和性能监控。生产环境 LLM 应用团队可直接使用。
面向 LLM 应用的开源可观测性方案
🎉 新动态:我们的语义约定现已成为 OpenTelemetry 的一部分!欢迎参与讨论,与我们一起塑造 LLM 可观测性的未来。
在找 JS/TS 版本?请查看 OpenLLMetry-JS。
OpenLLMetry 是一组构建在 OpenTelemetry 之上的扩展,可为你的 LLM 应用提供完整的可观测性。由于底层使用 OpenTelemetry,它可以接入你现有的可观测性解决方案,例如 Datadog、Honeycomb 等。
该项目由 Traceloop 基于 Apache 2.0 许可证构建并维护。
这个仓库包含面向 LLM 提供商和 Vector DB 的标准 OpenTelemetry instrumentation,以及 Traceloop SDK。后者可以帮助你轻松上手 OpenLLMetry,同时仍然输出标准的 OpenTelemetry 数据,以便接入现有的可观测性技术栈。如果你的项目已经接入 OpenTelemetry,也可以直接添加我们的任意 instrumentation。
最简单的上手方式是使用我们的 SDK。完整指南请参阅文档。
pip install traceloop-sdk
然后,只需在代码中添加以下内容,即可开始对代码进行 instrumentation:
from traceloop.sdk import Traceloop
Traceloop.init()
就这么简单。现在,你已经开始使用 OpenLLMetry 追踪代码了!如果是在本地运行,可能需要禁用批量发送,以便立即看到 trace:
Traceloop.init(disable_batch=True)
✅ Azure Application Insights
✅ OpenTelemetry Collector
✅ Service Now Cloud Observability
有关如何连接到各个平台的说明,请参阅我们的文档。
OpenLLMetry 可以对 OpenTelemetry 已经支持的所有内容进行 instrumentation,例如 DB、API 调用等。除此之外,我们还构建了一组自定义扩展,可以对 OpenAI、Anthropic 等服务的调用,以及 Chroma、Pinecone、Qdrant、Weaviate 等 Vector DB 进行 instrumentation。
✅ Google Generative AI (Gemini)
✅ OpenAI / Azure OpenAI
✅ AWS Strands(内置 OTEL 支持)
我们不再通过 SDK 或 instrumentation 记录或收集任何 telemetry。请确保升级到 v0.49.2 或更高版本。
主要目的是检测 instrumentation 内部出现的异常。由于 LLM 提供商经常更新 API,这可以帮助我们快速发现并修复任何破坏性变更。
我们只收集匿名数据,不包含任何个人身份信息。你可以在隐私文档中准确查看我们收集了哪些数据。
telemetry 只会在 SDK 中收集。如果不使用 SDK,而是直接使用 instrumentation,则不会收集任何 telemetry。
无论贡献大小,我们都非常欢迎 ❤️ 请查看我们的指南,了解如何开始参与贡献。
不知道从哪里开始?你可以:
预约一次免费的结对交流,与我们的一位团队成员一起讨论!
加入我们的 Slack,并在那里向我们提出任何问题。
Slack(与社区及 Traceloop 团队实时交流)
GitHub Discussions(获取构建方面的帮助,并深入讨论功能)
GitHub Issues(报告使用 OpenLLMetry 时遇到的任何 bug 和错误)
Twitter(快速获取最新消息)
感谢 @patrickdebois,是他提出了这个很棒的名字,而我们现在正将它用于这个仓库!