PydanticAI
Pydantic's type-safe agent framework: build production agents with structured I/O, dependency injection, and full observability.
PydanticAI
PydanticAI is Pydantic's official agent framework that brings the same philosophy of type safety and validation to AI agents. It provides a clean, model-agnostic API for defining agents with typed system prompts, tool calls with validated inputs/outputs, dependency injection, and built-in streaming.
Key Features
- Type-safe by design — agents declare input deps and output types; Pydantic validates everything
- Model-agnostic — OpenAI, Anthropic, Google Gemini, Ollama, Groq, Mistral, and more via a unified API
- Tools — decorate any Python function as a tool; types are auto-converted to JSON schema
- Dependency injection — pass services (databases, HTTP clients) to agents without global state
- Streaming — first-class async streaming for text and structured outputs
- Logfire integration — zero-config observability with Pydantic's Logfire tracing platform
- Result validation — structured output types are validated with the full Pydantic v2 engine
Quick Start
pip install pydantic-ai
from pydantic_ai import Agent
agent = Agent(
"openai:gpt-4o-mini",
system_prompt="You are a concise assistant.",
)
result = agent.run_sync("What is 2 + 2?")
print(result.output) # 4
Install via ai-supply
npx ai-supply add pydantic-ai-agent-framework
Curated mirror of the open-source PydanticAI project (MIT). Install upstream from the repository.
Compromise signals — malicious or tampered code (leaked secrets, backdoors, a dropped executable) — reduce the score, and known dependency CVEs carry a bounded penalty (they warrant review but never QUARANTINE — update the dependency to clear). Other dangerous-by-capability traits are risk surface, expected for some capabilities. Every finding is mapped to its OWASP control below.
Findings mapped to the OWASP Top 10 for LLM Applications (2025) and the OWASP Machine Learning Security Top 10. Expand any flagged control for the exact findings — compromise reduces the score; expected/risk-surface do not, except a known CVE, which carries a small bounded penalty (high/critical → Review).
The same gate an agent runs before installing (POST /api/v1/trust/pydantic-ai-agent-framework/check). Click a policy:
Consume PydanticAI programmatically. Authenticate with an API key or session — see Authorize an agent.
# Agents: CHECK BEFORE YOU INSTALL (no auth) — score, grade, level, capability manifest
curl https://ai-supply.store/api/v1/trust/pydantic-ai-agent-framework
# Gate against your org policy (returns { pass, violations })
curl -X POST https://ai-supply.store/api/v1/trust/pydantic-ai-agent-framework/check \
-H "Content-Type: application/json" \
-d '{"minGrade":"B","denyPermissions":["shell"],"denyUnknownEgress":true}'
# CLI
npx ai-supply add pydantic-ai-agent-framework
# REST (install → download)
curl -X POST https://ai-supply.store/api/v1/listings/pydantic-ai-agent-framework/install \
-H "Authorization: Bearer $AIM_KEY"
# MCP tool
install_listing({ "slug": "pydantic-ai-agent-framework" })OpenAPI spec →Curated mirror — latest upstream source. See the repository for tagged releases.