Skip to main content

Documentation Index

Fetch the complete documentation index at: https://arize-ax.mintlify.dev/docs/llms.txt

Use this file to discover all available pages before exploring further.

“Standardized naming schemes and attribute definitions for telemetry data across services, languages, and platforms.”
A semantic convention is an agreement about what to call things. Without conventions, every team invents their own attribute names — one calls it prompt, another input.text, another messages[0].content — and tools that try to read all of those have to maintain mappings for every variant. OpenInference defines the canonical attribute names for AI/LLM telemetry. Arize AX uses these conventions to render spans in the UI, and any OTel-compatible backend that understands OpenInference can do the same.

Why Semantic Conventions Matter

Three concrete benefits, all of which compound as your stack grows:
What it gives you
ConsistencyOne name for each concept across services, languages, and platforms. Same key in Python, JS, and Go.
InteroperabilityTools and backends understand your data without custom mapping. Switching backends or layering on new tools doesn’t require re-instrumenting.
Best practicesThe conventions encode what to trace, not just how. They are an opinionated answer to “which attributes should I set on an LLM span?”
Two examples of OpenInference attribute names:
llm.token_count.total
llm.input_messages
If you set llm.input_messages on a span, Arize AX knows it’s the chat history. So does any other OpenInference-aware backend. So does anyone reading your trace export six months from now.

OpenInference vs GenAI

The GenAI observability space currently has two semantic convention standards. They overlap in what they describe but differ in maturity and governance.
OpenInferenceGenAI
Maintained byArizeOpenTelemetry community
StatusStableStill in development; not on a stable release
Stability guaranteesConventions are stable across releases. Breaking changes are versioned.Conventions are subject to change at any time, with explicit guidance about version transitions and opt-in for newer experimental revisions.
Attribute prefixDomain-specific prefixes: llm.*, tool.*, agent.*, retriever.*, etc.Generally prefixed gen_ai.*
Instrumentation librariesExtensive — auto-instrumentors for most popular AI frameworks.Smaller surface area today; instrumentors are still landing.
Arize AX supportFirst-class. Arize AX reads these directly.Spans tagged with gen_ai.* attributes still arrive at Arize AX, but won’t get the same UI treatment as OpenInference-tagged spans.
For new instrumentation today, use OpenInference. Over time the two conventions are expected to converge as the GenAI spec stabilizes — when that happens, the OpenInference auto-instrumentors will pick up the change so your application code doesn’t have to.

The Authoritative Source

OpenInference is open-source. The canonical attribute lists, span kind enums, MIME type values, and LLM provider/system enums live in the OpenInference repository — language-specific implementations track these definitions exactly.

Python Semantic Conventions

TS Semantic Conventions

When in doubt about an exact attribute name, those files are the source of truth.

What’s Covered in OpenInference

The conventions cover four broad categories:
CategoryExamplesWhere to read more
Span kindsLLM, TOOL, AGENT, CHAIN, RETRIEVER, EMBEDDING, RERANKER, GUARDRAIL, EVALUATOR, PROMPT, UNKNOWNSpan Kinds
Per-kind attributesllm.input_messages, tool.parameters, agent.name, retrieval.documentsSpan Kinds
Common attributesinput.value, output.value, input.mime_type, output.mime_type, metadata, session.id, user.id, tag.tagsSpan Kinds
EnumsLLM providers (openai, anthropic, cohere, …), MIME types (text/plain, application/json), span kind values (ALL CAPS)Span Kinds and the canonical source
The next page walks through the span-kind catalog in detail.

Next step

Span kinds are the most important convention OpenInference adds — they determine how spans render in the Arize AX UI and which attributes are expected:

Next: OpenInference Span Kinds