开发与工程 ✓ Microsoft · 官方 pydanticpythonapi-schemasdata-validationfastapicosmos-db

Pydantic 多模型架构

用统一的多模型模式构建清晰、可复用的 Pydantic 数据契约。

FollowSkills 评估 · FSRS-2.0
不推荐
52/ 100 五分制 2.6 / 5
信任安全18 / 25 · 3.6/5

该技能仅提供Pydantic模型代码模板,没有外部调用、凭据处理、数据上传或破坏性操作,且声明MIT许可证;因此基础风险较低。未说明用户确认、敏感字段处理、数据流、回滚或依赖安全,扣7分。

可靠稳定7 / 20 · 1.8/5

主文档、模板和参考文件目标基本一致,覆盖多模型结构和部分验证规则。模板使用class Config,而参考文件要求Pydantic v2的model_config,且未提供安装说明、专门测试、边界输入或失败反馈,扣13分;静态审查不超过10分。

适用触发8 / 15 · 2.7/5

目标场景、模型变体和基本集成位置较明确。未明确不适用范围、触发条件、项目结构差异、版本兼容边界,也没有中文使用说明;但核心功能不依赖海外网络服务,扣7分。

规范维护9 / 15 · 3.0/5

具备名称、描述、MIT许可证、作者、版本、快速开始、模板和参考文件,信息结构较清晰。缺少变更日志、明确维护责任和更新路径,并存在Pydantic v2文档与示例风格不一致,扣6分。

有效结果6 / 15 · 2.0/5

模板可直接作为API和数据库模型的起点,能覆盖Base、Create、Update、Response和InDB核心任务。仍需大量替换占位符和按项目调整字段、别名、数据库约束及序列化方式,且没有该技能专属的可验证输出,扣9分;静态审查上限为7分。

证据核验4 / 10 · 2.0/5

技能文件、模板和能力清单均可审计,仓库还提供通用CI和测试基础设施。没有针对该技能的提交测试、真实运行结果或独立复现证据,因此扣6分;静态审查上限为5分。

证据充分度: 评估于 2026年7月20日 审查版本 9ccaf7c3704a
使用前请注意
  • 示例中的class Config与参考文件要求的Pydantic v2 model_config不一致,采用前应确认目标Pydantic版本并修正配置写法。
  • InDB模型将doc_type和Cosmos DB模式作为默认假设,其他数据库或领域模型可能需要删除或重构。
  • 技能未提供model_dump、model_validate、schema生成和field/model validator的完整示例,不能将模板视为完整生产方案。
查看完整评分方法 →

它能做什么 & 适用场景

这是 Microsoft Agent Skills 仓库中的一个 Python 技能,专门指导使用 Pydantic v2 定义 API 请求、响应和数据库模型。它采用 Base、Create、Update、Response 与 InDB 五类模型的多模型模式。技能还涵盖 snake_case 与 camelCase 别名、PATCH 更新字段的可选性,以及用于 Cosmos DB 查询的 doc_type 字段。适合需要稳定 API 契约和数据校验结构的 Python 应用,但它不是完整的 FastAPI 或数据库实现方案。

指导代理从 assets/template.py 复制模型模板,并将资源名称替换为 PascalCase 和 snake_case;定义共享字段、创建请求、更新请求、API 响应和数据库文档模型;为字段设置 camelCase 别名并启用 populate_by_name;将更新字段设为可选;为 InDB 模型添加 doc_type;建议把模型放入 src/backend/app/models/、从 __init__.py 导出,并添加对应的 TypeScript 类型。

  1. Python 后端开发者为新资源设计创建、更新和响应 API 模型时。
  2. FastAPI 项目需要区分必填创建字段与全部可选的 PATCH 字段时。
  3. 团队希望同时支持 Python snake_case 和前端 camelCase 字段名时。
  4. 使用 Cosmos DB 文档并需要通过 doc_type 区分文档类型时。
  5. 希望统一多个资源模型结构、减少 API 契约重复定义时。

优缺点一览

优点
  • 明确规定五类模型的职责,适合建立一致的 API 契约。
  • 覆盖 camelCase 别名、PATCH 可选字段和数据库文档类型等常见需求。
  • 提供可复制的模板入口和具体集成目录建议。
  • README 列出该技能有 12 个测试场景。
局限
  • 内容主要是模式和示例,未提供完整可运行的项目实现。
  • 未说明具体 Pydantic 版本范围,只明确写了 Pydantic v2。
  • 未提供认证、错误处理、迁移或数据库访问代码。
  • TypeScript 类型只被列为集成步骤,未提供生成或定义示例。

如何安装

