当前位置: 首页 > news >正文

LangChain 入门 服务端部署-FastAPI

在向模型提交多模态消息,比如:音频、视频、图片时,我们不建议直接发送文件数据(base64)给模型,这会大量占用内存和会话记忆。更常见的方案是:

  • 先将多模态文件上传至通用的OSS服务,例如:阿里云OSS、腾讯云COS等
  • 获取oss服务的文件url地址,组织多模态消息,发送给大模型
    image

我们的服务端需要具备以下接口:

  • 对话接口:接收用户聊天消息,并调用Agent
  • 会话管理接口:查询或删除会话历史
  • 文件上传接口:调用OSS提供的客户端,实现文件上传授权,将来由前端完成文件上传,文件不经过服务器。
app/├── main.py                    # FastAPI 入口,配置路由和静态文件│├── agents/│   └── personal_chief.py      # AI 代理核心逻辑│ ├── api/│   └── v1/│       ├── chat.py             # 对话 API│       │   ├── POST /chat/stream     流式对话│       │   ├── GET  /chat/messages   获取历史│       │   └── DELETE /chat/messages 清空历史│       ││       └── oss.py              # OSS 上传签名 URL│├── models/│   └── schemas.py              # Pydantic 数据模型,请求/响应数据结构定义  │├── common/│   └── logger.py               # 日志配置│└── static/                     # Next.js 编译产出的静态网页 ├── index.html              # 前端入口├── _next/                  # Next.js 构建资源└── ...                     # 其他静态资源

安装依赖

uv add fastapi alibabacloud-oss-v2
import osfrom fastapi import FastAPI
from fastapi.responses import FileResponse
from fastapi.staticfiles import StaticFiles
from fastapi.middleware.cors import CORSMiddleware
from app.api.v1 import chat
from app.api.v1 import oss
from app.common.logger import setup_logging# 初始化日志配置
setup_logging()# 初始化FastAPI
app = FastAPI(title="Personal Chief API",description="私厨",version="0.1.0"
)# ...中间代码略...if __name__ == "__main__":import uvicorn# 启动命令:python -m app.mainuvicorn.run("app.main:app", host="127.0.0.1", port=8001, reload=True)
http://www.jsqmd.com/news/987582/

相关文章:

  • 2026成都多门店横向测评香奈儿回收,五金掉色成色扣价标准实拍 - 奢侈品回收评测
  • 2026 无锡手表芝柏、欧米茄回收,高端复杂腕表回收 - 奢侈品回收评测
  • 告别过拟合!用迁移学习和标签平滑提升你的高光谱Transformer模型精度
  • 送男生送爸爸剃须刀排行 实用品质之选参考 - 互联网科技品牌测评
  • 2026苏州建筑防水补漏市场适配指南:苏州鼎壹万防水补漏公司及优质服务商解析 - 鼎壹万修缮说
  • 2026郑州名表回收:万国宝珀,当场打款 - 奢侈品回收评测
  • 2026最新RAG实战避坑指南:解决大模型幻觉、检索不准、上下文失效问题(附完整源码)
  • 主治医师考试高通过率的培训机构盘点 - 医考机构品牌测评专家
  • 关于CR2格式转换JPG格式的三种有效方法
  • 2026年 奔驰C/E/S车窗膜品牌推荐榜:隔热防爆与原厂级隐形守护之选 - 品牌发掘
  • 闲置名表变现,2026 无锡手表回收附件一定要带齐 - 奢侈品回收评测
  • 非泼罗尼滴剂 / 喷雾剂有效码?:瑞德医生业内优选 - 思溯深度专栏
  • 代码库-scRNAseq去除批次效应-260609
  • 2026寄大件冰箱洗衣机,哪个物流便宜?全网比价攻略 - 快递物流资讯
  • 寄文件省钱攻略:哪家快递最便宜? - 快递物流资讯
  • 眉山全屋定制酒柜品牌排行:实测对比5家主流服务商 - 起跑123
  • 618执业医师囤什么课?阿虎三个核心课程深度解析 - 医考机构品牌测评专家
  • 南宁黄金回收门店攻略:稳妥变现挑选正规店铺 - 奢侈品回收评测
  • 2026年权威机构依据国标严选东莞靠谱软糖铁盒定制工厂 - 变量人生001
  • qt各个版本(32位和64位)下载
  • VSCode配置
  • 横向对比!济南LV迪奥回收,出价高低当场见分晓 - 奢侈品回收评测
  • 全国县级边界+骨干河湖路网GIS矢量数据包(含属性与投影)
  • 2026福州二手包包回收机构硬核测评:鉴定 / 报价 / 回款全维度打分 - 奢侈品回收评测
  • Python 爬虫项目 跨服务器爬虫任务同步方案
  • 眉山全屋定制橱柜服务商排行:实测维度全解析 - 起跑123
  • 2026年乌鲁木齐市CPPM考试最新全攻略:科目题型、通过率、备考重点及官方双认证报考机构推荐 - 众智商学院课程中心
  • 5个被低估的pandas高效技巧:at、explode、assign、query、pipe实战解析
  • 2026重庆钻石回收资质榜单|收的顶资质拉满,稳居TOP1首选 - 奢侈品回收测评
  • 2026苏州屋顶漏水维修适配方案与服务商专业解析 - 鼎壹万修缮说