// the find
Arize-ai/openinference
OpenTelemetry Instrumentation for AI Observability
OpenInference is a set of OpenTelemetry semantic conventions plus instrumentation libraries for tracing LLM and agent applications, spanning Python, JS, Java, and Go. It's for teams who want traces of LLM calls, retrieval, and tool use flowing into Phoenix, Arize AX, or any other OTel-compatible backend.
Huge breadth: dozens of separately versioned instrumentation packages covering OpenAI, Anthropic, LangChain, LlamaIndex, Bedrock, and most of the current agent-framework crop, across four languages rather than one SDK with half-baked ports. It builds on real OpenTelemetry conventions instead of a bespoke trace format, so it isn't locked to Arize's own backend. Activity is high and recent (Claude Agent SDK, Google ADK Java, TypeSafe AI all added), and the Java side has both annotation-based tracing and a javaagent for auto-instrumentation, which is more than most competing projects bother with in that ecosystem.
The package count is a maintenance tax for anyone adopting it: a polyglot app pulling in five or six of these has to track five or six independent version streams instead of one. The spec itself (markdown files in spec/) is thin relative to the number of instrumentors built against it, so the implementation has clearly outpaced the written contract. Smaller or newer integrations (Pipecat, TypeSafe AI, AgentSpec) are the kind that tend to lag when upstream SDKs change their internals. And while it's OTel-based in theory, 'natively supported by Arize Phoenix/AX' suggests the best-tested path is still through Arize's own backend, not a generic OTel collector.