W
AI-Wiki

Develop · 源文件

入库前的原始上传文件存档。点击左侧文件名可预览文件内容。

FastAPI学习笔记.md1.8 KBit/develop/FastAPI学习笔记.md
`FastAPI` 是一个现代、高性能的 Web 框架,专为构建 API 设计,具有以下特点:
- 基于 Python 类型提示,自动生成接口文档(Swagger UI)。
- 支持异步编程,性能接近 Node.js 和 Go。
- 语法简洁,容易上手,能快速将函数或组件转换为 API 接口。

### 示例

#### 1. 导入与初始化
``` 
from fastapi import FastAPI 
# 初始化 FastAPI 应用
 app = FastAPI(
 title="第一个LangChain应用", # 接口文档标题 
 version="0.0.1", # 版本号 
 description="LangChain应用接口", # 描述信息 
 )
```
- `FastAPI()` 创建一个应用实例 `app`,后续的接口(路由)都将注册到这个实例上。
- 参数 `title`、`version`、`description` 用于配置自动生成的接口文档信息。

#### 2. 将 LangChain 链转换为 API 接口
```
from langserve import add_routes # 注意:代码中可能漏了这个导入,实际需要从 langserve 导入

# 给 app 添加路由(接口),将 chain 关联到 /first_app 路径
add_routes(app, chain, path="/first_app")
```
- `add_routes` 是 LangChain 提供的工具(来自 `langserve` 库),用于快速将 LangChain 链(`chain`)转换为 FastAPI 接口。
- 作用:当用户访问 `http://127.0.0.1:8000/first_app` 时,会触发 `chain` 的调用(等价于 `chain.invoke(...)`)。
- 自动支持多种请求方式:包括 POST 调用(接收输入参数)、GET 预览等,还会生成接口文档。

#### 3. 运行 API 服务
```
if __name__ == "__main__":
 import uvicorn
 # 用 uvicorn 启动 FastAPI 应用,监听本地 8000 端口
 uvicorn.run(app, host="127.0.0.1", port=8000)
```
- `uvicorn` 是一个 ASGI 服务器(用于运行 FastAPI 应用的工具)。
- 运行后,API 服务会在 `http://127.0.0.1:8000` 启动,可通过该地址访问接口。