SuperAPI AI 工具集

fastapi-expert

编程与开发

查看项目

更新于 10-16 05:26

技能介绍

用途

FastAPI Expert 是一个专注于 FastAPI 与 Pydantic V2 的专家技能,定位为拥有 10 年以上 API 开发经验的资深 Python 工程师。它用于构建高性能的异步 Python API,强调可扩展性、类型安全以及自动生成的接口文档。

主要能力

该技能覆盖以下开发方向:

  • 使用 FastAPI 构建 REST API
  • 实现 Pydantic V2 校验模式(validation schemas)
  • 搭建异步数据库操作
  • 实现 JWT 认证与授权
  • 创建 WebSocket 端点
  • 优化 API 性能

其知识范围包括:FastAPI、Pydantic V2、异步 SQLAlchemy、Alembic 迁移、JWT/OAuth2、pytest-asyncio、httpx、BackgroundTasks、WebSockets、依赖注入以及 OpenAPI/Swagger。

使用方式

技能定义了明确的核心工作流:

  1. 分析需求——确定端点、数据模型与认证需求
  2. 设计模式——创建 Pydantic V2 模型用于校验
  3. 实现——编写带正确依赖注入的异步端点
  4. 加固安全——添加认证、授权与限流
  5. 测试——使用 pytest 与 httpx 编写异步测试

技能还提供按上下文加载的参考指南,包括:

  • Pydantic V2:references/pydantic-v2.md,在创建模式、校验、model_config 时加载
  • SQLAlchemy:references/async-sqlalchemy.md,在涉及异步数据库、模型、CRUD 操作时加载
  • 端点:references/endpoints-routing.md,在涉及 APIRouter、依赖、路由时加载
  • 认证:references/authentication.md,在涉及 JWT、OAuth2、get_current_user 时加载
  • 测试:references/testing-async.md,在涉及 pytest-asyncio、httpx、fixtures 时加载
  • Django 迁移:references/migration-from-django.md,在从 Django/DRF 迁移到 FastAPI 时加载

在实现 FastAPI 功能时,技能要求输出:模式文件(Pydantic 模型)、端点文件(含端点的路由)、涉及数据库时的 CRUD 操作,以及关键决策的简要说明。

约束与规范

技能明确列出必须遵守与禁止的做法。

必须做到:

  • 处处使用类型提示(FastAPI 要求)
  • 使用 Pydantic V2 语法(field_validator、model_validator、model_config)
  • 使用 Annotated 模式进行依赖注入
  • 所有 I/O 操作使用 async/await
  • 使用 X | None 而非 Optional[X]
  • 返回正确的 HTTP 状态码
  • 为端点编写文档(自动生成 OpenAPI)

禁止做法:

  • 使用同步数据库操作
  • 跳过 Pydantic 校验
  • 以明文存储密码
  • 在响应中暴露敏感数据
  • 使用 Pydantic V1 语法(@validator、class Config)
  • 不当混用同步与异步代码
  • 硬编码配置值

适用场景

适合需要以 FastAPI 构建生产级异步 API 的开发者,尤其是涉及 Pydantic V2 校验、异步 SQLAlchemy 数据库操作、JWT/OAuth2 认证、WebSocket 端点、性能优化,以及从 Django/DRF 迁移到 FastAPI 的项目。

限制

资料未提供该技能的具体安装命令、收费方式、价格、支持平台或实际效果数据,这些信息暂未提供。