在继续本指南之前,请阅读 LangSmith 架构概览 和 连接到外部 ClickHouse 的指南。
架构概览
将 LangSmith 托管的 ClickHouse 与您的自托管 LangSmith 实例一起使用的架构与使用完全自托管的 ClickHouse 实例类似,但有一些关键区别:- 您需要在 LangSmith 实例和 LangSmith 托管的 ClickHouse 实例之间建立私有网络连接。这是为了确保您的数据安全,并且您可以从自托管的 LangSmith 实例连接到 ClickHouse 实例。
- 使用此选项,您的轨迹的敏感信息(输入和输出)将存储在您云中的云对象存储(S3 或 GCS)中,而不是 ClickHouse 中,以确保敏感信息不会离开您的 VPC。有关特定数据字段存储位置的更多详细信息,请参阅 数据存储。
- LangSmith 团队将监控您的 ClickHouse 实例,并确保其平稳运行。这使我们能够跟踪运行摄取延迟和查询性能等指标。

要求
- 您必须使用受支持的 Blob 存储选项。有关详细信息,请阅读 Blob 存储指南。
- 要使用私有端点,请确保您的 VPC 位于 ClickHouse Cloud 支持的 区域。否则,您将需要使用我们将通过防火墙规则保护的公共端点。您的 VPC 将需要一个 NAT 网关,以允许我们列出您的流量。
- 您必须拥有一个可以连接到 LangSmith 托管的 ClickHouse 服务的 VPC。您需要与我们的团队合作设置必要的网络。
- 您必须运行 LangSmith 自托管实例。您可以将我们的托管 ClickHouse 服务与 Kubernetes 和 Docker 安装一起使用。
数据存储
ClickHouse 存储 **运行** 和 **反馈** 数据,具体如下:- 所有反馈数据字段。
- 某些运行数据字段。
inputs、outputs、errors、manifests、extras 和 events,因为这些字段可能包含 LLM 提示和补全。使用 LangSmith 托管的 ClickHouse,这些敏感字段存储在您云中的云对象存储(S3 或 GCS)中,而其余的运行数据存储在 ClickHouse 中,确保敏感信息永远不会离开您的 VPC。存储的反馈数据字段
由于所有反馈数据都存储在 ClickHouse 中,因此请勿在反馈(评分和注释/评论)或 存储的运行数据字段 中提及的任何其他运行字段中发送敏感信息。
| 字段名称 | 类型 | 描述 |
|---|---|---|
| id | UUID | 记录本身的唯一标识符 |
| created_at | datetime | 记录创建时的时间戳 |
| modified_at | datetime | 记录上次修改时的时间戳 |
| session_id | UUID | 运行所属的实验或跟踪项目的唯一标识符 |
| 运行 ID | UUID | 会话中特定运行的唯一标识符 |
| 键 | 字符串 | 描述反馈标准的键,例如“正确性” |
| 评分 | 数字 | 与反馈键关联的数值评分 |
| value | 字符串 | 保留用于存储与评分关联的值。对于分类反馈很有用。 |
| 评论 | 字符串 | 与记录关联的任何评论或注释。这可以是给定评分的理由。 |
| 修正 | 对象 | 保留用于存储修正详细信息(如果有) |
| 反馈来源 | 对象 | 包含反馈来源信息的对象 |
| 反馈来源.类型 | 字符串 | 反馈来源的类型,例如“api”、“app”、“评估者” |
| 反馈来源.元数据 | 对象 | 保留用于附加元数据,目前 |
| 反馈来源.用户 ID | UUID | 提供反馈的用户的唯一标识符 |
存储的运行数据字段
运行数据字段在托管的 ClickHouse 数据库和您的云对象存储(例如 S3 或 GCS)之间拆分。对于存储在对象存储中的运行字段,ClickHouse 中仅保留引用或指针。例如,
inputs 和 outputs 内容被卸载到 S3/GCS,ClickHouse 记录在 inputs_s3_urls 和 outputs_s3_urls 字段中存储相应的 S3 URL。| 字段 | 存储位置 |
|---|---|
id | ClickHouse |
名称 | ClickHouse |
输入 | 对象存储 |
run_type | ClickHouse |
开始时间 | ClickHouse |
结束时间 | ClickHouse |
额外信息 | 对象存储 |
错误 | 对象存储 |
输出 | 对象存储 |
events | 对象存储 |
tags | ClickHouse |
trace_id | ClickHouse |
点序 | ClickHouse |
状态 | ClickHouse |
子运行 ID | ClickHouse |
直接子运行 ID | ClickHouse |
父运行 ID | ClickHouse |
反馈统计 | ClickHouse |
reference_example_id | ClickHouse |
总令牌 | ClickHouse |
提示令牌 | ClickHouse |
补全令牌 | ClickHouse |
总成本 | ClickHouse |
提示成本 | ClickHouse |
补全成本 | ClickHouse |
首个令牌时间 | ClickHouse |
session_id | ClickHouse |
在数据集中 | ClickHouse |
parent_run_id | ClickHouse |
执行顺序(已弃用) | ClickHouse |
序列化 | ClickHouse |
清单 ID(已弃用) | ClickHouse |
清单 S3 ID | ClickHouse |
输入 S3 URL | ClickHouse |
输出 S3 URL | ClickHouse |
价格模型 ID | ClickHouse |
应用程序路径 | ClickHouse |
上次排队时间 | ClickHouse |
共享令牌 | ClickHouse |
以编程方式连接这些文档到 Claude、VSCode 等,通过 MCP 获取实时答案。