在支持 Agent Skills 的客户端中运行 npx skills add microsoft/skills,在安装向导中选择此技能。README 指出技能会安装到所选代理的目录,例如 GitHub Copilot 的 .github/skills/。源材料未说明单独安装此技能的专用命令或版本锁定方式。

如何使用

在项目中触发与 Pydantic v2 模型、API 请求/响应模式或数据库模型相关的任务,例如:请为 Project 资源创建 Base、Create、Update、Response 和 InDB Pydantic 模型,并支持 camelCase 别名。 使用时应提供资源字段和项目目录结构;技能建议将模型放在 src/backend/app/models/,并从 src/backend/app/models/__init__.py 导出。

常见问题

它是否适合所有 Pydantic 项目?
它面向使用 Pydantic v2 的 Python 应用,尤其适合 API 请求/响应和数据库模型;是否适合其他架构需要结合项目需求判断。
它会自动创建或修改项目文件吗?
源材料只说明复制模板、创建模型并导出模型,未明确说明自动执行文件修改的机制。
使用它是否需要 MCP 或网络访问?
该 SKILL.md 未要求 MCP 或网络调用;它引用本地模板和参考文件,因此需要项目文件系统访问。

同仓库的其他 Skills

均来自 microsoft/agent-skills

开发与工程 ✓ Microsoft · 官方

Azure Identity Python 认证技能

为 Python Azure 应用提供基于 Microsoft Entra ID 的可复用身份认证指导。

开发与工程 ✓ Microsoft · 官方

Azure Event Hubs Java 开发技能

帮助 Java 开发者构建高吞吐、可 checkpoint 的 Azure 事件流应用。

开发与工程 ✓ Microsoft · 官方

Azure Tables Python 技能

帮助 Python 开发者使用 Azure Tables 完成安全认证、实体管理、查询与批量事务操作。

开发与工程 ✓ Microsoft · 官方

Azure Identity TypeScript

为 TypeScript Azure 应用配置安全、可切换的 Microsoft Entra ID 身份验证。

自动化与运维 ✓ Microsoft · 官方

Azure 应用可靠性顾问

评估并提升 Azure Functions 与 App Service 的可靠性。

开发与工程 ✓ Microsoft · 官方

Azure 云架构师

帮助编码代理按照 Azure 架构中心最佳实践设计和审查生产级云系统。

开发与工程 ✓ Microsoft · 官方

Azure AI 文本分析 Python 技能

为 Python 开发者提供 Azure 文本分析与自然语言处理集成指导。

自动化与运维 ✓ Microsoft · 官方

Azure 资源架构可视化器

分析 Azure 资源组及其依赖关系,生成详细的 Mermaid 架构图。

开发与工程 ✓ Microsoft · 官方

Azure Maps .NET 开发技能

为 .NET 应用提供地理搜索、路线、地图、定位与天气开发指导。

开发与工程 ✓ Microsoft · 官方

Azure AI Vision 图像分析技能

为 Python 编码代理提供 Azure AI Vision 图像理解实现指南。

开发与工程 ✓ Microsoft · 官方

Azure Blob Storage Python 技能

帮助 Python 开发者安全高效地操作 Azure Blob Storage。

开发与工程 ✓ Microsoft · 官方

Azure Queue Storage Python 技能

帮助编码代理使用 Python 构建安全、可靠的 Azure Queue Storage 异步消息处理。

自动化与运维 ✓ Microsoft · 官方

Azure AI 网关治理

用 Azure API Management 统一治理 AI 模型、MCP 工具和智能体流量。

自动化与运维 ✓ Microsoft · 官方

AKS Automatic 就绪评估

评估 Kubernetes 工作负载能否迁移到 AKS Automatic,并定位兼容性阻塞项。

开发与工程 ✓ Microsoft · 官方

Azure Cosmos DB .NET 资源管理技能

用 .NET 通过 ARM 部署和管理 Azure Cosmos DB 资源。

开发与工程 ✓ Microsoft · 官方

Azure Playwright 工作区管理技能

用 .NET 通过 Azure Resource Manager 配置和管理 Microsoft Playwright Testing 工作区。

开发与工程 ✓ Microsoft · 官方

Azure Cosmos DB Python 技能

帮助 Python 开发者可靠地构建和操作 Azure Cosmos DB NoSQL 应用。

开发与工程 ✓ Microsoft · 官方

Azure Key Vault Python SDK 技能

帮助 Python 编码代理安全管理 Azure Key Vault 中的机密、加密密钥和证书。

开发与工程 ✓ Microsoft · 官方

Azure API Management Python 技能

帮助编码代理使用 Python SDK 管理 Azure API Management 的服务、API、产品、订阅与策略。

开发与工程 ✓ Microsoft · 官方

Azure Monitor 查询 Python 技能

帮助 Python 开发者查询 Azure Monitor 日志与指标。

相关 Skills