快速搭建LangChain API服务:使用LangServe和FastAPI
引言
在现代人工智能开发中,构建和部署高效的API服务是必不可少的一部分。LangServe是一种新兴工具,专为将LangChain可运行对象和链部署为REST API而设计。本文将介绍如何使用LangServe和FastAPI来快速搭建一个LangChain API服务,并讨论常见问题及其解决方案。
主要内容
什么是LangServe
LangServe帮助开发者将LangChain的可运行对象和链部署为REST API。这一库整合了FastAPI,并使用Pydantic进行数据验证。此外,它还提供了一个客户端,方便调用部署在服务器上的可运行对象。
功能
- 自动推断输入和输出模式,并在每次API调用时强制执行,提供详细的错误信息。
- API文档页,包含JSONSchema和Swagger文档。
- 高效的/invoke、/batch和/stream端点,支持在单服务器上处理许多并发请求。
- /stream_log端点,用于流式传输链/代理的所有(或部分)中间步骤。
- 新功能:支持/stream_events,简化了不需要解析/stream_log输出的流式传输。
- Playground页面,提供流式输出和中间步骤的演示。
- 内置(可选)追踪功能,支持LangSmith,只需添加你的API密钥。
安装
你可以通过以下命令安装LangServe:
pip install "langserve[all]"
设置LangServe项目
- 使用LangChain CLI创建新应用
langchain app new my-app
- 定义可运行对象
编辑server.py文件中的add_routes:
from fastapi import FastAPI
from langchain.prompts import ChatPromptTemplate
from langchain.chat_models import ChatAnthropic, ChatOpenAI
from langserve import add_routes
app = FastAPI(
title="LangChain Server",
version="1.0",
description="A simple api server using Langchain's Runnable interfaces",
)
add_routes(
app,
ChatOpenAI(model="gpt-3.5-turbo-0125"),
path="/openai",
)
add_routes(


2126

被折叠的 条评论
为什么被折叠?



