跳转至

如何部署自托管控制平面

在部署之前,请查看自托管控制平面部署选项的概念指南。

重要提示

自托管控制平面部署选项需要企业版计划。

先决条件

  1. 你正在使用 Kubernetes。
  2. 你已部署自托管 LangSmith。
  3. 使用 LangGraph CLI 在本地测试你的应用程序
  4. 使用 LangGraph CLI 构建 Docker 镜像(即 langgraph build)并将其推送到你的 Kubernetes 集群有权访问的注册表。
  5. 在你的集群上安装 KEDA

     helm repo add kedacore https://kedacore.github.io/charts
     helm install keda kedacore/keda --namespace keda --create-namespace
    
    1. Ingress 配置
    2. 你必须为你的 LangSmith 实例设置一个 ingress。所有智能代理将作为 Kubernetes 服务部署在此 ingress 之后。
    3. 你可以使用此指南为你的实例设置 ingress
    4. 你的集群中有足够的空间用于多个部署。建议使用 Cluster-Autoscaler 自动配置新节点。
    5. 你的集群上有有效的动态 PV 配置器或可用的 PV。你可以通过运行以下命令来验证这一点:

      kubectl get storageclass

  6. 从你的网络出站访问 https://beacon.langchain.com。如果不在气隙模式下运行,则需要此访问权限以进行许可证验证和使用情况报告。有关更多详细信息,请参阅出站流量文档

设置

  1. 作为配置自托管 LangSmith 实例的一部分,你启用 langgraphPlatform 选项。这将配置一些关键资源。
    1. listener: 这是一个服务,用于监听控制平面以获取你的部署的更改,并创建/更新下游 CRD。
    2. LangGraphPlatform CRD: 用于 LangGraph Platform 部署的 CRD。这包含用于管理 LangGraph 平台部署实例的规范。
    3. operator: 此操作员处理对你的 LangGraph Platform CRD 的更改。
    4. host-backend: 这是控制平面
  2. 图表将使用两个额外的镜像。使用最新版本中指定的镜像。

    hostBackendImage:
      repository: "docker.io/langchain/hosted-langserve-backend"
      pullPolicy: IfNotPresent
    operatorImage:
      repository: "docker.io/langchain/langgraph-operator"
      pullPolicy: IfNotPresent
    
  3. 在你的 langsmith 配置文件中(通常为 langsmith_config.yaml),启用 langgraphPlatform 选项。请注意,你还必须设置有效的 ingress:

    config:
      langgraphPlatform:
        enabled: true
        langgraphPlatformLicenseKey: "YOUR_LANGGRAPH_PLATFORM_LICENSE_KEY"
    
    1. 在你的 values.yaml 文件中,配置 hostBackendImageoperatorImage 选项(如果需要镜像镜像)
  4. 你还可以通过覆盖此处的基础模板来配置智能代理的基础模板。

  5. 你从控制平面 UI 创建部署。