- 在高追踪环境中,输入、输出、错误、清单、附加信息和事件可能会使您的数据库大小急剧膨胀。
- 如果您使用的是 LangSmith 托管 ClickHouse,您可能希望将敏感信息存储在您环境内的 Blob 存储中。为了解决这个问题,LangSmith 支持将运行的输入、输出、错误、清单、附加信息、事件和附件存储在外部 Blob 存储系统中。
要求
Azure Blob 存储在 Helm Chart 版本 0.8.9 及更高版本中可用。删除追踪项目 在 Azure 中从 Helm Chart 版本 0.10.43 开始支持。原生 GCS Blob 存储引擎支持(使用
engine: "GCS")在 Helm Chart 版本 0.13.29 及更高版本中可用。对于早期版本,GCS 通过 S3 兼容的 API 支持,需设置 engine: "S3" 并使用 HMAC 凭证。- 访问一个有效的 Blob 存储服务
-
Blob 存储中用于存储数据的桶/目录。我们强烈建议为 LangSmith 数据创建一个单独的桶/目录。
- 如果您正在使用 TTL,您将需要设置生命周期策略来删除旧数据。有关更多信息,请参阅配置 TTL。这些策略应与您在 LangSmith 配置中设置的 TTL 相匹配,否则您可能会遇到数据丢失。请参阅 Blob 存储的 TTL 配置 了解如何设置生命周期规则。
-
允许 LangSmith 服务访问桶/目录的凭证
- 您需要为您的 LangSmith 实例提供访问桶/目录所需的凭证。请阅读下面的认证部分以获取更多信息。
-
如果使用 S3 或 GCS,需要一个用于您的 Blob 存储服务的 API URL
- 这将是 LangSmith 用于访问您的 Blob 存储系统的 URL
- 对于 Amazon S3,这将是 S3 端点的 URL。类似于:
https://s3.amazonaws.com或https://s3.us-west-1.amazonaws.com(如果使用区域端点)。 - 对于 Google Cloud Storage,这将是 GCS 端点的 URL。类似于:
https://storage.googleapis.com
认证
- AWS
- GCP
- Azure
Amazon S3
要向 Amazon S3 进行认证,您需要创建一个 IAM 策略,授予以下对您桶的权限。-
IAM Roles for Service Accounts (IRSA)(推荐):您可以为您的 LangSmith 实例创建一个 IAM 角色并将该策略附加到该角色。这是在生产环境中向 Amazon S3 认证的推荐方式。
- 您需要创建一个附加了该策略的 IAM 角色。
- 您需要允许 LangSmith 服务账户承担该角色。
langsmith-queue、langsmith-backend、langsmith-platform-backend和langsmith-ingest-queue服务账户需要能够承担该角色。 - 您需要将角色 ARN 提供给 LangSmith。您可以通过在 Helm Chart 安装中为
queue、backend、platform-backend和ingest-queue服务添加eks.amazonaws.com/role-arn: "<role_arn>"注释来实现。
-
Access Key and Secret Key:您可以向 LangSmith 提供访问密钥和秘密密钥。这是向 Amazon S3 认证的最简单方式。但是,由于安全性较低,不建议在生产中使用。
- 您需要创建一个附加了该策略的用户。然后您可以为该用户配置访问密钥和秘密密钥。
-
VPC Endpoint Access:您可以通过 VPC 端点启用对 S3 桶的访问,这允许流量安全地从您的 VPC 流向您的 S3 桶。
- 您需要配置一个 VPC 端点并将其设置为允许访问您的 S3 桶。
- 您可以参考我们的公共 Terraform 模块获取配置指导和示例。
KMS 加密头支持
从 LangSmith Helm Chart 版本 0.11.24 开始,您可以通过提供其 ARN 来传递 KMS 加密密钥头并强制写入时使用特定的 KMS 密钥。要启用此功能,请在您的 Helm Chart 中设置以下值:CH 搜索
默认情况下,LangSmith 仍将用于搜索的 token 存储在 ClickHouse 中。如果您使用的是 LangSmith 托管 ClickHouse,您可能希望禁用此功能,以避免将潜在敏感信息发送到 ClickHouse。您可以在 Blob 存储配置中执行此操作。配置
创建桶并获取必要的凭证后,您可以配置 LangSmith 以使用您的 Blob 存储系统。Helm
如果使用访问密钥和秘密,您也可以提供一个包含认证信息的现有 Kubernetes 密钥。建议这样做,而不是在配置中直接提供访问密钥和秘密密钥。有关预期的密钥名称,请参阅生成的密钥模板。
TTL 配置
如果将 TTL 功能与 LangSmith 一起使用,您还需要为您的 Blob 存储配置 TTL 规则。存储在 Blob 存储上的追踪信息存储在特定的前缀路径下,该路径决定了数据的 TTL。当一个追踪的保留期被延长时,其相应的 Blob 存储路径会改变,以确保它与新的延长保留期匹配。 使用以下 TTL 前缀:ttl_s/:短期(基础)TTL,配置为 14 天。ttl_l/:长期(扩展)TTL,默认配置为 400 天。
自定义工作区级别保留前缀
如果您使用工作区级别扩展保留,LangSmith 会将 Blob 数据写入格式为ttl_XXd/ 的前缀,其中 XX 是为该工作区配置的天数。例如,如果一个工作区配置了 90 天的扩展保留,则该工作区的 Blob 数据将写入 ttl_90d/ 前缀。
您必须为跨工作区配置的每个自定义保留期限创建一个生命周期规则。常见示例:
ttl_90d/— 90 天保留ttl_180d/— 180 天保留ttl_365d/— 365 天保留
ttl_s 和 ttl_l 规则之外添加以下生命周期规则:
- AWS
- GCP
- Azure
- AWS
- GCP
- Azure
Connect these docs to Claude, VSCode, and more via MCP for real-time answers.

