Skip to content

重要提示
自托管 LangSmith 是企业版计划的附加组件,专为我们规模最大、对安全性要求最高的客户设计。有关更多详细信息,请参阅定价。如果您希望获取许可证密钥以在您的环境中试用 LangSmith,请联系我们的销售团队

根据您的规模、安全性和基础设施需求,LangSmith 支持不同的自托管配置。

您可以在不部署代理的情况下,将 LangSmith 用于可观测性评估。或者,您可以设置完整的自托管平台,用于可观测性、评估和代理部署。此外,您也可以直接部署代理,而无需使用控制平面

本页概述了每种自托管模式:

模式包含内容最适合部署方法
可观测性与评估
  • LangSmith (UI + API)
  • 后端服务(队列、Playground、ACE)
  • 数据存储:PostgreSQL、Redis、ClickHouse,可选对象存储
  • 需要自托管可观测性、追踪和评估的团队
  • 运行 LangSmith 而不部署代理/图
  • Docker Compose(开发/测试)
  • Kubernetes + Helm(生产环境)
可观测性、评估与部署
  • 包含“可观测性与评估”的所有内容
  • 控制平面(部署 UI、版本管理、Studio)
  • 数据平面(代理服务器 Pod)
  • 用于编排的 Kubernetes Operator
  • 需要私有 LangChain Cloud 的企业团队
  • 用于管理多个代理/图的集中式 UI/API
  • 集成的可观测性和编排
  • Kubernetes 配合 Helm(必需)
  • 运行在 EKS、GKE、AKS 或自管理集群上
独立服务器
  • 代理服务器容器
  • 需要 PostgreSQL + Redis(共享或专用)
  • 可选的 LangSmith 集成以支持追踪
  • 一个或少数几个代理的轻量级部署
  • 将代理服务器集成为微服务
  • 倾向于自行管理扩展和 CI/CD 的团队
  • Docker / Docker Compose(开发/测试)
  • Kubernetes + Helm(生产环境)
  • 任何容器运行时或虚拟机(ECS、EC2、ACI 等)

有关设置指南,请参阅:

支持的计算平台:Kubernetes(用于 LangSmith 部署),任何计算平台(用于独立服务器)

自托管 LangSmith 可观测性与评估

托管一个包含 UI 和 API 中可观测性、追踪和评估功能的 LangSmith 实例,但不具备通过控制平面部署代理的能力。

这包括:

服务:

  • LangSmith 前端 UI
  • LangSmith 后端 API
  • LangSmith 平台后端
  • LangSmith Playground
  • LangSmith 队列
  • LangSmith ACE(任意代码执行)后端

存储服务:

  • ClickHouse(追踪和反馈数据)
  • PostgreSQL(操作数据)
  • Redis(队列和缓存)
  • 对象存储(可选,但生产环境推荐使用)
LangSmith architecture showing services and datastoresLangSmith architecture showing services and datastores

要访问 LangSmith UI 并发送 API 请求,您需要暴露 LangSmith 前端 服务。根据您的安装方法,这可以是一个负载均衡器或主机上暴露的端口。

服务

服务描述
LangSmith 前端前端使用 Nginx 来提供 LangSmith UI 并将 API 请求路由到其他服务器。这作为应用程序的入口点,并且是唯一必须暴露给用户的组件。
LangSmith 后端后端是 CRUD API 请求的主要入口点,并处理应用程序的大部分业务逻辑。这包括处理来自前端和 SDK 的请求、准备要摄取的追踪数据,以及支持 hub API。
LangSmith 队列队列处理传入的追踪和反馈数据,确保它们被异步摄取并持久化到追踪和反馈数据存储中,处理数据完整性检查,确保成功插入数据存储,并在数据库错误或暂时无法连接到数据库等情况下处理重试。
LangSmith 平台后端平台后端是另一个关键服务,主要处理身份验证、运行(run)摄取和其他高吞吐量任务。
LangSmith PlaygroundPlayground 是一个服务,负责将请求转发到各种 LLM API,以支持 LangSmith Playground 功能。这也可以用于连接到您自己的自定义模型服务器。
LangSmith ACE(任意代码执行)后端ACE 后端是一个在安全环境中执行任意代码的服务。这用于支持在 LangSmith 中运行自定义代码。

存储服务

