langserve

把 LangChain 应用一键变成 REST API,快速上线

LangServe 是 LangChain 官方推出的一个开源工具,用于将 LangChain 构建的 LLM 应用(如链、代理、检索器等)快速部署为 REST API 服务。它解决了 LLM 应用从原型到生产环境部署的最后一公里问题,让开发者无需关心复杂的服务端框架和异步处理细节。核心能力包括:自动生成 API 端点(如 /invoke、/batch、/stream),支持流式输出、异步调用、批处理;提供自动生成的 API 文档和交互式 Playground 界面,方便测试和调试;支持多种 Python 运行时和部署平台(如 AWS、Azure、GCP 等),并集成 LangSmith 进行监控和追踪。通过简单的代码装饰器,即可将现有链包装成可用的服务,极大降低了部署门槛。

开源 free 开源模型
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 2329
维护状态 低维护
是否开源 是
定价模式 free

项目数据

分类开源模型
开发团队langchain-ai
所属国家
官网地址
定价模式free
价格说明开源项目,无在线服务,需自行部署,完全免费。
访问状态
是否开源是
开源协议NOASSERTION
主要语言JavaScript
技术栈/模型deployment,fastapi,langchain,langchain-python,llm,llms
GitHub 星标★ 2329
30天Star增速
HF 下载量
上线时间2023-09-29 00:00:00
最近更新2026-09-15 00:00:00
维护状态低维护
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数3

使用教程

难度:进阶 约 15 分钟 部署方式:库/依赖 7 步

环境要求

  • Python 环境与 pip(用于安装 langserve)
  • LangChain 构建的可运行对象(chain/agent/retriever 等)
  • 模型服务密钥,例如 OPENAI_API_KEY
  • 项目依赖管理使用 poetry(README 说明)
  • 云部署需对应 CLI:AWS Copilot CLI / Azure CLI / gcloud,以及 Dockerfile

安装与启动步骤

  1. 1安装 LangServe

    同时需要客户端和服务端时安装 all 全部依赖,避免后续缺包。

    pip install "langserve[all]"
  2. 2按需分开安装

    只写客户端代码装 client,只做服务端装 server;二者与 all 互斥选择其一即可。

    pip install "langserve[client]"
    pip install "langserve[server]"
  3. 3配置模型密钥

    LangServe 本身不含模型,链里用到的模型密钥需通过环境变量注入。

    export OPENAI_API_KEY="sk-xxxxxxxx"
  4. 4定义可运行路由

    打开 server.py,用 add_routes 把 LangChain 对象挂到指定 path 上,README 明确要求在此处编辑。

    add_routes(app, RunnableLambda(func), path="/foo")
  5. 5部署到 AWS

    使用 AWS Copilot CLI 指定 Load Balanced Web Service 类型和 Dockerfile 完成部署。

    copilot init --app my-app --name my-service --type 'Load Balanced Web Service' --dockerfile './Dockerfile' --deploy
  6. 6部署到 Azure

    通过 Azure Container Apps 部署,README 指定目标端口为 8001,并把密钥作为环境变量传入。

    az containerapp up --name my-container-app --source . --resource-group my-resource-group --environment my-environment --ingress external --target-port 8001 --env-vars=OPENAI_API_KEY=sk-xxxxxxxx
  7. 7部署到 GCP

    使用 Cloud Run 部署,端口同样为 8001,允许未认证访问并设置环境变量。

    gcloud run deploy my-service --source . --port 8001 --allow-unauthenticated --region us-central1 --set-env-vars=OPENAI_API_KEY=sk-xxxxxxxx

关键配置

配置项必填说明示例
OPENAI_API_KEY是链中调用的模型密钥,通过环境变量注入服务sk-xxxxxxxx
path是add_routes 中挂载 runnable 的 URL 路径/foo

如何确认成功

访问部署后服务的 /docs 页面,能看到自动生成的 Swagger/JSONSchema API 文档与 Playground 即成功。

常见问题

Q:这个项目还维护吗?

A:已自 2024 年 11 月 18 日起废弃,官方建议新项目改用 LangGraph Platform,并只接受社区的 bug 修复,不再接受新功能贡献。

Q:客户端和服务端需要分开安装吗?

A:可以。pip install "langserve[client]" 用于客户端调用代码,pip install "langserve[server]" 用于服务端,二者都要则装 langserve[all]。

Q:JavaScript 项目怎么调用?

A:LangServe 的 JavaScript 客户端在 LangChain.js 中提供,可按其文档接入已部署的服务端。

Q:部署到云平台需要自己写服务吗?

A:不需要额外框架,但 AWS 部署需准备 Dockerfile 并安装 AWS Copilot CLI,Azure 和 GCP 则分别使用 az containerapp 与 gcloud run 命令。

注意事项

  • 项目已废弃(DEPRECATED),新项目建议迁移到 LangGraph Platform,README 提供 MIGRATION.md 迁移指南。
  • README 使用 poetry 管理依赖,改造示例工程时应遵循其 poetry 文档。
  • Azure Container Apps 与 Cloud Run 的示例目标端口均为 8001,需与服务监听端口保持一致。
  • 云平台部署命令中的 app、service、resource-group 等名称需替换为你自己的真实名称。

核心亮点

  • 一行代码将链/代理包装成 REST API,开发效率高
  • 内置流式、批处理和异步支持,适配多种调用场景
  • 自动生成 OpenAPI 文档和 Playground,调试直观

不足之处

  • 仅支持 Python,对 JavaScript/TypeScript 开发者不友好
  • 部署依赖 LangChain 生态,非 LangChain 项目无法使用
  • 文档和社区尚在完善,部分高级用法需自行摸索

适用场景

  • 快速将 LLM 应用封装成后端服务供前端调用
  • 为内部工具或外部客户提供标准化的 LLM API
  • 在云平台上部署可扩展的 LLM 服务,配合监控

替代项目

FastAPI、Gradio、Chainlit

项目介绍

langserve 是开发框架领域的开源项目,由 langchain-ai 开发,2023 年首次发布。

在全站 13,090 个收录项目中,它的 GitHub 星标数(2,329)位列前 30%,在开发框架分类中处于中上游。

项目已超过三个月没有代码更新,维护节奏明显放缓,最近一次代码更新于 2026-09-15。无在线服务,需自行部署,完全免费。

它主要面向的使用场景是:快速将LLM应用封装成后端服务供前端调用。同类可对比的替代方案包括 FastAPI、Gradio、Chainlit。

上一篇:nextpy

下一篇:agentUniverse

同类项目推荐

langchain 开源

组装 AI 应用的乐高积木,从想法到上线不换工具

The agent engineering platform.

★ 146874 2026-08-09
transformers 开源

全球最大的模型仓库全家桶,想用的模型一把抓

Transformers: the model-definition framework for state-of-the-art machine learning m···

★ 166529 2026-08-09
pi 开源

一套 TypeScript 工具包,快速搭出能写代码的 AI agent

AI agent toolkit: unified LLM API, agent loop, TUI, coding agent CLI

★ 108504 2026-09-12