这是将应用程序部署到 LangSmith Cloud 的综合设置和管理指南。LangSmith Cloud 在 AWS 和 GCP 上运行(请参阅 云概述页面 了解区域详情)。
本指南涵盖两种部署方法: LangSmith UI,可从已连接的 GitHub 仓库进行部署,以及 langgraph deploy CLI 命令,可从本地机器直接构建和推送。
设置之前,请查看 云概述页面 以了解云托管模式。
前提条件
- - 一个 Plus 计划或更高级别.
- - 的 LangSmith 账户。请验证 LangGraph API 在本地运行。如果 API 无法成功运行(即
langgraph dev),部署到 LangSmith 也会失败。
创建新部署
选择适合您工作流程的部署方法——LangSmith UI 连接 GitHub 仓库并支持推送时自动部署,而 langgraph deploy CLI 命令可直接从本地项目目录构建和部署。
LangSmith UI
从 LangSmith UI开始,选择 **部署** 在左侧导航面板中, **部署**。在右上角,选择 **+ 新建部署** 来创建新部署:
1. 在 **创建新部署** 面板中,填写必填字段。对于 **部署详情**: 1. 选择 **从 GitHub 导入** 并遵循 GitHub OAuth 工作流程来安装和授权 LangChain 的 hosted-langserve GitHub 应用以访问所选仓库。安装完成后,返回 **创建新部署** 面板并从下拉菜单中选择要部署的 GitHub 仓库。 <aside class="callout"><strong>提示</strong> 安装 LangChain 的 GitHub 用户 hosted-langserve GitHub 应用必须是 所有者 组织或账户的。此授权每个 LangSmith 工作区只需完成一次——后续部署可由任何具有部署权限的用户创建。 </aside>
1. 为部署指定名称。 1. 指定所需的 **Git 分支**。部署与分支关联。当创建新版本时,关联分支的代码将被部署。分支可在后续的 部署设置. 1. 指定 LangGraph API 配置文件 的完整路径,包括文件名。例如,如果文件 langgraph.json 位于仓库根目录,请指定 langgraph.json. 1. 使用复选框 **在推送到分支时自动更新部署**。如果选中,当更改推送到指定的 **Git 分支**时,部署将自动更新。您可以在 部署设置 in 中启用或禁用此设置. 对于 **部署类型**: - 开发部署适用于非生产用例,并使用最少资源进行配置。 - Production deployments can serve up to 500 requests/second and are provisioned with highly available storage with automatic backups. 1. 确定部署是否应该 **通过 Studio 共享**. 1. 如果未选中,部署仅可通过 工作区. 1. 如果选中,部署可通过 Studio 供任何 LangSmith 用户访问。将提供指向 Studio 部署的直接 URL 以与其他 LangSmith 用户共享。 1. 指定 **环境变量** 和密钥。如需为部署配置其他变量,请参阅 环境变量参考. 1. 敏感值(如 API 密钥(例如, OPENAI_API_KEY)应指定为密钥。 1. 也可以指定其他非敏感环境变量。 1. 新的 LangSmith 追踪项目 将自动创建,与部署同名。 1. 在右上角,选择 **提交**。几秒钟后, **部署** 视图出现,新部署将排队等待配置。
LangGraph CLI
1. 安装 LangGraph CLI:
uv tool install langgraph-cli
1. 将您的 LangSmith API 密钥添加到项目根目录的 .env 文件中:
LANGSMITH_API_KEY=lsv2_...
1. 从项目目录运行部署命令:
langgraph deploy
这将创建一个 dev 部署,其名称与项目目录同名。使用 --name 可指定不同的名称,或使用 --deployment-type prod 进行生产部署:
langgraph deploy --name my-agent --deployment-type prod
命令完成后,部署将进入配置队列。可以通过 LangSmith UI 在部署创建后管理环境变量,或在您的 env 文件的 langgraph.json.
创建新修订版本
当 创建新部署时,默认会创建新修订版本。您可以创建后续修订版本来部署新的代码更改。
LangSmith UI
从 LangSmith UI开始,选择 **部署** 在左侧导航面板中。选择现有部署以创建新修订版本。
1. 在 **部署** 视图的右上角,选择 **+ 新修订版本**. 1. 在 **新修订版本** 模态框中填写必填字段。 1. 指定 API 配置文件 的完整路径(包括文件名)。例如,如果文件 langgraph.json 位于仓库根目录,请指定 langgraph.json. 1. 确定部署是否应该 **通过 Studio 分享**. - 如果未选中,部署将只能通过工作区的有效 LangSmith API 密钥访问 如果选中,部署将可通过. - Studio 供任何 LangSmith 用户访问。将提供部署的 Studio 直接 URL 以与其他 LangSmith 用户分享。 指定 1. 环境变量 **和环境变量** 。现有密钥和环境变量会预填充。如需为修订版本配置其他变量,请参阅 环境变量参考. 1. 添加新的密钥或环境变量。 1. 删除现有的密钥或环境变量。 1. 更新现有密钥或环境变量的值。 1. 选择 **提交**。几秒钟后, **新修订版本** 模态框将关闭,新修订版本将进入部署队列。
LangGraph CLI
Re-run langgraph deploy 在您的项目目录中运行此命令。该命令通过名称查找现有部署,并使用您的最新代码更改创建新版本:
langgraph deploy
要通过 ID 而不是名称来定位特定部署,请使用 --deployment-id:
langgraph deploy --deployment-id
使用 langgraph deploy list 查看所有部署并查找其 ID:
langgraph deploy list
查看构建和服务器日志
每个版本都提供构建和服务器日志。
LangSmith UI
从以下位置开始: **部署** view:
1. 从以下位置选择所需版本: **版本** 表格。一个面板从右侧滑开, **构建** 标签页默认选中,显示该版本的构建日志。 1. 在该面板中,选择 **服务器** 标签页以查看该版本的服务器日志。服务器日志仅在版本部署后才可用。 1. 在 **服务器** tab, adjust the date/time range picker as needed. By default, the date/time range picker is set to the **最近7天**.
LangGraph CLI
使用 langgraph deploy logs 来获取部署的日志。
查看服务器(运行时)日志:
langgraph deploy logs
查看构建日志:
langgraph deploy logs --type build
持续跟踪实时日志:
langgraph deploy logs --follow
按时间范围、日志级别或搜索字符串过滤日志:
langgraph deploy logs --start-time 2026-03-01T00:00:00Z --level ERROR
如果有多个部署,请按名称或 ID 指定目标:
langgraph deploy logs --name my-agent
langgraph deploy logs --deployment-id
有关所有可用选项,请参阅 deploy logs CLI 参考.
查看部署指标
部署上线后,您可以从中监控其性能 LangSmith UI.
从 LangSmith UI 开始:
- 在左侧导航面板中,选择 **部署**.
- 选择一个现有部署进行监控。
- 选择 **监控** 标签页查看部署指标。请参阅 所有可用指标.
- 在 **监控** tab, use the date/time range picker as needed. By default, the date/time range picker is set to the **最近15分钟**.
中断版本
中断版本将停止该版本的部署。
从以下位置开始: **部署** view:
- 选择所需修订版本所在行右侧的菜单图标(三个点) **修订版本** table.
- 选择 **中断** 从菜单中。
- 将出现一个弹窗。查看确认消息。选择 **中断修订版本**.
删除部署
LangSmith UI
从 LangSmith UI:
1. 在左侧导航面板中,选择 **部署**,其中包含现有部署的列表。 1. 选择所需部署所在行右侧的菜单图标(三个点),然后选择 **删除**. 1. A **确认** 弹窗将出现。选择 **删除**.
LangGraph CLI
使用 langgraph deploy list 查找要删除的部署的 ID:
langgraph deploy list
然后按 ID 删除:
langgraph deploy delete
要跳过确认提示,请使用 --force:
langgraph deploy delete --force
部署设置
从 **部署** view:
- 在右上角,选择齿轮图标(**部署设置**).
- 更新
Git Branch到所需的分支。 - Check/uncheck checkbox to **推送到分支时自动更新部署**.
- Branch creation/deletion and tag creation/deletion events will not trigger an update. Only pushes to an existing branch will trigger an update.
- 连续快速推送到分支会排队后续更新。构建完成后,最近的提交将开始构建,其他排队的构建将被跳过。
添加或删除 GitHub 仓库
安装并授权 LangChain 的 hosted-langserve GitHub 应用后,可以修改该应用的仓库访问权限以添加新仓库或删除现有仓库。如果创建了新仓库,可能需要显式添加。
- 从 GitHub 个人资料,导航到 **设置** > **应用** >
hosted-langserve> 点击 **配置**. - 在 **仓库访问**下,选择 **所有仓库** or **仅选择仓库**. If **仅选择仓库** 被选中时,必须显式添加新仓库。
- 点击 **保存**.
- 创建新部署时,下拉菜单中的 GitHub 仓库列表将更新以反映仓库访问权限的更改。
IP 地址白名单
2025 年 1 月 6 日之后创建的 LangSmith 部署的所有流量都将通过 NAT 网关。 此 NAT 网关将根据您部署的区域拥有多个静态 IP 地址。请参阅下表以获取需要加入白名单的 IP 地址列表:
| GCP 美国 | GCP 欧盟 | GCP 亚太 | AWS 美国 |
|---|---|---|---|
| 35.197.29.146 | 34.90.213.236 | 34.40.236.16 | 3.13.80.97 |
| 34.145.102.123 | 34.13.244.114 | 34.40.140.88 | 3.146.216.198 |
| 34.169.45.153 | 34.32.180.189 | 34.151.88.209 | 16.59.72.244 |
| 34.82.222.17 | 34.34.69.108 | 35.189.51.120 | |
| 35.227.171.135 | 34.32.145.240 | 34.40.172.39 | |
| 34.169.88.30 | 34.90.157.44 | 35.189.56.87 | |
| 34.19.93.202 | 34.141.242.180 | 35.189.17.201 | |
| 34.19.34.50 | 34.32.141.108 | 35.244.99.196 | |
| 34.59.244.194 | 34.12.178.175 | 34.40.149.177 | |
| 34.9.99.224 | 34.91.192.230 | 34.40.144.104 | |
| 34.68.27.146 | 34.32.209.237 | 34.151.130.182 | |
| 34.41.178.137 | 34.178.128.69 | 34.116.82.199 | |
| 34.123.151.210 | |||
| 34.135.61.140 | |||
| 34.121.166.52 | |||
| 34.31.121.70 |