LangSmith 默认会捆绑所有存储服务。您可以将其配置为使用所有存储服务的外部版本。在生产环境中,我们强烈建议使用外部存储服务

服务描述
ClickHouseClickHouse 是一个用于在线分析处理(OLAP)的高性能、面向列的 SQL 数据库管理系统(DBMS)。

LangSmith 使用 ClickHouse 作为追踪和反馈(高吞吐量数据)的主要数据存储。
PostgreSQLPostgreSQL 是一个功能强大的开源对象关系数据库系统,它使用并扩展了 SQL 语言,结合了许多功能,可以安全地存储和扩展最复杂的数据工作负载。

LangSmith 使用 PostgreSQL 作为事务性工作负载和操作数据(除了追踪和反馈之外的几乎所有内容)的主要数据存储。
RedisRedis 是一个功能强大的内存键值数据库,可将数据持久化到磁盘。通过将数据保存在内存中,Redis 为缓存等操作提供了高性能。

LangSmith 使用 Redis 来支持队列和缓存操作。
对象存储LangSmith 支持多种对象存储提供商,包括 AWS S3Azure Blob StorageGoogle Cloud Storage

LangSmith 使用对象存储来存储大文件,例如追踪工件(artifact)、反馈附件和其他大型数据对象。对象存储是可选的,但强烈建议用于生产部署。

设置方法

  • Docker Compose(仅限开发/测试)
  • Kubernetes + Helm(生产环境推荐)

设置指南

启用 LangSmith 部署

LangSmith 部署是一个可选的附加组件,可以在您的 LangSmith 实例上启用。它非常适合希望拥有一个集中式、UI 驱动的平台来部署和管理多个代理和图(graph)的企业团队,并且所有基础设施、数据和编排都完全在他们的控制之下。

这包括 LangSmith 的所有内容,外加:

组件职责运行位置管理方
控制平面
  • 用于创建部署和修订版本的 UI
  • 用于部署管理的 API
您的云环境
数据平面
  • 用于协调部署的 Operator/监听器
  • 代理服务器(代理/图)
  • 支持服务(Postgres、Redis 等)
您的云环境

您在自己的基础设施内完全运行控制平面和数据平面。您负责配置和管理所有组件。

了解更多关于控制平面数据平面架构概念的信息。

Full platform architecture with control plane and data planeFull platform architecture with control plane and data plane

工作流程

如果您想自托管 LangSmith 以实现可观测性、评估和代理部署,请按照以下步骤操作:

安装自托管 LangSmith

您必须已经在您的云环境中安装了自托管 LangSmith 实例,并拥有一个 Kubernetes 集群(控制平面和数据平面所必需)。

本地测试您的图

使用 langgraph-cliStudio 在本地测试您的图。

启用 LangSmith 部署

按照设置指南在您的 LangSmith 实例上启用 LangSmith 部署。

独立服务器

独立服务器选项是运行 LangSmith 最轻量级、最灵活的方式。与其他模式不同,您只管理一个简化的 数据平面,该平面由代理服务器及其所需的后端支持服务(PostgreSQL、Redis 等)组成。

这包括:

组件职责运行位置管理方
控制平面不适用不适用不适用
数据平面
  • 代理服务器
  • Postgres、Redis 等
您的云环境

此选项让您完全控制扩展、部署和 CI/CD 流水线,同时仍允许与 LangSmith 进行可选集成以实现追踪和评估。

不要在无服务器环境中运行独立服务器。缩放到零可能导致任务丢失,并且扩展可能无法可靠工作。

Standalone server architectureStandalone server architecture

工作流程

  1. 使用 langgraph-cliStudio 在本地定义和测试您的图。
  2. 将您的代理打包为 Docker 镜像。
  3. 将代理服务器部署到您选择的计算平台(Kubernetes、Docker、虚拟机)。
  4. (可选)配置 LangSmith API 密钥和端点,以便服务器将追踪和评估报告回 LangSmith(自托管或 SaaS)。

支持的计算平台

  • Kubernetes:使用 LangSmith Helm chart 在 Kubernetes 集群中运行代理服务器。这是生产级部署的推荐选项。
  • Docker:在任何支持 Docker 的计算平台(本地开发机、虚拟机、ECS 等)中运行。这最适合开发或小规模工作负载。

设置指南

要设置代理服务器,请参阅应用程序部署部分中的操作指南

LangChain 中文文档