SuperAPI AI 工具集

langsmith traces

部署与运维

查看项目

更新于 10-16 17:20

技能介绍

用途 LangSmith Traces 技能用于两类工作:一是为应用程序添加 LangSmith 追踪,二是查询与导出 trace 数据。它帮助开发者获取完整的执行上下文,用于轨迹分析与数据集生成。

主要能力

  1. 追踪接入:对 LangChain/LangGraph 应用,追踪是自动的,只需设置环境变量,例如 LANGSMITH_TRACING=true、LANGSMITH_API_KEY 和对应 LLM 提供方的密钥,还可选设置 LANGSMITH_PROJECT 等项目变量;在 Python 服务端无服务器场景可用 LANGCHAIN_CALLBACKS_BACKGROUND=false 以确保函数退出前 trace 完成。
  2. 非 LangChain 应用接入:若框架原生支持 OpenTelemetry,可使用 LangSmith 的 OpenTelemetry 集成;若不使用框架或框架无自动 OTel 支持,则使用 traceable 装饰器/包装器并包装 LLM 客户端,例如 wrap_openai(OpenAI())。嵌套函数上应用 traceable 可让其在 LangSmith 中可见,被包装的客户端会自动记录每次 LLM 调用,建议为 trace 命名并添加元数据以便检索。
  3. 查询与导出:技能提供 Python 和 TypeScript 两套用法一致的命令行脚本,包含 traces 和 runs 两组命令。traces 组针对 trace 树,包括 list(列出 trace,过滤条件作用于根 run)、get(获取单个 trace 及其完整层级结构)、export(导出 trace 为 JSONL,每个 trace 一个文件)。runs 组针对单个 run,包括 list(平铺列表,过滤条件作用于任意匹配 run)、get、export(导出为单个平铺 JSONL 文件)。

使用方式(命令示例) Python 侧安装依赖:pip install langsmith click rich python-dotenv;TypeScript 侧安装:npm install langsmith commander chalk cli-table3 ora dotenv,以及开发依赖 tsx、typescript、@types/node。 常用命令包括:列出最近 trace 并附带元数据(耗时、token、成本),按时间过滤(--last-n-minutes、--since),获取指定 trace 的完整层级,列出并内联展示层级(--show-hierarchy),导出 trace 到 JSONL(--limit、--full),按性能过滤(--min-latency 可筛选慢 trace,--error 可筛选失败 trace),以及按 run 类型列出(如 --run-type llm)。脚本也可以配合 --project、--trace-ids、--name、--min-tokens、--tags 以及原始 LangSmith 过滤查询 --filter 使用。

适用场景 适用于需要为 LLM 应用建立可观测性、排查慢请求或失败请求、分析完整执行轨迹,以及从历史 trace 生成数据集的开发与运维场景。

限制与注意事项 资料未提供该技能的收费、价格、适用平台或效果承诺等信息。接入要求提供 LangSmith API Key;部分可选变量(如 LANGSMITH_PROJECT、LANGSMITH_WORKSPACE_ID)用于默认项目或组织级密钥场景。导出时需使用 --include-io 或 --full 才会包含输入/输出,而轨迹分析与数据集生成通常需要这些字段。