内置 scorers
Mastra 提供了一套完整的内置 scorers,用于评估 AI 输出。这些 scorers 针对常见评估场景进行了优化,可直接用于你的 agents 和 workflows。
要创建你自己的 scorers,请参阅自定义 Scorers 指南。
可用的 scorers可用的 scorers的直接链接
准确性和可靠性准确性和可靠性的直接链接
这些 scorers 评估 agent 答案的正确性、真实性和完整性:
answer-relevancy:评估响应在多大程度上回答了输入查询(0-1,越高越好)answer-similarity:使用语义分析将 agent 输出与标准答案进行比较,用于 CI/CD 测试(0-1,越高越好)faithfulness:衡量响应准确反映所提供上下文的程度(0-1,越高越好)hallucination:检测事实矛盾和缺乏支持的声明(0-1,越低越好)completeness:检查响应是否包含所有必要信息(0-1,越高越好)content-similarity:使用字符级匹配衡量文本相似度(0-1,越高越好)textual-difference:衡量字符串之间的文本差异(0-1,越高表示越相似)tool-call-accuracy:评估 LLM 是否从可用选项中选择了正确的工具(0-1,越高越好)trajectory-accuracy:评估所有 span 类型的预期操作序列。覆盖的 spans 包括工具和模型活动以及 workflow 步骤(0-1,越高越好)prompt-alignment:衡量 agent 响应与用户提示词意图、要求、完整性和格式的一致程度(0-1,越高越好)multi-turn-judge:根据纯英文标准对多轮对话的每个 assistant 轮次进行评分(0或scale,默认1)
上下文质量上下文质量的直接链接
这些 scorers 评估生成响应时使用的上下文的质量和相关性:
context-precision:使用平均精度均值(Mean Average Precision)评估上下文排序。相关上下文出现得越早,得分越高(0-1,越高越好)context-relevance:通过相关性级别和使用跟踪衡量上下文效用。它还会检测缺失的上下文(0-1,越高越好)
上下文 Scorer 的选择
- 当上下文顺序很重要且需要标准 IR 指标时,使用 Context Precision(非常适合 RAG 排序评估)
- 当需要详细的相关性评估并希望跟踪上下文使用情况、识别缺口时,使用 Context Relevance
两个上下文 scorers 都支持:
- 静态上下文:预定义的上下文数组
- 动态上下文提取:使用自定义函数从运行中提取上下文(非常适合 RAG 系统、向量数据库等)
输出质量输出质量的直接链接
这些 scorers 评估对格式、风格和安全要求的遵守情况:
tone-consistency:衡量正式程度、复杂度和风格的一致性(0-1,越高越好)toxicity:检测有害或不当内容(0-1,越低越好)bias:检测输出中的潜在偏见(0-1,越低越好)keyword-coverage:评估技术术语的使用(0-1,越高越好)
Quick ChecksQuick Checks的直接链接
零 LLM 微 scorers,用于快速、确定性的断言。使用详情请参阅 Quick Checks 指南。
checks.includes:如果输出包含子字符串则得 1 分(0或1)checks.excludes:如果输出不包含子字符串则得 1 分(0或1)checks.equals:如果输出匹配字符串则得 1 分,默认忽略大小写(0或1)checks.matches:如果输出匹配正则表达式则得 1 分(0或1)checks.similarity:通过 Dice 系数计算字符串相似度(0-1,或带阈值时为二进制)checks.calledTool:如果工具被调用至少 N 次则得 1 分(0或1)checks.didNotCall:如果工具未被调用则得 1 分(0或1)checks.toolOrder:如果工具按顺序调用则得 1 分(0或1)checks.maxToolCalls:如果工具调用次数在限制内则得 1 分(0或1)checks.usedNoTools:如果未调用任何工具则得 1 分(0或1)checks.noToolErrors:如果没有任何工具调用出错则得 1 分(0或1)