Skip to content

LangSmith UI 目前不支持删除单个追踪记录。不过,可以通过直接从 ClickHouse 的所有物化视图(runs_history 视图除外)以及 runs 和 feedback 表中移除该追踪记录来实现。

此命令可以使用追踪 ID 作为参数运行,也可以使用包含追踪 ID 列表的文件来运行。

前提条件

确保已准备好以下工具/项目。

  1. kubectl

  2. Clickhouse 数据库凭据

    • 主机
    • 端口
    • 用户名
  • 如果使用捆绑版本,用户名为 default
    • 密码
  • 如果使用捆绑版本,密码为 password
    • 数据库名称
  • 如果使用捆绑版本,数据库名为 default
  1. 从运行 delete_trace_by_id 脚本的机器到 Clickhouse 数据库的连接性。

    • 如果使用捆绑版本,可能需要将 clickhouse 服务端口转发到本地机器。
    • 运行 kubectl port-forward svc/langsmith-clickhouse 8123:8123 将 clickhouse 服务端口转发到本地机器。
  2. 用于删除追踪记录的脚本

    • 可以从此处下载该脚本

为单个追踪记录运行删除脚本

运行以下命令,使用单个追踪 ID 运行追踪删除脚本:

bash
sh delete_trace_by_id.sh <clickhouse_url> --trace_id <trace_id>

例如,如果使用带有端口转发的捆绑版本,命令将如下所示:

bash
sh delete_trace_by_id.sh "clickhouse://default:password@localhost:8123/default" --trace_id 4ec70ec7-0808-416a-b836-7100aeec934b

如果访问 LangSmith UI,现在应该会看到指定的追踪 ID 不再存在,也不会在统计信息中反映出来。

从文件(每行一个追踪 ID)中为多个追踪记录运行删除脚本

运行以下命令,使用追踪 ID 列表运行追踪删除脚本:

bash
sh delete_trace_by_id.sh <clickhouse_url> --file <path/to/foo.txt>

例如,如果使用带有端口转发的捆绑版本,命令将如下所示:

bash
sh delete_trace_by_id.sh "clickhouse://default:password@localhost:8123/default" --file path/to/traces.txt

如果访问 LangSmith UI,现在应该会看到所有指定的追踪记录都已被移除。

故障排除

"无法找到追踪 ID" 错误

如果收到错误消息提示无法找到追踪 ID,请在命令中添加 --ssl 标志。没有此标志,脚本可能无法正确连接到 ClickHouse,从而导致错误的"追踪 ID 未找到"错误。

使用 SSL 标志的示例:

bash
sh delete_trace_by_id.sh "clickhouse://default:password@localhost:8123/default" --file path/to/traces.txt --ssl

您也可以在运行删除脚本之前,通过使用 clickhouse-cli 直接连接到 ClickHouse 并查询追踪 ID 来验证追踪记录是否存在。

LangChain 中文文档