重要
启用 LangSmith 部署需要 企业版 计划。
启用 LangSmith 部署需要 企业版 计划。
此设置页面用于在现有的 LangSmith 实例上启用 LangSmith 部署。请查阅自托管选项以了解:
- LangSmith(可观测性):您应首先安装的部分。
- LangSmith 部署:本指南所启用的功能。
- 独立服务器:不含 UI 的轻量级替代方案。
概述
本指南建立在 Kubernetes 安装指南 的基础上。您必须先完成该指南,然后才能继续。本页面涵盖了启用 LangSmith 部署所需的额外设置步骤:- 安装 LangGraph 操作器
- 配置您的入口
- 连接到控制平面
先决条件
- 您正在使用 Kubernetes。
- 您有一个正在运行的自托管 LangSmith 实例。
- 您的集群上已安装
KEDA。
KEDA 用于根据队列大小自动扩展部署系统。- 入口配置
- 您必须为您的 LangSmith 实例设置入口、网关或使用 Istio。所有智能体都将作为 Kubernetes 服务部署在此入口之后。请使用本指南为您的实例设置入口。要启用 LangSmith 部署,您需要在
values.yaml中提供一个hostname。
- 您必须为您的 LangSmith 实例设置入口、网关或使用 Istio。所有智能体都将作为 Kubernetes 服务部署在此入口之后。请使用本指南为您的实例设置入口。要启用 LangSmith 部署,您需要在
- 您的集群中必须有足够的空间来容纳多个部署。建议使用
Cluster-Autoscaler来自动配置新节点。 - 一个有效的动态 PV 供应器或集群上可用的 PV。您可以通过运行以下命令来验证:
- 您的网络可以出站访问
https://beacon.langchain.com。如果未在隔离模式下运行,则需要进行许可证验证和使用情况报告。有关更多详细信息,请参阅出站访问文档。
设置
- 作为配置自托管 LangSmith 实例的一部分,您需要启用
deployment选项。这将配置几个关键资源。
从 v0.12.0 开始,
langgraphPlatform 选项已弃用。对于 v0.12.0 之后的任何版本,请使用 config.deployment。- 图表将使用两个额外的镜像。请使用最新版本中指定的镜像。
- 在您的 LangSmith 配置文件(通常是
langsmith_config.yaml)中,启用deployment选项。请注意,您还必须有一个有效的入口设置:
-
在您的
values.yaml文件中,配置hostBackendImage和operatorImage选项(如果您需要镜像镜像)。如果您使用的是需要身份验证的私有容器注册表,则还必须配置imagePullSecrets,请参阅为私有注册表配置身份验证。 - 您还可以通过覆盖 values.yaml 中的基础模板 来为您的智能体配置基础模板。 您的自托管基础设施现在已准备好创建部署。
(可选)配置额外的数据平面
除了上述步骤中已创建的现有数据平面外,您还可以创建更多位于不同 Kubernetes 集群或同一集群不同命名空间中的数据平面。先决条件
- 阅读混合部署文档中的集群组织指南,以了解如何根据您的用例最佳地组织此操作。
- 验证新集群满足混合部署部分中提到的先决条件。请注意,在先决条件的第 5 步中,您需要启用对您的自托管 LangSmith 实例的出站访问,而不是 https://api.host.langchain.com 和 https://api.smith.langchain.com。
- 针对您的 LangSmith Postgres 实例运行以下命令以启用此功能。这是您的自托管 LangSmith 设置附带的 Postgres 实例。
部署到不同的集群
- 按照混合设置指南中的步骤 2-6 操作。
config.langsmithWorkspaceId值应设置为在先决条件中记下的工作空间 ID。 - 要在集群中部署多个数据平面,请遵循在同一集群中配置额外数据平面的规则。
部署到同一集群的不同命名空间
- 您需要对在上述设置说明第 3 步中创建的
langsmith_config.yaml文件进行一些修改:- 将
operator.watchNamespaces字段设置为您的自托管 LangSmith 实例当前运行的命名空间。这是为了防止与作为新数据平面一部分添加的操作器发生冲突。 - 必须使用 Gateway API 或 Istio Gateway。请相应地调整您的
langsmith_config.yaml文件。
- 将
- 运行
helm upgrade以使用新配置更新您的自托管 LangSmith 实例。 - 按照混合设置指南中的步骤 2-6 操作。
config.langsmithWorkspaceId值应设置为在先决条件中记下的工作空间 ID。请记住,config.watchNamespaces应设置为与现有数据平面使用的命名空间不同的命名空间! - (可选)配置控制平面以从其他命名空间读取 Agent Server 部署的日志。有关更多详细信息,请参阅说明。
(可选)为私有注册表配置身份验证
如果您的 Agent Server 部署 将使用来自私有容器注册表(例如,AWS ECR、Azure ACR、GCP Artifact Registry、私有 Docker 注册表)的镜像,请配置镜像拉取密钥。这是一次性的基础设施配置,允许所有部署自动向您的私有注册表进行身份验证。 步骤 1:创建 Kubernetes 镜像拉取密钥myregistry.com:您的注册表 URLyour-username:您的注册表用户名your-password:您的注册表密码或访问令牌langsmith:安装 LangSmith 的 Kubernetes 命名空间
values.yaml 中配置部署模板
要使 Agent Server 部署能够使用私有注册表密钥,您必须将 imagePullSecrets 添加到操作器的部署模板中:
(可选)配置从其他命名空间读取 Agent Server 部署日志的访问权限
重要
对于控制平面(
对于控制平面(
host-backend)和数据平面(listener)部署在不同 Kubernetes 集群中的自托管部署,不支持检索服务器日志。host-backend)和数据平面(listener)部署在同一 Kubernetes 集群中的自托管部署,请确保控制平面 Kubernetes 部署(host-backend)有权从 Agent Server 部署所在的 Kubernetes 命名空间 get/list/watch Kubernetes deployments/pods/replicasets/logs。实现此目标的方法有多种,请根据您的用例实施最适合的解决方案。
示例实现:
- 在部署 Agent Server 的 Kubernetes 命名空间中创建一个具有所需权限的
Role。替换以下命令中的<data_plane_namespace>: - 获取控制平面
ServiceAccount。替换<control_plane_namespace>: - 将该
Role绑定到控制平面ServiceAccount。替换以下命令中的<data_plane_namespace>、<control_plane_namespace>和<control_plane_service_account>:
Role 和 RoleBinding 定义在与 Agent Server 部署相同的 Kubernetes 命名空间中。您可以为 Role 和 RoleBinding 指定任何名称,并根据需要进行自定义。
后续步骤
一旦您的基础设施设置完成,您就可以开始部署应用程序了。有关构建和部署应用程序的说明,请参阅部署选项卡中的部署指南。Connect these docs to Claude, VSCode, and more via MCP for real-time answers.

