主题
LangSmith UI 目前不支持删除单个追踪记录。不过,可以通过直接从 ClickHouse 的所有物化视图(runs_history 视图除外)以及 runs 和 feedback 表中移除该追踪记录来实现。
此命令可以使用追踪 ID 作为参数运行,也可以使用包含追踪 ID 列表的文件来运行。
前提条件
确保已准备好以下工具/项目。
kubectl
Clickhouse 数据库凭据
- 主机
- 端口
- 用户名
- 如果使用捆绑版本,用户名为
default- 密码
- 如果使用捆绑版本,密码为
password- 数据库名称
- 如果使用捆绑版本,数据库名为
default
从运行
delete_trace_by_id脚本的机器到 Clickhouse 数据库的连接性。- 如果使用捆绑版本,可能需要将 clickhouse 服务端口转发到本地机器。
- 运行
kubectl port-forward svc/langsmith-clickhouse 8123:8123将 clickhouse 服务端口转发到本地机器。
用于删除追踪记录的脚本
- 可以从此处下载该脚本
为单个追踪记录运行删除脚本
运行以下命令,使用单个追踪 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 来验证追踪记录是否存在。