OpenLLMetry is a project name, not a single installable PyPI package. It refers to two related but distinct things that must not be confused: (1) The traceloop-sdk — the high-level Traceloop SDK (already documented separately) that wraps OpenLLMetry auto-instrumentation behind Traceloop.init(). (2) Standalone opentelemetry-instrumentation-* packages — individual OTel instrumentors for specific LLM providers/frameworks, published from the traceloop/openllmetry GitHub monorepo. These can be used WITHOUT traceloop-sdk in any existing OpenTelemetry setup. ECOSYSTEM CONFUSION: There is a second, competing instrumentation ecosystem called OpenInference (from Arize-ai/openinference), which publishes openinference-instrumentation-* packages. Both OpenLLMetry and OpenInference instrumentors instrument the same providers (OpenAI, LangChain, etc.), use different span attribute schemas, and route to different preferred backends. They are NOT interchangeable.
pip install opentelemetry-instrumentation-openaiVerified import paths — ran on the pinned version, not inferred.
TracerProvider must be configured before calling .instrument(). Instrumentors do not create or manage the TracerProvider — that is your responsibility. If you want zero-config setup, use traceloop-sdk instead (it manages the TracerProvider for you).
pip install opentelemetry-instrumentation-openai (or whichever provider you need). Full package list: https://github.com/traceloop/openllmetry/tree/main/packages
Pick one ecosystem and stick to it. Using Phoenix or Arize AX? Use openinference-instrumentation-* packages. Using Datadog, Traceloop cloud, or a generic OTLP backend? Use opentelemetry-instrumentation-* packages (OpenLLMetry). Never mix both in the same app unless you have a span processor that normalizes the schemas.
Call all .instrument() calls at application startup before any other imports of the target library. Structure: (1) set up TracerProvider, (2) call all .instrument(), (3) import and use provider libraries.
Set os.environ['TRACELOOP_TRACE_CONTENT'] = 'false' at the very top of your entry point, before any instrumentation calls.
Verify your target backend's supported schema before choosing an ecosystem. Check backend docs for 'OpenLLMetry' vs 'OpenInference' support.
Install the necessary OpenTelemetry exporter package: `pip install opentelemetry-exporter-otlp` (for gRPC) or `pip install opentelemetry-exporter-otlp-proto-http` (for HTTP/protobuf).
No dependency data recorded yet.