Skip to content
LangSmith 文档版本 跟随上游 源快照 f56fb8d5 更新于 2026-10-18

追踪 Pi coding agent 会话

将 Pi coding agent 的调用追踪到 LangSmith,以观察轮次、调试工具调用、跟踪 token 用量,并检查单次 LLM 调用。

本指南展示如何使用 @langchain/langsmith-pi-extension 扩展将 Pi coding agent 会话追踪到 LangSmith。

配置完成后,每个 Pi 会话都会向 LangSmith 发送追踪。每条追踪包含用户消息、助手响应、工具调用和单次 LLM 调用,让你对 Pi coding agent 的运行拥有完整的可观测性。

前置条件

在设置追踪之前,请确保你具备:

安装

通过 Pi 安装该扩展:

sh
pi install npm:@langchain/langsmith-pi-extension

快速开始

追踪默认处于禁用状态。设置以下环境变量以启用追踪并连接到你的 LangSmith 账号:

sh
export TRACE_TO_LANGSMITH=true
export LANGSMITH_PI_API_KEY="<your-langsmith-api-key>"

照常运行 Pi。当会话启动时,扩展会报告 LangSmith 追踪是否已启用。你也可以随时在 Pi 中检查当前追踪状态:

text
/langsmith-tracing

默认情况下,追踪会写入 pi-coding-agent LangSmith 项目。

配置

配置可以来自环境变量或 JSON 配置文件。数值按以下顺序合并,靠后的来源优先:

  1. 默认值
  2. ~/.pi/langsmith.json(全局配置)
  3. <current-working-directory>/.pi/langsmith.json(项目配置)
  4. 环境变量

环境变量

变量说明
TRACE_TO_LANGSMITH设为 true、1、yes 或 on 时启用追踪。设为 false、0、no 或 off 时禁用追踪。
LANGSMITH_PI_API_KEYLangSmith API key。回退到 LANGSMITH_API_KEY。
LANGSMITH_PI_ENDPOINT用于自托管或自定义部署的 LangSmith API URL。回退到 LANGSMITH_ENDPOINT。
LANGSMITH_PI_PROJECTLangSmith 项目名称。回退到 LANGSMITH_PROJECT。默认为 pi-coding-agent。
LANGSMITH_PI_METADATA添加到根 run 元数据的 JSON 对象。回退到 LANGSMITH_METADATA。
LANGSMITH_PI_RUNS_ENDPOINTS副本 run 目的地的 JSON 数组。回退到 LANGSMITH_RUNS_ENDPOINTS。

示例:

sh
export TRACE_TO_LANGSMITH=true
export LANGSMITH_PI_API_KEY="<your-langsmith-api-key>"
export LANGSMITH_PI_PROJECT="pi-coding-agent-dev"
export LANGSMITH_PI_METADATA='{"team":"infra","environment":"local"}'

配置文件

创建 ~/.pi/langsmith.json 作为全局设置,或在项目目录中创建 .pi/langsmith.json 作为本地覆盖:

json
{
  "enabled": true,
  "api_key": "<your-langsmith-api-key>",
  "api_url": "https://api.smith.langchain.com",
  "project": "pi-coding-agent",
  "metadata": { "environment": "local" }
}

配置文件字段:

字段必需默认值说明
enabled是false设为 true 以从配置文件启用追踪。
api_key否*—LangSmith API key。除非由环境变量或副本提供,否则必需。
api_url否LangSmith SDK 默认值LangSmith API URL,通常为 https://api.smith.langchain.com。
project否pi-coding-agentLangSmith 项目名称。
metadata否—合并到根追踪元数据的对象。
replicas否—要将追踪复制到的其他 LangSmith 目的地的数组。

副本(Replicas)

使用 replicas 可以同时将追踪发送到多个 LangSmith 目的地。这适用于将追踪同时转发到个人工作区和共享团队项目,或同时发送到自托管 LangSmith 实例和云端。

json
{
  "enabled": true,
  "api_key": "<primary-api-key>",
  "project": "pi-coding-agent",
  "replicas": [
    {
      "api_key": "<replica-api-key>",
      "api_url": "https://replica-langsmith.example.com",
      "project": "pi-coding-agent-replica",
      "updates": {
        "tags": ["replica"]
      }
    }
  ]
}

每个副本条目都可以包含 updates 对象,用于覆盖副本 run 的元数据或标签。


BytesRouter 是社区翻译站点,所有译文仅供参考,一切以官方英文原文为准。