# openllmetry **Repository Path**: cnbubblefish/openllmetry ## Basic Information - **Project Name**: openllmetry - **Description**: openllmetry - **Primary Language**: Python - **License**: Apache-2.0 - **Default Branch**: anthropic-message - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-02-10 - **Last Updated**: 2025-02-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

Open-source observability for your LLM application

Get started ยป

Slack | Docs | Website

OpenLLMetry is released under the Apache-2.0 License git commit activity PRs welcome! Slack community channel Traceloop Twitter

Looking for the JS/TS version? Check out [OpenLLMetry-JS](https://github.com/traceloop/openllmetry-js). OpenLLMetry is a set of extensions built on top of [OpenTelemetry](https://opentelemetry.io/) that gives you complete observability over your LLM application. Because it uses OpenTelemetry under the hood, [it can be connected to your existing observability solutions](https://www.traceloop.com/docs/openllmetry/integrations/introduction) - Datadog, Honeycomb, and others. It's built and maintained by Traceloop under the Apache 2.0 license. The repo contains standard OpenTelemetry instrumentations for LLM providers and Vector DBs, as well as a Traceloop SDK that makes it easy to get started with OpenLLMetry, while still outputting standard OpenTelemetry data that can be connected to your observability stack. If you already have OpenTelemetry instrumented, you can just add any of our instrumentations directly. ## ๐Ÿš€ Getting Started The easiest way to get started is to use our SDK. For a complete guide, go to our [docs](https://traceloop.com/docs/openllmetry/getting-started-python). Install the SDK: ```bash pip install traceloop-sdk ``` Then, to start instrumenting your code, just add this line to your code: ```python from traceloop.sdk import Traceloop Traceloop.init() ``` That's it. You're now tracing your code with OpenLLMetry! If you're running this locally, you may want to disable batch sending, so you can see the traces immediately: ```python Traceloop.init(disable_batch=True) ``` ## โซ Supported (and tested) destinations - โœ… [Traceloop](https://www.traceloop.com/docs/openllmetry/integrations/traceloop) - โœ… [Dynatrace](https://www.traceloop.com/docs/openllmetry/integrations/dynatrace) - โœ… [Datadog](https://www.traceloop.com/docs/openllmetry/integrations/datadog) - โœ… [New Relic](https://www.traceloop.com/docs/openllmetry/integrations/newrelic) - โœ… [Honeycomb](https://www.traceloop.com/docs/openllmetry/integrations/honeycomb) - โœ… [Grafana Tempo](https://www.traceloop.com/docs/openllmetry/integrations/grafana) - โœ… [HyperDX](https://www.traceloop.com/docs/openllmetry/integrations/hyperdx) - โœ… [SigNoz](https://www.traceloop.com/docs/openllmetry/integrations/signoz) - โœ… [Splunk](https://www.traceloop.com/docs/openllmetry/integrations/splunk) - โœ… [OpenTelemetry Collector](https://www.traceloop.com/docs/openllmetry/integrations/otel-collector) - โœ… [IBM Instana](https://www.traceloop.com/docs/openllmetry/integrations/instana) See [our docs](https://traceloop.com/docs/openllmetry/integrations/exporting) for instructions on connecting to each one. ## ๐Ÿช— What do we instrument? OpenLLMetry can instrument everything that [OpenTelemetry already instruments](https://github.com/open-telemetry/opentelemetry-python-contrib/tree/main/instrumentation) - so things like your DB, API calls, and more. On top of that, we built a set of custom extensions that instrument things like your calls to OpenAI or Anthropic, or your Vector DB like Chroma, Pinecone, Qdrant or Weaviate. ### LLM Providers - โœ… OpenAI / Azure OpenAI - โœ… Anthropic - โœ… Cohere - โœ… HuggingFace - โœ… Bedrock (AWS) - โœ… Replicate - โœ… Vertex AI (GCP) - โœ… IBM Watsonx AI ### Vector DBs - โœ… Chroma - โœ… Pinecone - โœ… Qdrant - โœ… Weaviate - โณ Milvus ### Frameworks - โœ… LangChain - โœ… [LlamaIndex](https://docs.llamaindex.ai/en/stable/module_guides/observability/observability.html#openllmetry) - โœ… [Haystack](https://haystack.deepset.ai/integrations/traceloop) - โœ… [LiteLLM](https://docs.litellm.ai/docs/observability/traceloop_integration) ## ๐ŸŒฑ Contributing Whether it's big or small, we love contributions โค๏ธ Check out our guide to see how to [get started](https://traceloop.com/docs/openllmetry/contributing/overview). Not sure where to get started? You can: - [Book a free pairing session with one of our teammates](mailto:nir@traceloop.com?subject=Pairing%20session&body=I'd%20like%20to%20do%20a%20pairing%20session!)! - Join our Slack, and ask us any questions there. ## ๐Ÿ’š Community & Support - [Slack](https://traceloop.com/slack) (For live discussion with the community and the Traceloop team) - [GitHub Discussions](https://github.com/traceloop/openllmetry/discussions) (For help with building and deeper conversations about features) - [GitHub Issues](https://github.com/traceloop/openllmetry/issues) (For any bugs and errors you encounter using OpenLLMetry) - [Twitter](https://twitter.com/traceloopdev) (Get news fast) ## ๐Ÿ™ Special Thanks To @patrickdebois, who [suggested the great name](https://x.com/patrickdebois/status/1695518950715473991?s=46&t=zn2SOuJcSVq-Pe2Ysevzkg) we're now using for this repo!