LangSmith Studio 提供了工具,用于在应用执行之外进行检查、调试和改进。通过使用踪迹、数据集和提示词,您可以详细了解应用程序的行为,衡量其性能并优化其输出:

迭代优化提示词

Studio 支持以下方法来修改图形中的提示词:

直接编辑节点

Studio 允许您直接从图形界面编辑单个节点内使用的提示词。

图形配置

使用 langgraph_nodes 和 langgraph_type 键定义您的配置,以指定提示词字段及其关联的节点。

langgraph_nodes

  • 描述:指定配置字段与图形中的哪些节点相关联。
  • 值类型:字符串数组,每个字符串是您图形中一个节点的名称。
  • 使用上下文:在 Pydantic 模型的 json_schema_extra 字典或 dataclasses 的 metadata["json_schema_extra"] 字典中包含。
  • 示例:

langgraph_type

  • 描述:指定配置字段的类型,这决定了它在 UI 中的处理方式。
  • 值类型:字符串
  • 支持的值:
    • "prompt":表示该字段包含提示词文本,应在 UI 中被特殊处理。
  • 使用上下文:在 Pydantic 模型的 json_schema_extra 字典或 dataclasses 的 metadata["json_schema_extra"] 字典中包含。
  • 示例:

在 UI 中编辑提示词

  1. 在具有关联配置字段的节点上找到齿轮图标。
  2. 点击打开配置模态框。
  3. 编辑值。
  4. 保存以更新当前助手版本或创建新版本。

Playground

Playground 界面允许在不运行完整图形的情况下测试单个 LLM 调用:
  1. 选择一个线程。
  2. 在节点上点击 查看 LLM 运行。这会列出该节点内进行的所有 LLM 调用(如果有)。
  3. 选择一个 LLM 运行记录以在 Playground 中打开。
  4. 修改提示词并测试不同的模型和工具设置。
  5. 将更新后的提示词复制回您的图形。

在数据集上运行实验

Studio 允许您通过针对预定义的 LangSmith 数据集执行助手来运行评估。这使您能够在各种输入上测试性能,将输出与参考答案进行比较,并使用配置的评估器对结果评分。 本指南向您展示如何直接从 Studio 运行完整的端到端实验。

前提条件

在运行实验之前,请确保您具备以下条件:
  • 一个 LangSmith 数据集:您的数据集应包含您想要测试的输入,并且可选地,包含用于比较的参考输出。输入的模式必须与助手所需的输入模式匹配。有关模式的更多信息,请参阅图形 API 模式文档。有关创建数据集的更多信息,请参阅如何管理数据集。
  • (可选) 评估器:您可以在 LangSmith 中将评估器(例如 LLM-as-a-Judge、启发式方法或自定义函数)附加到您的数据集。这些评估器将在图形处理完所有输入后自动运行。
  • 一个正在运行的应用程序:实验可以针对以下对象运行:
Studio 实验遵循与其他实验相同的数据保留规则。默认情况下,踪迹具有基础层保留期(14 天)。但是,如果向踪迹添加反馈,它们将自动升级到扩展层保留期(400 天)。可以通过两种方式之一添加反馈:

实验设置

  1. 启动实验。点击 Studio 页面右上角的 运行实验 按钮。
  2. 选择您的数据集。在出现的模态框中,选择要用于实验的数据集(或特定数据集拆分)并点击 开始。
  3. 监控进度。数据集中的所有输入现在将针对活动助手运行。通过右上角的徽章监控实验进度。
  4. 您可以在后台运行实验时继续在 Studio 中工作。随时点击箭头图标按钮可导航至 LangSmith 并查看详细的实验结果。

调试 LangSmith 踪迹

本指南解释了如何在 Studio 中打开 LangSmith 踪迹以进行交互式调查和调试。

打开已部署的线程

  1. 打开 LangSmith 踪迹,选择根运行记录。
  2. 点击 在 Studio 中运行。
这将打开 Studio,连接到关联的部署,并已选择踪迹的父线程。

使用远程踪迹测试本地代理

本节解释了如何针对来自 LangSmith 的远程踪迹测试本地代理。这使您能够使用生产踪迹作为本地测试的输入,从而在您的开发环境中调试和验证代理修改。

前提条件

本地代理要求
  • langgraph>=0.3.18
  • langgraph-api>=0.0.32
  • 包含与远程踪迹中相同的节点集

克隆线程

  1. 打开 LangSmith 踪迹,选择根运行记录。
  2. 点击 在 Studio 中运行 旁边的下拉菜单。
  3. 输入您的本地代理 URL。
  4. 选择 在本地克隆线程。
  5. 如果存在多个图形,选择目标图形。
将在您的本地代理中创建一个新线程,其线程历史记录从远程线程推断并复制,然后您将被导航到本地运行应用程序的 Studio。

将节点添加到数据集

将示例从线程日志中的节点添加到 LangSmith 数据集。这对于评估代理的各个步骤非常有用。
  1. 选择一个线程。
  2. 点击 添加到数据集。
  3. 选择您想要将其输入/输出添加到数据集的节点。
  4. 对于每个选定的节点,选择要在其中创建示例的目标数据集。默认情况下,将选择特定助手和节点的数据集。如果该数据集尚不存在,则将被创建。
  5. 在添加到数据集之前,根据需要编辑示例的输入/输出。
  6. 选择页面底部的 添加到数据集 以将所有选定节点添加到各自的数据集。
有关更多详情,请参阅如何评估应用程序的中间步骤。