【LangServe部署流程】5 分钟部署你的 AI 服务

目录

一、LangServe简介

二、环境准备

1. 安装必要依赖

2. 编写一个 LangChain 可运行链(Runnable) 

3. 启动 LangServe 服务

4. 启动服务

 5. 使用 API 进行调用

三、可选:访问交互式 Swagger 文档

四、基于 LangServe 的 RAG 应用部署流程

🌟 项目目标

 第一步:安装依赖

第二步:准备知识文档

第三步:构建 RAG 链(rag_chain.py)

 第四步:部署为 LangServe 服务(main.py)

 第五步:启动服务

 第六步:测试 API 调用

第七步:可选增强功能

 项目结构参考

示例请求格式(JSON)

 五、实践建议

六、扩展玩法

七、项目结构参考

总结


本教程将带你用 LangServe 构建一个可在线访问的 LLM 服务,支持通过 HTTP API 调用大语言模型(如 OpenAI 的 GPT 或阿里百炼 Qwen)。


一、LangServe简介

LangServeLangChain 官方提供的部署工具,用于将 LangChain 的 Runnable 组件(如链、Agent、RAG Pipelines)以 RESTful API 形式发布为 Web 服务。

你可以理解它是:

“一个让你把 LangChain 项目一键变成 API 的开发框架。”


二、环境准备

1. 安装必要依赖

pip install langserve langchain openai uvicorn

 若使用的是 Qwen 或阿里百炼平台,请安装相关 SDK,如:

pip install dashscope


2. 编写一个 LangChain 可运行链(Runnable) 

创建一个文件:my_chain.py

# my_chain.py
from langchain_core.runnables import RunnableLambda
from langchain_core.prompts import PromptTemplate
from langchain.chat_models import ChatOpenAI

prompt = PromptTemplate.from_template("你是一位诗人。请根据提示写一首诗:{topic}")

llm = ChatOpenAI(model="gpt-3.5-turbo", temperature=0.7)

# 定义一个 runnable 链
poetry_chain = prompt | llm

# 或者包装成一个函数
poetry_func = RunnableLambda(lambda x: poetry_chain.invoke(x))

 

3. 启动 LangServe 服务

创建一个文件:main.py

# main.py
from langserve import add_routes
from fastapi import FastAPI
from my_chain import poetry_func

app = FastAPI()

# 启用 LangServe 路由:将 poetry_func 发布为 API
add_routes(app, poetry_func, path="/poetry")

# 启动方式见下方 uvicorn 命令

4. 启动服务

uvicorn main:app --host 0.0.0.0 --port 8000 --reload

启动后你会看到输出:

INFO:     Uvicorn running on http://127.0.0.1:8000


 5. 使用 API 进行调用

你可以使用 curl、Postman、或 Python 发请求:

curl http://localhost:8000/poetry/invoke \
  -X POST \
  -H "Content-Type: application/json" \
  -d '{"input": {"topic": "月亮与孤独"}}'

返回结果类似:

{
  "output": "在孤独的夜晚月色浓,\n独影轻摇寂寞中……"
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一叶千舟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值