- 语义意图:用户想要做什么。
- 语义结果:实际发生了什么,任务是否成功。
- 对话轨迹:对话是如何展开的,包括工具调用的轨迹。
工作原理
多轮在线评估器遵循以下评估生命周期:- 追踪摄取:对话中的每一轮都被作为一个单独的运行记录进行追踪,并通过一个共享的线程 ID 与一个线程关联。
- 空闲时间检测:在线程中的最后一个追踪记录被摄取后,LangSmith 会等待配置的空闲时间结束。这个空闲期表明对话已完成,可以进行评估。
- 消息组装:LangSmith 收集线程中每个追踪记录的
messages,并将它们组装成一个单一的对话历史。如果每个追踪记录只包含最新消息,LangSmith 会将跨轮次的消息拼接起来。如果每个追踪记录包含完整的历史记录,LangSmith 就会直接使用它。因为线程中连续的追踪记录通常会重新发送先前的历史记录,所以 LangSmith 会对重叠的消息进行去重,确保每条消息只出现一次。结果是一个以 OpenAI 聊天格式 ({"role": ..., "content": ...}) 表示的单一消息列表,这就是您提示词中的all_messages变量解析到的内容。 - LLM-as-a-judge 评估:组装好的对话被传递给您配置的 LLM-as-a-judge 提示词。评估器根据您的标准(语义意图、结果或轨迹)对整个线程进行评分。
- 反馈记录:评估器使用您配置的反馈键将反馈写入 LangSmith,并与该线程关联。
前提条件
- 您的追踪项目必须使用线程。
- 线程中每个追踪记录的顶层输入和输出必须包含一个
messages键,其中包含一个消息列表。我们支持 LangChain、OpenAI Chat Completions 和 Anthropic Messages 格式。- 如果每个追踪记录的顶层输入和输出只包含对话中的最新消息,LangSmith 将自动将跨轮次的消息组合成一个线程。
- 如果每个追踪记录的顶层输入和输出包含完整的对话历史,LangSmith 将直接使用它。
如果您的追踪记录不符合上述格式,线程级别评估器将无法工作。您需要更新向 LangSmith 发送追踪的方式,以确保每个追踪记录的顶层输入和输出都包含一个
messages 列表。请参阅故障排除部分获取更多信息。配置
- 导航到追踪页面并选择一个追踪项目。
- 点击评估器选项卡,然后点击 + 评估器。在从零开始创建下选择 LLM-as-a-Judge 评估器。在源下,选择线程。
- 为您的评估器命名。
- 应用过滤器或采样率。
使用过滤器或采样来控制评估器成本。例如,仅评估 N 轮以下的线程,或对所有线程采样 10%。 - 配置空闲时间。
首次配置线程级别评估器时,您需要定义空闲时间——即线程中最后一个追踪记录被摄取后,到被认为已完成并准备好评估所需的时间。该值应反映您应用程序中预期的用户交互时长。它适用于项目中的所有评估器。
-
配置您的模型。
选择您希望用于评估器的提供商和模型。线程往往会很长,因此您应该使用具有更高上下文窗口的模型以避免遇到限制。例如,OpenAI 的 GPT-5.4 mini 或 Gemini 2.5 Flash 是不错的选择,因为它们都拥有 1M+ 令牌的上下文窗口。 -
配置您的 LLM-as-a-judge 提示词。
定义您想要评估的内容。此提示词将用于评估该线程。您还可以通过all_messages变量配置将组装好的对话的哪些部分传递给评估器,以控制其接收到的内容:- 所有消息:以 OpenAI 聊天格式 (
{"role": ..., "content": ...}) 的 JSON 消息对象列表形式发送完整对话,每条消息渲染为缩进的 JSON 并以空行分隔。 - 人类与AI的交互对:仅发送用户和助手消息,格式为
<user>...</user>和<assistant>...</assistant>,并排除系统消息、工具调用和其他角色。 - 首条人类消息与末条AI回复:仅发送第一条用户消息和最后一条助手回复。
- 所有消息:以 OpenAI 聊天格式 (
-
设置您的反馈配置。
为反馈键配置一个名称,选择您希望收集的反馈格式,并可选择启用反馈的推理。
- 保存您的评估器。
限制
以下是多轮在线评估器的当前限制(可能会更改)。如果您遇到任何这些限制,请联系我们。- 运行记录必须不超过一周:当线程变为空闲时,只有过去 7 天内的运行记录才有资格进行评估。
- 一次最多评估 500 个线程:如果在五分钟内有超过 500 个线程被标记为空闲,我们将自动对超过 500 的部分进行采样。
- 每个工作区最多 10 个多轮在线评估器
故障排除
检查评估器的状态您可以通过前往追踪项目内的评估器选项卡,点击您创建的评估器的日志按钮查看其运行历史,来检查评估器上次运行的时间。 检查发送给评估器的数据
通过前往追踪项目内的评估器选项卡,点击您创建的评估器,然后点击评估器追踪选项卡,可以检查发送给评估器的数据。 在此选项卡中,您可以查看传递给 LLM-as-a-judge 评估器的输入。如果您的消息没有正确传入,您将在输入中看到空白值。这可能是因为您的消息没有按照预期的格式之一进行格式化。
Connect these docs to Claude, VSCode, and more via MCP for real-time answers.

