LangSmith Engine 将您的跟踪数据转化为持续改进工作流程。它会揭示反复出现的问题,诊断其根本原因,并引导您修复这些问题并防止它们再次发生。
每个问题都会经历一个闭环:在您的跟踪数据中检测到反复出现的故障 → 诊断根本原因 → 提出修复方案 → 部署评估器以捕获回归 → 如果问题在关闭后再次出现,将自动重新打开。
对于每个问题,LangSmith Engine 会显示相关跟踪数据,提出修复方案,生成自定义评估器以防止回归,并创建自定义真实标签 数据集示例 用于离线评估的生产跟踪输入数据。
您可以做什么
Build: Open a pull request
通过在已连接仓库中打开拉取请求来应用提议的修复方案。
Test: Add offline examples to a dataset
从生产跟踪数据生成自定义真实标签数据集示例,用于离线评估。
Monitor: Create an online evaluator
部署自定义评估器以捕获未来跟踪数据中的回归。
设置 LangSmith Engine
设置 LangSmith Engine 需要两个步骤:一个 组织管理员 首先为工作区启用 Engine,然后任何用户都可以为每个跟踪项目配置 Engine。
为您的组织启用 Engine
Open Engine enablement
在 LangSmith 控制台中,点击左下角的 **设置** ,然后选择 **Engine 启用** 在 **Engine**.
Toggle Enable Engine
下切换 **启用 Engine** 开关并同意 AI 功能服务条款:
> LangSmith AI 功能由 LangChain 管理的推理提供支持,为您的可观测性工作流程带来智能。启用 LangSmith AI 后,您的团队可以更快地发现问题的回归。
启用 Engine 后,组织中的任何团队成员都可以为其跟踪项目设置 Engine。
了解 LCU 费用
Engine 以 **LangChain 计算单元 (LCUs)**,一种将计算、存储、内存和 LLM 费用标准化的单位。追踪越多、深度思考和工作越多,Engine 消耗的 LCU 就越多。LCU 的成本 **$1.50 USD each**.
Engine 运行分为两个阶段:
| 阶段 | 触发条件 | 典型 LCU 使用量 |
|---|---|---|
| **初始化** | 首次在项目中启用 Engine | 30–40 LCU |
| **定期扫描** | 每 6 小时自动执行 | 10–15 LCU |
实际使用量会因追踪量和复杂度而有所不同。
在初始化时,Engine 会审核过去的追踪,按严重程度对问题进行聚类和优先级排序,并针对您的提示词或代码提出修复建议(如果已连接代码库)。定期扫描会发现之前未发现的新改进。
设置消费限额并监控使用情况
组织管理员可以在两个级别设置消费限额:
- 组织范围限额:打开 **设置**,选择 **Engine 启用** 下的 **Engine**,然后在 **每月 LCU 消费限额**.
- 项目限额:打开追踪项目中的 **Engine** 标签页,点击 **Engine 设置** 齿轮图标,在 **每月 LCU 消费限额**.
您可以按 LCU 或 USD 输入限额(1 LCU = $1.50)。当达到限额时,LangSmith 会暂停新的 Engine 运行,直到限额提高或下一个每月计费周期开始。
将限额留空可允许无限的 Engine 消费。要完全停止 Engine,请在 **启用 Engine** 设置中使用 **设置 > Engine 启用**.
要监控使用情况,您可以查看组织在 **Engine 启用** 页面中的每月 LCU 消费,或在每个追踪项目的 **设置**查看每项目消费,或在 **Engine 设置** 每个追踪项目的面板中查看每项目消费。
为追踪项目设置 Engine
Open the Engine tab
在 LangSmith 控制台中,导航到 UI 侧边栏中的 **追踪** 选择一个项目,然后点击项目导航中的 **Engine** 标签页。
Connect a code repository (optional)
虽然可选,但建议连接 GitHub 仓库。LangSmith Engine 使用您的源代码来诊断问题、生成更高质量的修复,并直接从问题中打开拉取请求。在 **连接代理的代码仓库**下,选择一个仓库。仅显示 GitHub 应用可访问的仓库。点击 **管理应用访问权限 →** 以更新权限。您可以更新 **代码仓库** 随时从 **引擎设置**.
Select priority categories (optional)
在 **对您来说最重要的是什么?**,选择要优先审查的类别(例如, **工具调用失败** or **延迟**)。点击 **+ 添加具体内容** 来描述自定义问题。您可以更新 **优先级** 随时在 **引擎设置**.
Start analyzing
点击 **开始分析**。LangSmith 引擎可能需要长达 20 分钟来分析项目的追踪并开始提供建议。在等待期间,您可以 设置通知 在设置面板中,当发现不同优先级的问题时,通过 Slack 或 webhook 接收警报。
Review the agent overview document
在展示问题之前,LangSmith 引擎会基于您的追踪生成一份代理概览文档,描述项目的目的、架构和关键指标。审查并编辑文档,然后点击 **接受并继续** 继续。如果概览不准确,请在继续之前进行编辑,因为 LangSmith 引擎将其作为所有分析的上下文,因此这里的准确性会影响检测问题的质量。您可以随时在 **引擎设置**.
浏览和筛选问题
设置完成后, **引擎** 标签页在左侧面板显示自动检测到的问题列表。每个条目显示标题、简短描述、贡献追踪数量以及问题最近观察时间。
在列表顶部,您可以点击:
- 筛选问题 图标按 **优先级**, **状态** 和 **标签**.
- 排序问题 图标按 **严重程度**, **最后更新时间**和 **创建时间**.
- 引擎设置 齿轮图标 配置 LangSmith 引擎.
点击任意问题,在右侧面板显示其详情。
如果设置完成后没有出现问题,说明 LangSmith Engine 在分析的追踪记录中未发现重复模式。请在收集更多追踪记录后再回来查看。
查看问题
点击列表中的任意问题,打开其详情面板。顶部有诊断描述问题和其影响。
该 **关联追踪** 部分列出了支持诊断的追踪记录。点击任意追踪记录打开其详情面板。更多信息,请参阅 管理追踪。点击 **添加离线示例** 在此部分右下角,从生产追踪输入生成自定义真实标签 数据集示例 用于离线评估。
该 **建议修复** 部分描述了问题并建议如何解决,如果连接了仓库,可能包括特定的代码或提示更改。
该 **建议的评估器** 部分提供了一个可直接使用的评估器,您可以部署它来在未来的追踪记录中捕获问题。如果您在关闭问题后评估器触发,则问题会自动重新打开,以表明问题仍然存在。
该 **离线示例** 部分建议使用从生产追踪输入中触发问题的数据集示例,用于离线评估。
对问题执行操作
更改优先级
选择 **低**, **中** or **高** 从优先级下拉菜单中更新问题的优先级。您可以选择提供原因,这会反馈到 LangSmith Engine,帮助其随时间改进分析。
创建评估器
- 点击 **创建评估器** 部署问题的建议评估器。
- 配置名称、运行过滤器和采样率。如有需要,可直接在内置编辑器中编辑代码。
- 启用 **应用于过去的运行** 查看评估器在部署前会标记多少历史追踪记录。
更多信息,请参阅 评估器.
添加离线示例
- 点击 **添加离线示例** 在 **关联追踪** 列表底部打开 **添加为离线示例** dialog.
- 对话框。查看每条追踪记录。对话框显示输入、代理产生的错误输出,以及作为自定义真实标签示例的预期输出。
- 点击 **添加到数据集** 直接添加,或点击 **在标注队列中编辑** 先进行审查。
- 在标注队列中,每个示例都会显示运行输入以及 LangSmith Engine 提出的参考输出,并以命名形式呈现 断言 (从追踪分析中生成)。每个断言都是一个简短的声明,描述正确答案应该或不应该包含什么。您可以根据需要编辑断言,使用 **+ 添加断言**添加新断言,然后点击 **添加到数据集并继续** 逐个处理每个示例。
有关更多信息,请参阅 管理数据集, 使用标注队列和 使用断言, .
复制问题提示词
点击 **复制修复上下文** 复制图标,将包含问题详情的提示词保存到剪贴板。然后您可以将其与 LLM 或编码助手配合使用,以帮助解决问题。
开启拉取请求
点击 **开启 PR** 在已连接的项目仓库中开启一个包含修复建议的 GitHub 拉取请求。开启后,按钮将变为 **查看 PR**。LangSmith Engine 可以向任何已连接的项目仓库提交代码修改建议,包括使用 Deep Agents, LangChain和 LangGraph.
解决或忽略问题
点击 **解决** 将问题标记为已解决,或 **忽略** 将其关闭,因为该问题可能不真实或不值得修复。您可以选择为任一操作提供原因。
重新开启问题
要重新开启已关闭的问题,请打开问题详情视图并点击 **重新开启**.
通过 CLI 列出问题
您可以使用以下方式以编程方式列出问题 LangSmith CLI.
# List issues for a project
langsmith project issues list --project <project-name>
接收新问题通知
当 LangSmith Engine 开启新问题、将新追踪链接到现有问题或无法完成运行时,它会向您发送通知。将这些通知发送至 **Slack 频道**, an **HTTP webhook 端点**或两者皆可。每个目标都有其独特的事件类型和最低优先级级别,因此您可以将紧急问题路由到寻呼 webhook,同时将所有问题发送到 Slack 频道。
从以下位置管理通知目标 **引擎设置** 面板:打开 **引擎** 跟踪项目的 **引擎设置** 齿轮图标,在 **通知** 点击 **+ 添加目标**.
通知 Slack 频道
Connect a Slack workspace
连接 Slack 工作区是您执行一次的组织级操作,而不是每个项目一次。连接或断开工作区需要 organization:manage 权限。在 LangSmith 控制台,打开 **设置**,转到您组织的 **通用** 设置,在 **Slack** 点击 **连接 Slack**。在 Slack 中授权 LangSmith 应用。您可以将多个 Slack 工作区连接到一个组织。
Add a Slack destination
在 **引擎** 跟踪项目的标签页,点击 **引擎设置** 齿轮图标,然后点击 **添加目标**。设置 **发送至** 字段为 **Slack**,然后在 **频道**.
Choose events and priority
在 **通知条件**下,选择要向频道发布消息的 事件类型 。在 **最低优先级**下,选择触发通知的最低 严重程度 。点击 **添加目标** 保存。
LangSmith 会自动加入您选择的公共频道。若要发布到私有频道,请先在 Slack 中邀请 LangSmith 应用加入该频道。
每条 Slack 消息都包含问题标题、描述和严重程度、一个 **查看问题** 链接返回 LangSmith,以及(对于问题事件)问题随时间复发情况的图表。如果工作区的连接失效(例如应用从 Slack 中被移除),其目标将停止投递,直到您从您组织的 **通用** settings.
发送至 Webhook
要将引擎事件转发到您自己的事件管理、寻呼或聊天工具,请添加目标并将 **发送至** 字段设置为 **Webhook**。输入 URL 和(可选的)自定义标头。Webhook 投递经过签名,以便您验证其真实性。有关完整的事件负载参考、签名密钥验证和投递语义,请参阅 Engine webhook 事件.
配置 LangSmith Engine
在追踪项目中,点击 **Engine 设置** 齿轮图标 **Engine** 标签页上的 **编辑 Engine 设置** 面板。从这里您可以配置:
- Agent 概述:编辑您的 agent 概述文档,以使 LangSmith Engine 对您项目的理解随着应用程序的演进保持准确。
- 优先级:LangSmith Engine 在扫描追踪时应额外关注的领域。更改将在下次扫描时生效。
- 代码仓库:更新连接的 GitHub 仓库或子文件夹。
- 通知:添加 Slack 频道或 webhook 目标,当 LangSmith Engine 检测到新问题时接收通知。为每个目标设置最低优先级级别,以控制哪些问题触发通知。请参阅 获取新问题通知.
- 暂停 Engine:LangSmith Engine 默认每 6 小时扫描一次您的追踪。点击 **暂停** 以暂停扫描,或点击 **恢复** 以继续扫描。
- 删除所有问题:此操作无法撤销。所有问题和设置将被永久删除。