Skip to main content

由LangSmith管理的ClickHouse

推荐阅读

请在继续本指南之前,先阅读LangSmith 架构概述以及连接外部 ClickHouse 的指南

如先前指南所述,LangSmith 使用 ClickHouse 作为 追踪数据(traces)反馈数据(feedback) 的主要存储引擎。 为便于管理和扩展,建议将自托管的 LangSmith 实例连接至外部 ClickHouse 实例。LangSmith 托管的 ClickHouse 是一种可选方案,它允许您使用由 LangSmith 团队监控和维护的全托管 ClickHouse 实例。

架构概览

在自托管的 LangSmith 实例中使用 LangSmith 托管的 ClickHouse 相当简单。整体架构与完全自托管的 ClickHouse 实例类似,但存在若干关键差异:

  • 您需要在您的 LangSmith 实例与 LangSmith 托管的 ClickHouse 实例之间建立私有网络连接。此举旨在确保您的数据安全,并使您的自托管 LangSmith 实例能够连接到该 ClickHouse 实例。
  • 启用此选项后,您追踪记录中的敏感信息(输入和输出)将存储在您云环境内的云对象存储(S3 或 GCS)中,而非 ClickHouse,从而确保敏感信息不会离开您的 VPC。
关于敏感信息的更多信息

ClickHouse 存储运行记录反馈数据。

参考文档介绍了我们用于存储反馈的格式,即LangSmith表示运行(runs)评估分数和标注的方式。 此参考文档介绍了我们用于存储运行(spans)的格式,这些运行是追踪(traces)的基本构成单元。

我们对应用程序数据中敏感信息的定义,是指一次运行(run)中的inputsoutputserrorsmanifestsextrasevents字段,因为这些字段可能包含来自大语言模型(LLM)的提示词(prompts)和生成结果(completions)。

借助 LangSmith 托管的 ClickHouse,我们将 inputsoutputserrorsmanifestsextrasevents 存储在您云环境中的云对象存储(S3 或 GCS)中,其余运行数据则存储在 ClickHouse 中。这确保了敏感信息不会离开您的 VPC。

请注意,所有反馈数据均存储在 ClickHouse 中。请勿在反馈(评分及标注/评论)或上述提到的任何其他运行字段中发送敏感信息。

  • LangSmith 团队将监控您的 ClickHouse 实例,确保其平稳运行。这使我们能够跟踪运行数据摄入延迟和查询性能等指标。

整体架构如下所示:

LangSmith Managed ClickHouse Architecture

要求

  • 您必须使用受支持的 Blob 存储选项。 有关详细信息,请参阅 Blob 存储指南
  • 如需使用私有端点,请确保您的 VPC 位于 ClickHouse Cloud 支持的区域内。否则,您需要使用公共端点,我们将通过防火墙规则对其进行保护。您的 VPC 需要配置 NAT 网关,以便我们能够将您的流量加入白名单。
  • 您必须拥有一个能够连接到 LangSmith 托管的 ClickHouse 服务的 VPC。您需要与我们的团队合作,设置必要的网络配置。
  • 您必须运行一个自托管的LangSmith实例。您可以使用我们托管的ClickHouse服务,并支持通过KubernetesDocker两种方式进行安装。

这个页面对你有帮助吗?


您可以留下详细的反馈 在 GitHub 上.