开发者通过 output_type 参数指定 Pydantic 模型作为 Agent 的输出类型。框架会根据该模型生成 JSON Schema,并将其嵌入 LLM 请求中,利用各提供商的原生结构化输出机制(如 OpenAI 的 response_format、Anthropic 的工具调用接口)。
LLM 返回原始响应后,Pydantic AI 根据 JSON Schema 对其进行验证,包括类型检查、字段约束和枚举成员资格验证。验证失败时,框架将错误信息反馈给模型并要求重新生成。
验证失败触发自动重试,重试次数可通过 Agent(retries={'output': N}) 配置。每次重试消耗一个输出重试预算单位,直到达到上限或验证成功。