返回目录
开源项目文档办公类新手

GitHub - fastapi/fastapi: FastAPI framework, high performance, easy to learn, fast to code, ready for production

FastAPI 是一个基于 Python 标准类型提示构建 API 的现代高性能 Web 框架,依托 Starlette 和 Pydantic,提供快速开发、自动交互式文档、数据校验与序列化等能力,适用于构建生产级 REST API、微服务及机器学习服务。

0 次阅读2026/08/28 发布
GitHub - fastapi/fastapi: FastAPI framework, high performance, easy to learn, fast to code, ready for production 来源图片

社区作者 · zZz

它解决什么问题

FastAPI 是一个现代、高性能的 Python Web 框架,用于构建 API,基于标准 Python 类型提示。其关键特性包括:性能极高,与 NodeJS 和 Go 相当(得益于 Starlette 和 Pydantic),是性能最快的 Python 框架之一;开发速度可提升约 200% 至 300%;可减少约 40% 的人为错误;编辑器支持良好、自动补全全面;设计易学易用;代码更简短;可生成生产级代码并提供自动交互式文档;基于 OpenAPI 和 JSON Schema 开放标准。

FastAPI 被微软、优步、Netflix、思科等公司用于关键业务。权威机构 TechEmpower 的独立基准测试显示,FastAPI 应用运行在 Uvicorn 上是性能最快的 Python 框架之一。

— 本文由 AI 根据公开来源辅助整理,命令、版本与许可证请在使用前到原始页面复核。

安装 / 开始使用

  1. 环境准备:先安装 uv,然后使用 uv 将 FastAPI 添加到项目中。
  1. 安装命令:执行 $ uv add "fastapi[standard]",注意命令中的引号需要保留,以确保在各种终端中都能正常工作。如果更喜欢 pip,请在虚拟环境中安装 fastapi[standard]
  1. 创建代码文件:创建 main.py,写入示例代码:
python
from fastapi import FastAPI

app = FastAPI()

@app.get("/")
def read_root():
    return {"Hello": "World"}

@app.get("/items/{item_id}")
def read_item(item_id: int, q: str | None = None):
    return {"item_id": item_id, "q": q}

如果你的代码使用 async / await,也可以用 async def 定义路径函数。

  1. 启动服务:在项目目录下运行 $ uv run fastapi dev,此时 FastAPI CLI 会自动读取 main.py,检测 FastAPI 应用,并使用 Uvicorn 启动开发服务器。默认开启自动重载,服务地址为 http://127.0.0.1:8000。
  1. 验证接口:打开浏览器访问 http://127.0.0.1:8000/items/5?q=somequery ,会看到 JSON 响应 {"item_id": 5, "q": "somequery"}
  1. 查看交互式 API 文档:访问 http://127.0.0.1:8000/docs 查看 Swagger UI 文档,访问 http://127.0.0.1:8000/redoc 查看 ReDoc 文档。
  1. 升级示例:修改 main.py,使用 Pydantic 的 BaseModel 声明请求体,例如增加 class Item(BaseModel): name: str; price: float; is_offer: bool | None = None,并添加 @app.put("/items/{item_id}") 端点。fastapi dev 会自动检测并重载,交互式文档也会同步更新。
  1. 部署(可选):可以运行 $ uv run fastapi deploy 将应用部署到 FastAPI Cloud,部署前如果未登录,浏览器会自动打开完成认证。也可以根据自己的云服务商指南部署到其他云平台。
  1. 常见问题:如果安装命令没有加引号,可能在某些终端中出错,务必使用 "fastapi[standard]";如果不用 uv 而用 pip,请先创建并激活虚拟环境,再将 FastAPI 安装进虚拟环境。

来源教程配图

FastAPI
配图 1 · FastAPI查看原图
教程配图
配图 2 · 教程配图查看原图
教程配图
配图 3 · 教程配图查看原图
教程配图
配图 4 · 教程配图查看原图
教程配图
配图 5 · 教程配图查看原图
教程配图
配图 6 · 教程配图查看原图
教程配图
配图 7 · 教程配图查看原图
教程配图
配图 8 · 教程配图查看原图

适用场景

构建高性能 REST API
为机器学习模型提供在线推理服务
创建微服务架构中的 API 服务
开发异步 WebSocket 应用
快速构建带自动交互式文档(Swagger / ReDoc)的后端服务
实现需要数据校验
转换与序列化的后端接口