Pydantic 团队的 Agent 运行时:类型化工具、结构化输出、依赖注入、流式和可观测性。官方 OpenAIProvider 明确支持 base_url 参数,未传时读 OPENAI_BASE_URL 环境变量——对自定义网关非常友好。

适用场景:Python 团队想要比 Instructor 更完整的 Agent(工具调用+状态+评测),又不想进 LangChain 大生态。

pydantic-ai agent typed tools python

操作步骤

  1. pip install pydantic-ai。
  2. provider = OpenAIProvider(base_url="https://tokenbuddy.cc/v1", api_key="{{API_KEY}}"),再用它构造模型和 Agent。
  3. 工具用 @agent.tool_plain / @agent.tool 注册,输出用 Pydantic 模型约束 output_type。
代码示例
  import os
  from pydantic_ai import Agent
  from pydantic_ai.models.openai import OpenAIChatModel
  from pydantic_ai.providers.openai import OpenAIProvider
  provider = OpenAIProvider(base_url="https://tokenbuddy.cc/v1", api_key=os.environ["{{API_KEY}}"])
  agent = Agent(OpenAIChatModel("your-model-id", provider=provider), system_prompt="Be concise.")
  print(agent.run_sync("Say hello in one sentence").output)

开源项目信息

接入本站 API:类名随版本有变化(如 OpenAIModel/OpenAIChatModel),照当前版本文档抄,不要照旧博客抄;改 base_url 不会自动改模型的 capability profile,特殊网关可能要显式传 profile。

注意事项

  • ⚠️ 版本演进快,类名和参数以当前文档为准
  • ⚠️ 把结构化输出当事实保证——仍需业务校验
  • ⚠️ 工具里做有副作用的操作(删数据、付款)必须加人工确认

来源:https://pydantic.dev/docs/ai/api/pydantic-ai/providers/