FastAPI(现代 Python 后端)
定义
FastAPI 是基于 ASGI(异步)、类型注解和 Pydantic 数据校验的现代 Python Web 框架。用带类型的 Python 类声明请求/响应模型,即可自动获得参数校验、序列化和 OpenAPI/Swagger 文档。它是 Python API 服务的事实标准,尤其是封装机器学习模型和 LLM 的服务。
为什么对 AI 求职重要
AI 生态运行在 Python 上,而 FastAPI 就是 Python 服务的交付方式:模型推理端点、RAG API、智能体后端、内部工具。JD 里写“Python + FastAPI + Postgres”描述的就是 AI 创业公司的默认后端。对有 Spring Boot/ASP.NET 经验的工程师,概念直接对应:Router ≈ Controller,Pydantic ≈ DTO 校验,依赖注入内置。
核心概念
- 异步端点——
async def处理函数、事件循环,以及何时该用同步/异步。 - Pydantic 模型——带校验和序列化的类型化请求/响应 schema。
- 依赖注入——用
Depends()管理鉴权、数据库会话和配置。 - 自动 OpenAPI 文档——自动生成的 Swagger UI 即“活文档”。
- 流式响应——用 Server-Sent Events(SSE)做 LLM token 流式输出。
- 后台任务——Background Tasks 与任务队列(Celery、ARQ)的取舍。
- 部署——uvicorn worker、Docker 镜像、健康检查与可观测性。
学习路径
- 用 FastAPI + SQLAlchemy + Postgres 做一个 CRUD API,带 Pydantic schema 和自动文档。
- 加一个通过 SSE 流式返回模型回答的 LLM 端点——所有 AI 后端的核心模式。
- 结合 pgvector 提供 RAG 检索 API(见 RAG 与 pgvector 词条)。
- 加入鉴权(OAuth2/JWT + Depends)、限流和结构化日志。
- 用 Docker 容器化并部署到云端;用 pytest 写 API 测试。