ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Pydantic AI 如何在 pydantic-ai-slim 与完整安装包之间选择并只安装所需模型 provider 依赖

Pydantic AI 如何在 pydantic-ai-slim 与完整安装包之间选择并只安装所需模型 provider 依赖 Pydantic AI 如何在 pydantic-ai-slim 与完整安装包之间选择并只安装所需模型 provider 依赖【免费下载链接】pydantic-aiHow Python does AI. Agents, realtime voice, image generation, embeddings. Every model, every interface, typed end to end.项目地址: https://gitcode.com/GitHub_Trending/py/pydantic-aiPydantic AI 在 PyPI 上提供两个安装包完整包pydantic-ai和精简包pydantic-ai-slim。两者的差别在于预装了哪些模型 provider 的 SDK 和哪些集成完整包会一并装上 OpenAI、Anthropic、Google 模型依赖以及 CLI、MCP、Evals、Web UI、Logfire而pydantic-ai-slim只包含核心包每个模型和每个集成都对应一个可选 group需要时再显式安装。这篇文章讲清楚两者的包含关系、如何选择以及只安装你所用模型 provider 依赖的具体命令和验证方式。安装要求 Python 3.10。两个安装包各包含什么完整包的安装命令在 安装文档 中pip/uv-add pydantic-ai这里的pip/uv-add是文档的简写表示pip install或uv add二选一。安装pydantic-ai后环境中会包含pydantic_ai包、核心依赖以及使用 OpenAI、Anthropic、Google 模型所需的库外加 CLI、MCP、Evals、Web UI 和 Logfire 集成。pydantic-ai-slim则只提供核心部分。从仓库根目录的 pyproject.toml 可以看到完整包实际上就是对 slim 包的封装它声明的依赖是pydantic-ai-slim[openai,anthropic,google,cli,mcp,evals,web,logfire]——也就是说完整包 slim 这一组固定 extras。slim 包的核心依赖pydantic、httpx2、pydantic-graph等声明在 pydantic_ai_slim/pyproject.toml 中所有 provider 和集成都以 optional group 的形式列在那里。选择能否明确说出你要用的模型判断标准来自 安装文档 的一句话如果你知道会用到哪个模型并且想避免安装多余的包就用pydantic-ai-slim。具体可以这样决策你只固定使用一个或少数几个 provider例如只用 OpenAI希望环境里少装无关 SDK —— 选 slim 对应 group。你同时会用 OpenAI/Anthropic/Google 中的多个模型并且想要 CLI、MCP、Evals、Web UI、Logfire 开箱即用 —— 直接装完整包改动最少。你目前只用完整包内置的三个模型之外的 provider如 Bedrock、Groq、Mistral—— 完整包也需要追加 extras文档示例为pydantic-ai[bedrock,temporal]slim 则是pydantic-ai-slim[bedrock,temporal]两者写法一致差别只在 slim 不会带上那组内置依赖。有一个容易漏掉的点Logfire 随pydantic-ai一起安装但不包含在 slim 里。如果你用 slim 且需要 Logfire 观测必须显式加logfiregroup见 Logfire 文档。主路径用 pydantic-ai-slim 只安装所需 provider 依赖slim 包安装你需要的模型命令格式是pydantic-ai-slim[group名]。文档给出的示例是以OpenAIChatModel为例pip/uv-add pydantic-ai-slim[openai]各 group 名与它安装的 SDK 依赖来自 安装文档 的清单用途group安装的依赖OpenAI 模型openaiopenaiGoogle 模型googlegoogle-genaiAnthropic 模型anthropicanthropicGroq 模型groqgroqMistral 模型mistralmistralaiCohere 模型coherecohereBedrock 模型bedrockboto3Bedrock Mantle 模型bedrock-mantleopenaibotocorexAI 模型xaixai-sdkOpenRouter / Z.AI / Snowflake / Crusoe / Cerebrasopenrouter/zai/snowflake/crusoe/cerebrasopenaiHugging Face 模型huggingfacehuggingface-hub本地 Sentence Transformers Embeddingsentence-transformerssentence-transformersVoyageAI Embeddingvoyageaivoyageai除模型外按需追加的常用 group 包括logfireLogfire、evalspydantic-evals、cli、mcpfastmcp-slim[client]、mcp-tasksFastMCP 4 的use_taskTrue与mcp相互独立、ui/webWeb UIweb额外带uvicorn、ag-ui、搜索工具duckduckgo/tavily/exa、web-fetchmarkdownify、传输层重试retries、以及持久执行temporal/dbos/prefect。完整清单以 安装文档 为准。需要多个模型或多个集成时用逗号把 group 写在同一对方括号内例如同时装 OpenAI 和 Google 模型并保留 Logfirepip/uv-add pydantic-ai-slim[openai,google,logfire]验证确认依赖已装上再跑一次最小 agent第一步确认对应 group 声明的 SDK 确实出现在环境中例如openaigroup 装完后应能看到openai包uv pip list | grep openai用 pip 管理环境时对应为pip list。这一步对应安装文档中“openaigroup installs … dependencyopenai”的说明group 没装对应 provider 的 SDK 就不在环境里模型自然无法使用。第二步按模型文档跑通一次最小 agent确认模型可用。以 OpenAI 为例模型文档 给出的路径是设置 API key 环境变量后创建 agentexport OPENAI_API_KEYyour-api-keyfrom pydantic_ai import Agent agent Agent(openai:gpt-5.6-sol)其中your-api-key需要替换为你自己的 API keygpt-5.6-sol是文档示例中的模型名。对 Anthropic 等其他 provider做法相同先装对应 group如pip/uv-add pydantic-ai-slim[anthropic]再按其模型文档设置ANTHROPIC_API_KEY并创建 agent。agent 能正常发起请求并返回结果说明 slim 安装与 provider 依赖都配置正确。边界与限制两个包都要求 Python 3.10。slim 不包含 Logfire需要时显式加logfiregroup这是 slim 与完整包在“开箱内容”上最直接的差异之一。mcp-tasks与mcp是两个独立 group普通 MCP 调用只需要mcp显式启用 FastMCP 4 的 tasks 扩展use_taskTrue才需要mcp-tasks见 MCP 客户端文档。TLS 方面Pydantic AI 自身的 HTTP 请求按操作系统信任库校验证书而不是自带certifi包。在最小化容器镜像或使用私有 CA 的企业代理环境下需要在镜像里安装相应证书例如ca-certificates包加代理根 CA或给对应 provider 传入自建的httpx2.AsyncClient经其http_client参数仍走旧版httpxSDK 的 provider如 Groq、Cohere则保留certifi校验并接收旧版httpx.AsyncClient见 安装文档。下一步后续如果新增 provider 或集成回到 安装文档 的 group 清单按需追加即可每个 group 声明的具体依赖及版本下限可在仓库的 pydantic_ai_slim/pyproject.toml 中核对。【免费下载链接】pydantic-aiHow Python does AI. Agents, realtime voice, image generation, embeddings. Every model, every interface, typed end to end.项目地址: https://gitcode.com/GitHub_Trending/py/pydantic-ai创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表