基于指标的评估#
仅限专业版和企业版计划
基于指标的评估功能适用于专业版和企业版计划用户。注册社区版和入门版用户也可在单个工作流中使用此功能。
什么是基于指标的评估?#
当您的工作流准备部署时,通常需要比构建阶段更多的测试用例。
例如,当生产环境执行开始暴露边界情况时,您需要将这些案例添加到测试数据集中以确保覆盖范围。
对于从生产数据构建的大型数据集,仅凭肉眼观察结果很难评估性能表现。此时必须进行量化测量。基于指标的评估可以为每次测试运行分配一个或多个分数,您可以将这些分数与之前的运行进行比较。最终将单个分数汇总以衡量整个数据集的性能表现。
此功能允许您运行评估来计算指标,跟踪这些指标在运行间的变化,并深入分析变化原因。
指标可以是确定性函数(例如两个字符串之间的距离),也可以使用AI进行计算。指标通常涉及检查输出与参考输出(也称为真实值)的偏差程度。为此,数据集中必须包含该参考输出。不过有些评估不需要参考输出(例如检查文本的情感或毒性)。
工作原理#
需要 Google Sheets
评估功能使用 Google Sheets 存储测试数据集。要使用评估功能,您必须配置Google Sheets凭证。
- 设置轻量级评估
- 计算指标
- 将指标写回评估
- 运行评估并查看结果
1. 设置轻量级评估#
按照安装说明创建数据集并将其连接到您的工作流,将输出结果写回数据集。
以下步骤使用与轻量级评估文档中相同的支持工单分类工作流:
2. 计算评估指标#
评估指标是用于量化工作流输出的维度。它们通常将实际工作流输出与参考输出进行比较。虽然有时可以直接使用代码计算,但常见做法是利用 AI 来计算这些指标。在 n8n 中,评估指标始终以数值形式呈现。
您需要在工作流产生输出后,添加计算这些评估指标的逻辑。可以将指标所需的任何参考输出作为数据集中的列添加。这样能确保它们在评估触发器输出时可供工作流使用。
常见示例:
- 正确性:判断输出含义是否与参考输出一致
- 分类准确性:判断输出是否完全符合预期结果
- 实用性:判断答案是否解决了问题
- 字符串相似度:通过逐字符比对衡量输出与参考输出的接近程度
- 工具调用:判断智能体是否调用了正确的工具
- RAG文档相关性:在使用向量数据库时,判断检索到的文档是否与问题相关
- RAG答案基础性:在使用向量数据库时,判断答案是否基于检索到的文档"建立"
计算评估指标会增加延迟和成本,因此建议仅在运行评估时执行,生产环境中可跳过此步骤。可以通过将指标计算逻辑放在'检查是否在评估'节点之后来实现。
3. 将指标写回评估#
n8n 需要知道如何提取您在步骤 2 中计算的指标。通过添加一个带有'设置指标'操作的评估节点,并将您的指标映射到其中来实现这一点。
这个工单分类工作流展示了添加并连接好的'设置输出'操作。由于该工作流中的指标仅检查实际输出是否与预期输出完全匹配,工作流在'设置指标'节点中的表达式中计算它们,而不是向工作流添加任何其他节点。
4. 运行评估并查看结果#
切换到工作流的评估选项卡,点击运行评估按钮。评估将开始运行。评估完成后,会显示每个指标的汇总分数。
您可以通过点击测试运行行来查看每个测试用例的结果。点击单个测试用例将打开产生该结果的执行(在新标签页中)。