FastAPI 与 Langchain 调用大模型服务
简介
large language model
,指的是一种基于深度学习技术的大规模人工智能模型,尤其擅长处理和生成自然语言文本,当前流行的大语言文本包括GPT、通义千问、DeepSeek等
使用大模型作为基础技术设施,可以快速的开发很多语义丰富的程序
流行的大模型技术架构
graph TD
A[外部数据库<br>网页、API、数据库、本地文档库] --> B[LangChain<br>大模型开发应用框架<br>提供对话模板、记忆能力、挂载知识库能力等<br>大语言模型LLM]
B --> C[ChatGPT]
B --> D[通义千问]
B --> E[DeepSeek]
B --> F[豆包等]
G[网页、APP、小程序<br>等前端] --> H[FastAPI<br>基于LangChain+LLM+知识库<br>开发各种应用]
H --> I[业务数据库<br>例如用户信息、偏好设置]
H --> B
与通义千问大模型大模型的集成
申请 api-key:
- 打开阿里云百炼页面,并登录您的阿里云账号。
- 开通服务:在阿里云百炼页面中,选择开通“百炼大模型推理”服务。等待系统完成开通流程,通常会收到开通成功的通知短信或站内消息。
- 创建API-KEY:开通服务后,再次登录阿里云百炼页面,点击右上角的小人图标,进入API-KEY管理界面。点击【创建新的API-KEY】按钮,系统将生成一个API-KEY。请务必保存好这个Key,因为后续配置将会用到它。
使用dot-env 模块管理环境变量
python-dotenv
,可以在项目中加载和管理环境变量
- 安装技术库
pip install dot-env
- 创建
.env
文件
DB_HOST=localhost
DB_USER=root
DB_PASSWORD=*****
SECRET_KEY=******************
- 在代码中使用变量
import os
from dotenv import load_dotenv
load_dotenv()
db_host = os.getenv(DB_HOST)
db_user = os.getenv(DB_USER)
db_password = os.getenv(DB_PASSWORD)
sk = os.getenv(SECRET_KEY)
调用大模型API
- OpenAI SDK
import os
from openai import OpenAI
try:
client = OpenAI(
# 若没有配置环境变量,请用百炼API Key将下行替换为:api_key="sk-xxx",
api_key=os.getenv("DASHSCOPE_API_KEY"),
base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
)
completion = client.chat