openinference-instrumentation-pydantic-ai package. Pydantic AI emits OpenTelemetry spans natively once instrumentation is enabled with Agent.instrument_all(); the OpenInference span processor reshapes them into the OpenInference format that Arize AX understands.
Prerequisites
- Python 3.10+
- An Arize AX account (sign up)
- An
OPENAI_API_KEYfrom the OpenAI Platform
Launch Arize AX
- Sign in to your Arize AX account.
- From Space Settings, copy your Space ID and API Key. You will set them as
ARIZE_SPACE_IDandARIZE_API_KEYbelow.
Install
Configure credentials
Setup tracing
Run Pydantic AI
Expected output
Verify in Arize AX
- Open your Arize AX space and select project
pydantic-ai-tracing-example. - You should see a new trace within ~30 seconds containing an
agent runparent span wrapping a nested OpenAI chat-completion LLM span, with the prompt, response, and the validatedCityFactoutput attached. - If no traces appear, see Troubleshooting.
Check from the skill, CLI, or SDK
Confirm spans are actually reaching your Arize AX project. Use whichever fits your workflow — the skill and CLI work for any framework; the SDK check is shown for each language.- Arize skill (agent)
- AX CLI
- SDK
Install the Arize Skills plugin and let your coding agent check for you:Then prompt your agent:
Use the arize-trace skill to export and analyze recent traces from my project. Confirm spans are arriving, and summarize any errors or latency issues.
Troubleshooting
- No traces in Arize AX. Confirm
ARIZE_SPACE_IDandARIZE_API_KEYare set in the same shell that runsexample.py. Enable OpenTelemetry debug logs withexport OTEL_LOG_LEVEL=debugand re-run. - Agent ran but no spans appear. Pydantic AI only emits OTel spans once instrumentation is enabled. Call
Agent.instrument_all()before running any agent. (In pydantic-ai 1.x this was the per-agentAgent(..., instrument=True)argument, which was removed in 2.0 —Agent.instrument_all()is the replacement.) 401from OpenAI. VerifyOPENAI_API_KEYis set and has access togpt-5.5. Swap for a model your key can call.- Output validation errors. When the model returns content that doesn’t satisfy the
output_typePydantic model, Pydantic AI raises a validation error and may retry. Both the failed and successful attempts surface as separate spans.