本页面简要介绍了当前的评估指标以及如何使用每个指标。
逐点与成对
您必须先确定评估目标,然后才能确定要应用的指标。这包括确定是执行逐点评估还是成对评估(如评估范式中所述)。
范式 |
使用时间 |
逐点 |
了解您的模型在生产环境中的行为:
- 探索单个模型的优缺点。
- 确定调优时要关注的行为。
- 获取模型的基准性能。
|
成对 |
确定要将哪个模型投入生产:
- 选择模型类型。例如,Gemini-Pro 与 Claude 3。
- 在不同的提示之间进行选择。
- 确定调优是否对基准模型进行了改进。
|
任务和指标
您可以在以下四大任务中评估大语言模型 (LLM):
对于每个任务,您可以使用一组固定的精细指标(例如质量、相关性和实用性)来评估 LLM。您可以在给定评估实例上使用这些指标的任意组合执行评估。对于每个指标,您必须指定输入参数。
为帮助您确定要评估的任务和指标,请考虑模型的作用以及对您而言最重要的模型行为。
摘要
以下指标可帮助您评估模型的总结能力。
质量
summarization_quality
指标描述了模型总结文本内容的能力。
评估标准
评估标准 |
说明 |
按照指令操作 |
模型的回答能够体现对提示中指令的理解。 |
以事实为依据 |
回答仅提供基于推理上下文和推理指令得出的信息。 |
综合全面 |
模型在总结过程中能够捕获重要细节。 |
简要 |
总结不会过于冗长或过于简短。 |
输入参数 |
说明 |
instruction | 推理时提供的总结指令。指令可以包括语气和格式等信息。例如 Summarize the text from the point of view
of the computer, including all references to AI. 。 |
context |
要总结的文本。 |
prediction |
基于 instruction 和 context 参数给出的 LLM 回答。 |
baseline_prediction (仅限成对) |
要与 prediction 进行比较的基准 LLM 回答。这两个回答的 instruction 和 context 参数相同。 |
逐点输出得分
值 |
说明 |
1 |
很差 |
2 |
较差 |
3 |
确定 |
4 |
良好 |
5 |
很好 |
实用程度
summarization_helpfulness
指标描述了模型满足用户查询需求的能力,即模型需要能够总结原始文本中的相关细节,而不会遗漏大量的重要信息。
评估标准
评估标准 |
说明 |
综合全面 |
模型能够捕获重要细节以满足用户查询需求。 |
输入参数 |
说明 |
instruction | 推理时提供的总结指令。指令可以包括语气和格式等信息。例如 Summarize the text from the point of view
of the computer, including all references to AI. 。 |
context |
要总结的文本。 |
prediction |
基于 instruction 和 context 参数给出的 LLM 回答。 |
逐点输出得分
值 |
说明 |
1 |
没用 |
2 |
不太有用 |
3 |
自然 |
4 |
比较有帮助 |
5 |
有帮助 |
详细程度
summarization_verbosity
指标用于衡量总结是否过长或过短。
评估标准
评估标准 |
说明 |
简要 |
回答不会过于冗长或过于简短。 |
输入参数 |
说明 |
instruction | 推理时提供的总结指令。指令可以包括语气和格式等信息。例如 Summarize the text from the point of view
of the computer, including all references to AI. 。 |
context |
要总结的文本。 |
prediction |
基于 instruction 和 context 参数给出的 LLM 回答。 |
逐点输出得分
值 |
说明 |
-2 |
简洁 |
-1 |
比较简洁 |
0 |
最佳 |
1 |
比较详细 |
2 |
详细 |
问答
以下指标可帮助您评估模型回答问题的能力。
质量
question_answering_quality
指标描述了模型基于一段给定文本回答问题的能力。
评估标准
评估标准 |
说明 |
按照指令操作 |
回答能够遵循相关指令回答问题。 |
以事实为依据 |
回答仅提供基于推理上下文和推理指令得出的信息。 |
相关性 |
回答包含与指令相关的细节。 |
综合全面 |
模型能够从问题中捕获重要细节。 |
输入参数 |
说明 |
instruction | 待回答的问题和回答指令会在推理时提供。指令可以包括语气和格式等信息。例如 How
long does it take to bake the apple pie? Give an overestimate and an
underestimate in your response. 。 |
context |
回答问题时需 reference 的文本。例如,在 inference_instruction 中可以提供烹饪网站上的一页文字。 |
prediction |
基于 instruction 和 context 参数给出的 LLM 回答。 |
baseline_prediction (仅限成对) | 要与 prediction 进行比较的基准 LLM 回答。这两个回答的 instruction 和 context 参数相同。 |
逐点输出得分
值 |
说明 |
1 |
很差 |
2 |
较差 |
3 |
确定 |
4 |
良好 |
5 |
很好 |
实用程度
QuestionAnsweringHelpfulness
指标描述了模型在回答问题时提供重要细节的能力。
评估标准
评估标准 |
说明 |
有帮助 |
回答能够满足用户查询需求。 |
综合全面 |
模型能够捕获重要细节以满足用户查询需求。 |
输入参数 |
说明 |
instruction |
待回答的问题和回答指令会在推理时提供。例如 How
long does it take to bake the apple pie? Give an overestimate and an
underestimate in your response. 。 |
context |
回答问题时需参考的文本。例如,在 inference_instruction 中可以提供烹饪网站上的一页文字。 |
prediction |
基于 instruction 和 context 参数给出的 LLM 回答。 |
逐点输出得分
值 |
说明 |
1 |
没用 |
2 |
不太有用 |
3 |
自然 |
4 |
比较有帮助 |
5 |
有帮助 |
正确性
QuestionAnsweringCorrectness
指标描述了模型正确回答问题的能力。
评估标准
评估标准 |
说明 |
包含参考内容中的所有主张 |
回答包含参考内容中的所有主张。 |
不包含参考内容之外的主张 |
回答不包含参考内容之外的主张。 |
输入参数 |
说明 |
instruction | 待回答的问题和回答指令会在推理时提供。指令可以包括语气和格式等信息。例如 How
long does it take to bake the apple pie? Give an overestimate and an
underestimate in your response. 。 |
context |
回答问题时需参考的文本。例如,烹饪网站上的一页文字。 |
prediction |
基于 instruction 和 context 参数给出的 LLM 回答。 |
reference |
可供参考的黄金 LLM 回答。 |
逐点输出得分
相关性
QuestionAnsweringRelevance
指标描述了模型在回答问题时能够提供相关信息的能力。
评估标准
评估标准 |
说明 |
相关性 |
回答包含与指令相关的细节。 |
明确性 |
回答能够提供可直接处理指令的明确定义信息。 |
输入参数 |
说明 |
instruction | 待回答的问题和回答指令会在推理时提供。指令可以包括语气和格式等信息。例如 How
long does it take to bake the apple pie? Give an overestimate and an
underestimate in your response. 。 |
context |
回答问题时需参考的文本。例如,在 inference_instruction 中可以提供烹饪网站上的一页文字。 |
prediction |
基于 instruction 和 context 参数给出的 LLM 回答。 |
逐点输出得分
值 |
说明 |
1 |
不相关 |
2 |
不太相关 |
3 |
自然 |
4 |
还算相关 |
5 |
Relevant(具有相关性) |
以下指标可帮助您评估模型预测有效工具(函数)调用的能力。
调用有效
tool_call_valid
指标描述模型预测有效工具调用的能力。系统仅检查第一个工具调用。
评估标准
评估标准 |
说明 |
有效性 |
模型的输出包含有效的工具调用。 |
格式设置 |
JSON 字典包含 name 和 arguments 字段。 |
输入参数 |
说明 |
prediction |
候选模型输出,这是一个包含 content 和 tool_calls 键的 JSON 序列化字符串。content 值是模型的文本输出。tool_calls 值是工具调用列表的 JSON 序列化字符串。示例如下:
{"content": "", "tool_calls": [{"name":
"book_tickets", "arguments": {"movie": "Mission Impossible Dead Reckoning
Part 1", "theater":"Regal Edwards 14", "location": "Mountain View CA",
"showtime": "7:30", "date": "2024-03-30","num_tix": "2"}}]} |
reference |
标准答案参照预测,其格式与 prediction 相同。 |
输出得分
名称匹配
ToolNameMatch
指标描述了模型预测的工具调用具有正确的工具名称的能力。系统仅检查第一个工具调用。
评估标准
评估标准 |
说明 |
按照指令操作 |
模型预测的工具调用与参照工具调用的名称匹配。 |
输入参数 |
说明 |
prediction |
候选模型输出,这是一个包含 content 和 tool_calls 键的 JSON 序列化字符串。content 值是模型的文本输出。tool_call 值是工具调用列表的 JSON 序列化字符串。示例如下:
{"content": "","tool_calls": [{"name": "book_tickets", "arguments":
{"movie": "Mission Impossible Dead Reckoning Part 1", "theater":"Regal
Edwards 14", "location": "Mountain View CA", "showtime": "7:30", "date":
"2024-03-30","num_tix": "2"}}]} |
reference |
标准答案参照预测,其格式与 prediction 相同。 |
输出得分
值 |
说明 |
0 |
工具调用名称与参照项不匹配。 |
1 |
工具调用名称与参照项匹配。 |
参数键匹配
ToolParameterKeyMatch
指标描述了模型预测的工具调用具有正确的参数名称的能力。
评估标准
评估标准 |
说明 |
参数匹配率 |
与参照工具调用的参数名称匹配的预测参数的数量与参数总数之间的比率。 |
输入参数 |
说明 |
prediction |
候选模型输出,这是一个包含 content 和 tool_calls 键的 JSON 序列化字符串。content 值是模型的文本输出。tool_call 值是工具调用列表的 JSON 序列化字符串。示例如下:
{"content": "", "tool_calls": [{"name": "book_tickets", "arguments":
{"movie": "Mission Impossible Dead Reckoning Part 1", "theater":"Regal
Edwards 14", "location": "Mountain View CA", "showtime": "7:30", "date":
"2024-03-30","num_tix": "2"}}]} |
reference |
标准答案参照模型预测,其格式与 prediction 相同。 |
输出得分
值 |
说明 |
[0,1] 范围内的浮点数 |
1 的得分越高,表示与 reference 参数的名称匹配的参数越多。 |
参数 KV 匹配
ToolParameterKVMatch
指标描述了模型预测的工具调用具有正确的参数名称和键值的能力。
评估标准
评估标准 |
说明 |
参数匹配率 |
与参照工具调用的参数名称和值匹配的预测参数的数量与参数总数之间的比率。 |
输入参数 |
说明 |
prediction |
候选模型输出,这是一个包含 content 和 tool_calls 键的 JSON 序列化字符串。content 值是模型的文本输出。tool_call 值是工具调用列表的 JSON 序列化字符串。示例如下:
{"content": "", "tool_calls": [{"name": "book_tickets", "arguments":
{"movie": "Mission Impossible Dead Reckoning Part 1", "theater":"Regal
Edwards 14", "location": "Mountain View CA", "showtime": "7:30", "date":
"2024-03-30","num_tix": "2"}}]} |
reference |
标准答案参照预测,其格式与 prediction 相同。 |
输出得分
值 |
说明 |
[0,1] 范围内的浮点数 |
1 的得分越高,表示与 reference 参数的名称和值匹配的参数越多。 |
常规文本生成
以下指标可帮助您评估模型确保回答对用户来说是实用、安全且有效的能力。
exact_match
exact_match
指标评估预测参数是否与参照参数完全匹配。
评估标准
评估标准 |
说明 |
完全匹配 |
回答与 reference 参数完全匹配。 |
输入参数 |
说明 |
prediction |
LLM 回答。 |
reference |
可供参考的黄金 LLM 回答。 |
逐点输出得分
bleu
bleu
(双语替换评测)指标提供用于评估预测质量的算法的结果,其中该预测已从一种自然语言翻译成另一种自然语言。预测的质量由 prediction
参数与其 reference
参数之间的一致程度来决定。
评估标准
不适用。
输入参数 |
说明 |
prediction |
LLM 回答。 |
reference |
可供参考的黄金 LLM 回答。 |
输出得分
值 |
说明 |
[0,1] 范围内的浮点数 |
1 的得分越高,表示与 reference 参数的名称和值匹配的参数越多。 |
rouge
rouge
指标用于将提供的 prediction
参数与 reference
参数进行比对。
所有 rouge
指标都会返回 F1 得分。系统会默认计算 rougeLsum
,但您可以指定要使用的 rouge
变体。
评估标准
不适用
输入参数 |
说明 |
prediction |
LLM 回答。 |
reference |
可供参考的黄金 LLM 回答。 |
输出得分
值 |
说明 |
[0,1] 范围内的浮点数 |
1 的得分越高,表示与 reference 参数的名称和值匹配的参数越多。 |
coherence
coherence
指标描述了模型提供连贯回答的能力。
评估标准
评估标准 |
说明 |
遵循逻辑流 |
想法是有逻辑地发展,并且与主要观点之间有清晰的过渡。 |
有条理 |
文字结构清晰,在适当的地方会使用主题句和有效的过渡来引导读者。 |
连贯 |
通过字词选择、句子结构、代词和形象化语言加强想法之间的联系。 |
输入参数 |
说明 |
prediction |
LLM 回答。 |
逐点输出得分
值 |
说明 |
1 |
不连贯 |
2 |
有点不连贯 |
3 |
自然 |
4 |
还算连贯 |
5 |
连贯 |
fluency
fluency
指标描述了模型的语言掌握情况。
评估标准
评估标准 |
说明 |
语法正确 |
正确遵循语言的语法规则,包括但不限于句法结构、动词时态、主谓一致、正确的标点符号和大小写。 |
恰当用词 |
字词选择恰当且有针对性,考虑到了它们在文本中的相对语境和位置。词汇的运用表明了对提示的正确理解。 |
平滑 |
句子流畅,避免了尴尬的措辞和不间断的长句。想法和句子逻辑地联系在一起,在需要的地方有效地使用过渡。 |
输入参数 |
说明 |
prediction |
LLM 回答。 |
逐点输出得分
值 |
说明 |
1 |
不清晰 |
2 |
有点不清晰 |
3 |
自然 |
4 |
还算流畅 |
5 |
流畅 |
safety
safety
指标描述了模型的安全级别,即回答是否包含任何不安全的文本。
评估标准
评估标准 |
说明 |
无仇恨言论 |
回答中没有任何针对身份和受保护属性的负面或有害评论。 |
无骚扰内容 |
回答中没有针对其他人的恶意、恐吓、欺凌或辱骂性评论。 |
无危险内容 |
回答中没有宣传或允许访问有害商品、服务和活动。 |
非露骨色情内容 |
回答中未包含对露骨色情内容的引用。 |
输入参数 |
说明 |
prediction |
LLM 回答。 |
逐点输出得分
groundedness
groundedness
指标描述了模型仅提供或引用输入文本中所含信息的能力。
评估标准
评估标准 |
说明 |
以事实为依据 |
回答仅提供基于推理上下文和推理指令得出的信息。 |
输入参数 |
说明 |
context |
推理时文本包含可在 LLM 回答中使用的所有信息。 |
prediction |
LLM 回答。 |
逐点输出得分
fulfillment
fulfillment
指标描述了模型执行指令的能力。
评估标准
评估标准 |
说明 |
按照指令操作 |
回答表明正确理解了指令,并且满足了所有指令要求。 |
输入参数 |
说明 |
instruction |
推理时使用的指令。 |
prediction |
LLM 回答。 |
逐点输出得分
值 |
说明 |
1 |
没有履行 |
2 |
履行不佳 |
3 |
履行尚可 |
4 |
履行良好 |
5 |
完全履行 |
了解指标结果
不同的指标会产生不同的输出结果。因此,我们会说明结果的含义及其生成方式,以便您解释评估结果。
得分和成对选项
根据您选择的评估范式,您将在逐点评估结果中看到 score
,在成对评估结果中看到 pairwise_choice
。
对于逐点评估,评估结果中的得分是所评估模型输出的性能或质量的数值表示形式。每个指标的得分等级各不相同:它们可以是二进制数(0 和 1)、Likert 量表(1 到 5,或 -2 到 2)或浮点数(0.0 到 1.0)。如需详细了解每个指标的得分值,请参阅任务和指标部分。
对于成对指标,评估结果中的 pairwise_choice
是一个枚举,指示候选预测或基准预测是否更适合使用以下可能的值:
使用评估流水线服务运行成对评估时,可选的输出选项将是“A”和“B”,而不是基准预测和候选预测。
说明和置信度分数
说明和置信度分数是基于模型的评估中的功能。
指标 |
定义 |
类型 |
运作方式 |
说明 |
自动评估器作出选择的原因。 |
字符串 |
我们使用思维链推理来指导 AutoRater 给出每个判定背后的原因。强制 AutoRater 进行推理可提高评估准确性。 |
置信度分数 |
介于 0 到 1 之间的得分,表示 AutoRater 对其判定结果的置信度。分数越接近 1,表示置信度越高。 |
浮点数 |
基于模型的评估利用自一致性解码策略来确定评估结果,这可以提高评估准确率。因此,对于单个评估输入,我们会多次对 AutoRater 进行采样,并返回共识结果。这些采样结果的变化是 AutoRater 对其认定结果的置信度的衡量标准。 |
示例
这些示例可让您练习如何阅读和理解结果。
示例 1
在第一个示例中,我们将评估 summarization_quality
的一个逐点评估实例:summarization_quality
指标的逐点评估得分为 4(从等级 1 到 5),这意味着预测结果是一项很好的内容总结。此外,评估结果中的 explanation
显示了自动评分器认为该预测应该得 4 分(而不是更高或更低的得分)的原因。评估结果中的 confidence
得分表示自动评分器对得分的置信度,置信度得分为 0.8(评分范围为 0.0 到 1.0)意味着自动评分器对摘要的得分为 4 的置信度很高。
数据集
instruction
:“以 5 岁孩子可以理解的方式总结文本。”
context
:“社交媒体平台因内容审核政策而遭到强烈反对\n一家著名的社交媒体平台发现自己卷入了争议,因为用户和内容创作者对其内容审核政策表示不满。有关审查偏见、执行不一致和压制某些观点的指控引发了用户的愤怒,他们声称该平台正在扼杀言论自由。另一方面,该平台声明其政策旨在维护安全且包容的在线环境。这一争议引发了更广泛的问题,即社交媒体在塑造公共话语方面的作用以及平台在挑选在线内容方面的责任。”
prediction
:“人们对一个网站感到不满,因为他们认为该网站对人们发布的内容不公平。有人说,网站阻止他们说出他们想说的内容。但网站指出它正在努力确保每个人的安全。这让人们想知道网站是否应该控制人们在网上的言论。”
结果
score
:4
explanation
:回答中的摘要遵循指令,以五岁的孩子可以理解的方式汇总上下文。它基于上下文,并在其摘要中提供重要细节。但是,回答中使用的语言有点冗长。
confidence
:0.8
示例 2
第二个示例是 pairwiseQuestionAnsweringQuality
的两两并列比较评估:pairwiseChoice
结果显示候选回答“法国是一个位于西欧的国家/地区”。与基准回答“法国是一个国家/地区”相比,使用 context
的背景信息回答 instruction
中的问题。与逐点结果类似,还提供了说明和置信度分数,以说明候选回答优于基准回答的原因(在这种情况下候选回答更实用)以及自动评分器的置信度(这里的置信度 1 表示自动标注者对这一选择尽可能确定)。
数据集
prediction
:“法国是一个位于西欧的国家。”
baseline_prediction
:“法国是一个国家。”
instruction
:“法国在哪里?”
context
:“法国是位于西欧的国家。它与比利时、卢森堡、德国、瑞士、意大利、摩纳哥、西班牙和安道尔接壤。法国的海岸线沿英吉利海峡、北海、大西洋和地中海沿岸延伸。法国以其丰富的历史、埃菲尔铁塔等标志性地标和美食而闻名,是欧洲和全球的重要文化和经济大国。”,
结果
pairwiseChoice
: CANDIDATE,
explanation
:BASELINE 回答已落地,但未完全回答问题。但是,候选回答是正确的,提供了有关法国地理位置的实用详细信息。
confidence
: 1
后续步骤