多轮在线评估器允许您评估人与代理之间的整个对话,而不仅仅是单独的交互。它们衡量整个对话线程中端到端的交互质量。
您可以使用多轮评估来衡量: 1. 语义意图:用户想要做什么。 2. 语义结果:实际发生了什么,任务是否成功。 3. 轨迹:对话如何展开,包括工具调用的轨迹。
工作原理
多轮在线评估器遵循此评估生命周期:
- **追踪摄入**:对话中的每个回合作为一个单独的运行被追踪,并使用共享的线程ID与一个线程关联。
- **空闲时间检测**:在摄入线程中的最后一个追踪后,LangSmith会等待配置的空余时间过去。此空闲期表示对话已完成并准备好进行评估。
- **消息组装**:LangSmith从线程中的每个追踪收集
messages,并将它们组装成单个对话历史。如果每个追踪只包含最新消息,LangSmith会跨回合拼接消息。如果每个追踪包含完整历史,LangSmith会直接使用它。由于线程中的连续追踪通常会重新发送先前的历史,LangSmith会对重叠消息进行去重,使每个消息只出现一次。结果是单个OpenAI聊天格式的消息列表({"role": ..., "content": ...}),这就是您的提示中all_messages变量解析的内容。 - **LLM作为评判者评估**:组装好的对话被传递到您配置的LLM作为评判者提示。评估器根据您的标准对完整线程进行评分:语义意图、结果或轨迹。
- **反馈记录**:评估器使用您配置的反馈键将反馈写入LangSmith,与该线程关联。
此生命周期意味着多轮评估器每个完成的线程运行一次,而不是每个追踪运行一次。如果您需要每个追踪的评估,请使用 运行级在线评估器 。
前提条件
- - 您的追踪项目必须使用 线程.
- - 线程中每个追踪的顶级输入和输出必须有一个
messages键,其中包含消息列表。我们支持 LangChain, OpenAI 聊天补全和 Anthropic 消息 formats. - - 如果每个追踪的顶级输入和输出只包含对话中的最新消息,LangSmith会自动跨回合合并消息为一个线程。
- - 如果每个追踪的顶级输入和输出包含完整的对话历史,LangSmith会直接使用它。
配置
1. 导航至 **追踪** 页面并选择一个追踪项目。 2. 点击 **评估器** 标签页,然后点击 **+ 评估器**。选择 **LLM 即评判评估器** 在 **从零开始创建**下。在 **来源**下,选择 **线程**. 3. **为您的评估器命名**. 4. 应用 **筛选器** or a **采样率**. <br /> 使用筛选器或采样来控制评估器成本。例如,仅评估 *N* 轮次或采样 10% 的所有线程。 5. **配置空闲时间**. <br /> 首次配置线程级评估器时,您需要定义空闲时间——即线程中最后一个追踪之后被视为完成并准备好进行评估的时间量。此值应反映您应用中用户互动的预期时长。它适用于项目中的所有评估器。
6. **配置您的模型。**<br /> 选择您想用于评估器的提供商和模型。线程往往会变得很长,因此您应该使用具有更高上下文窗口的模型以避免达到限制。例如,OpenAI 的 GPT-5.4 mini 或 Gemini 2.5 Flash 都是不错的选择,因为它们的上下文窗口都超过 100 万 token。
7. **配置您的 LLM 即评判提示。**<br /> 定义您想要评估的内容。此提示将用于评估线程。您还可以通过 all_messages 变量来控制其接收的内容: - 所有消息:以 OpenAI 聊天格式的 JSON 消息对象列表形式发送完整对话({"role": ..., "content": ...}),每条消息渲染为缩进的 JSON 并用空行分隔。 - 人类和 AI 对:仅发送用户和助手消息,格式为 <user>...</user> 和 <assistant>...</assistant> 并排除系统消息、工具调用和其他角色。 - 第一个人类和最后一个 AI:仅发送第一条用户消息和最后一条助手回复。
9. **设置您的反馈配置**.<br /> 为反馈键配置名称、您要收集的反馈格式,以及可选地启用反馈推理。
- **保存您的评估器。**
保存后,您的评估器将显示在 **评估器** 标签页。保存后创建的任何新线程在空闲时间过后即可进行测试。
限制
这些是多人在线评估器的当前限制(可能会有变化)。如果您遇到任何这些限制,请联系我们。
- 运行时间必须少于一星期:当线程变为空闲时,只有过去7天内的运行才有资格进行评估。
- 一次最多评估500个线程:如果您在5分钟内将超过500个线程标记为空闲,我们将自动对超过500的部分进行采样。
- 每个工作区最多10个多人在线评估器
故障排除
检查评估器状态 <br /> 您可以前往 **评估器** 标签页查看评估器状态,然后点击 **日志** 按钮查看您创建的评估器的运行历史。
检查发送给评估器的数据 <br /> 导航到 **评估器** 标签页,点击您创建的评估器,然后点击 **评估器追踪** tab.
在此标签页中,您可以看到传递给LLM评判评估器的输入。如果您的消息未正确传递,您将在输入中看到空白值。如果您的消息未采用以下 预期格式之一.