手把手教你:通过 FastAPI 实现 DeepSeek 与 Qwen 大模型服务集成
本文介绍了如何使用FastAPI框架集成DeepSeek和Qwen大语言模型服务。FastAPI作为高性能Python Web框架,具有快速开发、高效编码等优势。文章详细展示了如何配置API密钥、安装依赖库,并提供了完整的代码实现,通过统一接口调用不同模型服务。最后给出了启动应用和测试接口的方法,帮助开发者快速构建大模型聚合服务。学习大模型技术可把握AI领域发展机遇,解决当前人才短缺问题。
想让 DeepSeek 和 Qwen 大模型落地成服务?这篇就带你用 FastAPI 一步步实现集成!
01 FastAPI 简介
FastAPI 是一款基于 Python 开发的现代 Web 框架,不仅以高性能著称,还依托标准 Python 类型提示简化 API 构建,堪称快速开发高效 API 的优选工具。
FastAPI 有如下关键特性:
- 快速:可与 NodeJS 和 Go 并肩的极高性能(归功于 Starlette 和 Pydantic)。最快的 Python web 框架之一。
- 高效编码:提高功能开发速度约 200% 至 300%。
- 更少 bug:减少约 40% 的人为(开发者)导致错误。
- 智能:极佳的编辑器支持。处处皆可自动补全,减少调试时间。
- 简单:设计的易于使用和学习,阅读文档的时间更短。
- 简短:使代码重复最小化。通过不同的参数声明实现丰富功能。bug 更少。
- 健壮:生产可用级别的代码。还有自动生成的交互式文档。
- 标准化:基于(并完全兼容)API 的相关开放标准:OpenAPI (以前被称为 Swagger) 和 JSON Schema。
FastAPI 在 GitHub 的 Star 历史图上已超过老牌的 Python Web 框架(如:Flask、Django),而且还继续保持着良好的发展趋势。
02 使用 FastAPI 集成 DeepSeek 和 Qwen 大模型服务
在实际开发工作中,我们的服务常常会遇到需要调用不同的大语言模型服务(如:DeepSeek、Qwen),我们可以使用 FastAPI 去集成那些大语言模型服务,将其做成大语言模型的聚合服务。
为方便起见,本文对接的是官网的 DeepSeek 和 Qwen 大模型服务。
我们可以先到 DeepSeek 的开发平台去创建和获取 DeepSeek 的 API Key。
然后到阿里云百炼平台去创建和获取 Qwen 的 API Key。
依赖文件(requirements.txt):
fastapi==0.116.1
uvicorn==0.35.0
openai==1.100.1
dashscope==1.24.1
python-dotenv==1.1.1
Python 版本为 3.10 及以上。
安装依赖的 Python 库:
pip install -r requirements.txt
将 DeepSeek 和 Qwen 的相关信息配置到系统环境变量中。
# DeepSeek 配置
DEEPSEEK_API_KEY = "sk-your-deepseek-key"
DEEPSEEK_BASE_URL = "https://api.deepseek.com"
# Qwen 配置
DASHSCOPE_API_KEY = "sk-your-qwen-key"
DASHSCOPE_API_BASE_URL = "https://dashscope.aliyuncs.com/compatible-mode/v1"
主体代码(llm_app.py):
import os
import uvicorn
from fastapi import FastAPI, HTTPException
from pydantic import BaseModel
from dotenv import load_dotenv
from openai import OpenAI as DeepSeekClient
from dashscope import Generation as QwenClient
# 加载环境变量
load_dotenv()
app = FastAPI()
# 配置模型参数
MODEL_CONFIG = {
"deepseek": {
"client": DeepSeekClient(
api_key=os.getenv("DEEPSEEK_API_KEY"),
base_url=os.getenv("DEEPSEEK_BASE_URL")
),
"model_name": "deepseek-chat"
},
"qwen": {
"client": QwenClient,
"model_name": "qwen-plus"
}
}
# 统一请求格式(兼容OpenAI)
classChatRequest(BaseModel):
model: str # deepseek 或 qwen
messages: list
temperature: float = 0.7
max_tokens: int = 1024
# 统一响应格式
classChatResponse(BaseModel):
model: str
content: str
@app.post("/v1/chat")
asyncdefchat_completion(request: ChatRequest):
model_type = request.model.lower()
if model_type notin MODEL_CONFIG:
raise HTTPException(400, f"Unsupported model: {model_type}")
try:
if model_type == "deepseek":
response = MODEL_CONFIG["deepseek"]["client"].chat.completions.create(
model=MODEL_CONFIG["deepseek"]["model_name"],
messages=request.messages,
temperature=request.temperature,
max_tokens=request.max_tokens
)
content = response.choices[0].message.content
elif model_type == "qwen":
response = QwenClient.call(
model=MODEL_CONFIG["qwen"]["model_name"],
messages=request.messages,
temperature=request.temperature,
max_tokens=request.max_tokens,
result_format='message'
)
content = response.output.choices[0].message.content
return ChatResponse(model=model_type, content=content)
except Exception as e:
raise HTTPException(500, f"API Error: {str(e)}")
if __name__ == "__main__":
uvicorn.run(app, host="0.0.0.0", port=8090)
启动应用:
uvicorn llm_app:app --host 0.0.0.0 --port 8090 --workers 4
03 使用聚合服务
通过 API 接口调用聚合服务:
结语
相信你现在已经知道如何使用 FastAPI 集成大语言模型服务。建议你不妨亲自动手去实践,结合自己的需求去集成自己的大语言模型服务。
读者福利大放送:如果你对大模型感兴趣,想更加深入的学习大模型**,那么这份精心整理的大模型学习资料,绝对能帮你少走弯路、快速入门**
如果你是零基础小白,别担心——大模型入门真的没那么难,你完全可以学得会!
👉 不用你懂任何算法和数学知识,公式推导、复杂原理这些都不用操心;
👉 也不挑电脑配置,普通家用电脑完全能 hold 住,不用额外花钱升级设备;
👉 更不用你提前学 Python 之类的编程语言,零基础照样能上手。
你要做的特别简单:跟着我的讲解走,照着教程里的步骤一步步操作就行。
包括:大模型学习线路汇总、学习阶段,大模型实战案例,大模型学习视频,人工智能、机器学习、大模型书籍PDF。带你从零基础系统性的学好大模型!
现在这份资料免费分享给大家,有需要的小伙伴,直接VX扫描下方二维码就能领取啦😝↓↓↓
为什么要学习大模型?
数据显示,2023 年我国大模型相关人才缺口已突破百万,这一数字直接暴露了人才培养体系的严重滞后与供给不足。而随着人工智能技术的飞速迭代,产业对专业人才的需求将呈爆发式增长,据预测,到 2025 年这一缺口将急剧扩大至 400 万!!
大模型学习路线汇总
整体的学习路线分成L1到L4四个阶段,一步步带你从入门到进阶,从理论到实战,跟着学习路线一步步打卡,小白也能轻松学会!
大模型实战项目&配套源码
光学理论可不够,这套学习资料还包含了丰富的实战案例,让你在实战中检验成果巩固所学知识
大模型学习必看书籍PDF
我精选了一系列大模型技术的书籍和学习文档(电子版),它们由领域内的顶尖专家撰写,内容全面、深入、详尽,为你学习大模型提供坚实的理论基础。
大模型超全面试题汇总
在面试过程中可能遇到的问题,我都给大家汇总好了,能让你们在面试中游刃有余
这些资料真的有用吗?
这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理,现任上海殷泊信息科技CEO,其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证,服务航天科工、国家电网等1000+企业,以第一作者在IEEE Transactions发表论文50+篇,获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。
资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的技术人员,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。
👉获取方式:
😝有需要的小伙伴,可以保存图片到VX扫描下方二维码免费领取【保证100%免费】
相信我,这套大模型系统教程将会是全网最齐全 最适合零基础的!!
更多推荐
所有评论(0)