Skip to content

自托管 LangSmith 是企业版计划的附加功能,专为我们规模最大、最注重安全的客户设计。详情请参阅我们的定价页面,如果您希望获取许可证密钥以在您的环境中试用 LangSmith,请联系我们的销售团队

本指南提供了使用 Docker 在本地运行 LangSmith 平台 以进行开发和测试的说明。

仅用于开发/测试。请勿在生产环境中使用 Docker Compose。对于生产部署,请使用 Kubernetes

本页描述了如何安装基础的 LangSmith 平台 以进行本地测试。它包含部署管理功能。更多详情,请查看自托管选项

请注意,Docker Compose 仅限于本地开发环境,不支持扩展到容器服务,例如 AWS Elastic Container Service、Azure Container Instances 和 Google Cloud Run。

先决条件

  1. 确保您的系统上已安装并运行 Docker。您可以通过运行以下命令来验证:
bash
docker info

如果在输出中没有看到任何服务器信息,请确保 Docker 已正确安装并启动 Docker 守护进程。

1.  推荐:您的机器上至少有 4 个 vCPU 和 16GB 可用内存。
  • 您可能需要根据组织规模/使用情况,为我们所有不同的服务调整资源请求/限制。 2. 磁盘空间:LangSmith 可能需要大量磁盘空间。请确保您有足够的可用磁盘空间。
  1. LangSmith 许可证密钥

    1. 您可以从您的 LangChain 代表处获取。更多信息,请联系我们的销售团队
  2. Api Key Salt

    1. 这是一个您可以生成的密钥。它应该是一个随机的字符串。
    2. 您可以使用以下命令生成:
bash
openssl rand -base64 32
  1. 出站连接到 https://beacon.langchain.com(如果未在离线模式下运行)

    1. LangSmith 需要出站连接到 https://beacon.langchain.com 以进行许可证验证和使用情况报告。这是 LangSmith 正常运行所必需的。您可以在出站连接部分找到有关出站连接要求的更多信息。
  2. 配置

    1. 您可以在 .env 文件中设置多个配置选项。有关可用配置选项的更多信息,请参阅配置部分。

通过 Docker Compose 运行

以下说明如何使用 Docker Compose 运行 LangSmith。这是在无需 Kubernetes 的情况下运行 LangSmith 最灵活的方式。Docker Compose 的默认配置仅用于本地测试,不适用于任何服务暴露在公共互联网上的情况。在生产环境中,我们强烈建议使用安全的 Kubernetes 环境。

1. 获取 LangSmith 的 docker-compose.yml 文件

您可以在 LangSmith SDK 仓库中找到 docker-compose.yml 文件及相关文件:LangSmith Docker Compose 文件

docker-compose.yml 文件以及该目录中的所有文件从 LangSmith SDK 复制到您的项目目录。

  • 确保也复制 users.xml 文件。

2. 配置环境变量

  1. .env.example 文件从 LangSmith SDK 复制到您的项目目录,并将其重命名为 .env
  2. .env 文件中配置适当的值。您可以在配置部分找到可用的配置选项。

您也可以直接在 docker-compose.yml 文件中设置这些环境变量,或在终端中导出它们。我们建议在 .env 文件中进行设置。

3. 启动服务器

在终端中执行以下命令以启动 LangSmith 应用程序:

bash
docker-compose up

您也可以通过运行以下命令在后台运行服务器:

bash
docker-compose up -d

验证您的部署:

  1. cli-langchain-frontend-1 容器暴露的端口执行 curl 命令:
bash
curl localhost:1980/info{"version":"0.5.7","license_expiration_time":"2033-05-20T20:08:06","batch_ingest_config":{"scale_up_qsize_trigger":1000,"scale_up_nthreads_limit":16,"scale_down_nempty_trigger":4,"size_limit":100,"size_limit_bytes":20971520}}
  1. 在浏览器中访问 cli-langchain-frontend-1 容器暴露的端口

LangSmith UI 应该在 http://localhost:1980 可见/可操作。

.langsmithui.png

检查日志

如果您想随时检查服务器是否正在运行并查看日志,请运行:

bash
docker-compose logs

停止服务器

bash
docker-compose down

使用 LangSmith

现在 LangSmith 正在运行,您可以开始使用它来追踪您的代码。有关如何使用自托管 LangSmith 的更多信息,请参阅自托管使用指南

您的 LangSmith 实例现在正在运行,但可能尚未完全设置。

如果您使用了基本配置之一,您可能部署了一个无身份验证的配置。在此状态下,没有身份验证或用户账户的概念,也没有 API 密钥,只要主机名传递给 LangChain 追踪器/LangSmith SDK,就可以在没有 API 密钥的情况下直接提交追踪。

作为下一步,强烈建议您与您的基础设施管理员合作:

  • 为您的 LangSmith 实例设置 DNS,以便更轻松地访问。
  • 配置 SSL 以确保提交给 LangSmith 的追踪数据在传输过程中加密。
  • 为您的 LangSmith 实例配置 OAuth 身份验证基本身份验证 以增强安全性。
  • 保护对 Docker 环境的访问,仅允许访问 LangSmith 前端和 API。
  • 将 LangSmith 连接到安全的 Postgres 和 Redis 实例。

LangChain 中文文档