Skip to main content

概念

本概念指南涵盖了将追踪信息记录到 LangSmith 时需要理解的重要主题。“追踪(Trace)”本质上是应用程序从输入到输出所执行的一系列步骤。“运行(Run)”则代表其中的每一个单独步骤。“项目(Project)”仅是一组追踪信息的集合。下图在简单的 RAG 应用场景中展示了这些概念:该应用从索引中检索文档并生成答案。

LangSmith PrimitivesLangSmith Primitives

LangSmith 中的基本数据类型

运行

一个 Run 是一个表示大型语言模型(LLM)应用中单个工作单元或操作的跨度(span)。它可以是调用一次 LLM 或链(chain)、格式化一次提示词(prompt),或是执行一次可运行的 lambda 函数等任意操作。如果您熟悉 OpenTelemetry,可以将“run”理解为一个跨度(span)。

如需了解运行记录在应用程序中是如何存储的,请参阅此参考指南

Run

追踪

一个 Trace 是一组与单个操作相关的运行(run)。例如,如果一个用户请求触发了一条链(chain),而该链依次调用了大语言模型(LLM)、输出解析器(output parser)等,那么所有这些运行都属于同一条追踪(trace)。如果您熟悉 OpenTelemetry,可以将 LangSmith 中的追踪理解为一组跨度(span)。每个运行均通过唯一的追踪 ID 与某条追踪相关联。 Trace

项目

一个 Project 是一组追踪(traces)的集合。您可以将项目理解为用于存放与单个应用程序或服务相关的所有追踪的容器。您可以创建多个项目,且每个项目均可包含多条追踪。 Project

反馈

Feedback 允许您根据特定标准对单次运行进行评分。 每条反馈条目包含一个反馈标签和一个反馈分数,并通过唯一的运行 ID 与某次运行相关联。 当前,反馈可以是连续型或离散型(分类型),且您可以在同一组织内的不同运行中复用反馈标签。

收集有关运行的反馈可以通过多种方式进行:

  1. 随LLM应用的追踪信息一同发送(已发送)
  2. 由应用中的用户在内联方式或批注队列中生成
  3. 由自动评估器在离线评估期间生成
  4. 由一个 在线评估工具 生成

如需了解应用中反馈数据的存储方式,请参阅此参考指南

Feedback

标签

Tags 是可附加到运行(runs)上的字符串集合。它们用于对运行进行分类,以便在 LangSmith 用户界面中更轻松地搜索这些运行。标签可用于在 LangSmith 用户界面中筛选运行,也可用于将运行分组以进行分析。了解如何为您的追踪(traces)添加标签 Tags

元数据

Metadata 是一组可附加到运行(run)上的键值对。元数据可用于存储有关运行的额外信息,例如生成该运行的应用程序版本、运行所处的环境,或您希望与该运行关联的任何其他信息。 与标签类似,您可以使用元数据在 LangSmith 用户界面中筛选运行,也可用于将运行分组以便进行分析。了解如何为您的追踪添加元数据 Metadata

数据存储与保留

对于2024年5月22日(星期三)及之后接入的追踪数据,LangSmith(SaaS)将保留追踪数据,最长可达该追踪数据插入LangSmith追踪数据库的日期和时间起400天。

400 天后,追踪记录将从 LangSmith 中永久删除,仅保留少量元数据,用于展示历史使用量和成本等准确的统计信息。

笔记

如果您希望将追踪数据的保存时间延长至超过数据保留期限,可以将其添加到数据集(dataset)中。数据集允许您存储追踪的输入与输出(例如,以键值对形式存储),且数据将无限期持久化保存,即使对应的追踪记录已被删除。

从 LangSmith 中删除追踪记录

如果您希望在过期日期之前从 LangSmith 中移除某条追踪记录,LangSmith 支持通过删除项目的方式来删除追踪记录。

这可以通过以下方式实现:

  • 在 LangSmith 界面中,通过项目溢出菜单中的“删除”选项
  • 通过 删除追踪会话 API 端点
  • 通过 LangSmith SDK 中的 delete_project()(Python)或 deleteProject()(JS/TS)

LangSmith 目前不支持自助删除单个追踪记录。

如果您需要在 LangSmith 项目过期之前删除单个追踪记录(或一组追踪记录),请让您的账户所有者联系 LangSmith 支持团队,并提供您的组织 ID 和追踪记录 ID。


这个页面对你有帮助吗?


您可以留下详细的反馈 在 GitHub 上.