使用 Docker 自托管 LangSmith
自托管 LangSmith 是 Enterprise Plan 的一个附加组件,专为我们规模最大、安全性最强的客户而设计。有关更多详细信息,请参阅我们的定价页面,如果您想获取许可证密钥以在您的环境中试用 LangSmith,请通过 sales@langchain.dev 联系我们。
本指南提供了有关安装和设置环境以使用 Docker 在本地运行 LangSmith 的说明。您可以使用 LangSmith SDK 或直接使用 Docker Compose 来执行此作。
先决条件
- 确保您的系统已安装并运行 Docker。您可以通过运行以下命令来验证这一点:
如果您在输出中没有看到任何服务器信息,请确保 Docker 安装正确并启动 Docker 守护程序。
docker info- 建议:您的计算机上至少有 4 个 vCPU、16GB 可用内存。
- 您可能需要根据组织规模/使用情况调整我们所有不同服务的资源请求/限制
- 磁盘空间:LangSmith 可能需要大量磁盘空间。确保您有足够的可用磁盘空间。
- 建议:您的计算机上至少有 4 个 vCPU、16GB 可用内存。
- LangSmith 许可证密钥
- 您可以从您的 Langchain 代表处获取。有关更多信息,请通过 sales@langchain.dev 联系我们。
- Api Key 盐
- 这是您可以生成的密钥。它应该是一个随机的字符串。
- 您可以使用以下命令生成此函数:
openssl rand -base64 32 - 出口
https://beacon.langchain.com(如果不在离线模式下运行)- LangSmith 需要 egress 到
https://beacon.langchain.com用于许可证验证和使用情况报告。这是 LangSmith 正常运行所必需的。您可以在 Egress 部分找到有关 egress 要求的更多信息。
- LangSmith 需要 egress 到
- 配置
- 您可以在
.env文件。您可以在 Configuration 部分找到有关可用配置选项的更多信息。
- 您可以在
通过 Docker Compose 运行
下面介绍了如何使用 Docker Compose 运行 LangSmith。这是在没有 Kubernetes 的情况下运行 LangSmith 的最灵活方式。Docker Compose 的默认配置仅用于本地测试,不适用于任何服务公开到公共 Internet 的实例。在生产环境中,我们强烈建议使用安全的 Kubernetes 环境。
1. 获取 LangSmithdocker-compose.yml文件
您可以找到docker-compose.yml文件和相关文件,位于 LangSmith SDK 存储库中:LangSmith Docker Compose 文件
复制docker-compose.yml文件以及该目录中的所有文件(从 LangSmith SDK 到您的项目目录)。
- 确保将
users.xml文件。
2. 配置环境变量
- 复制
.env.example文件从 LangSmith SDK 添加到您的项目目录中,并将其重命名为.env. - 在
.env文件。您可以在 Configuration 部分找到可用的配置选项。
您还可以在docker-compose.yml文件或将它们导出到您的终端中。我们建议在.env文件。
2. 启动服务器
通过在终端中执行以下命令来启动 LangSmith 应用程序:
docker-compose up
您还可以通过运行以下命令在后台运行服务器:
docker-compose up -d
验证您的部署:
-
卷曲
cli-langchain-frontend-1容器: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}} -
访问
cli-langchain-frontend-1浏览器上的 ContainerLangsmith UI 应在
http://localhost:1980
检查日志
如果您在任何时候想要检查服务器是否正在运行并查看日志,请运行
docker-compose logs
停止服务器
docker-compose down
使用 LangSmith
现在 LangSmith 正在运行,您可以开始使用它来跟踪您的代码。您可以在自托管使用指南中找到有关如何使用自托管 LangSmith 的更多信息。
您的 LangSmith 实例现在正在运行,但可能尚未完全设置。
如果您使用了其中一个基本配置,则可能已部署了无身份验证配置。 在这种状态下,没有身份验证或用户帐户的概念,只要将主机名传递给 LangChain tracer/LangSmith SDK,就可以在没有 API 密钥的情况下直接提交 API 密钥和跟踪。
下一步,强烈建议您与基础设施管理员合作:
- 为您的 LangSmith 实例设置 DNS 以实现更轻松的访问
- 配置 SSL 以确保对提交给 LangSmith 的跟踪进行传输中加密
- 配置 LangSmith 以进行 oauth 身份验证或基本身份验证,以保护您的 LangSmith 实例
- 安全访问 Docker 环境,以限制仅对 LangSmith 前端和 API 的访问
- 将 LangSmith 连接到受保护的 Postgres 和 Redis 实例