如何有效评估目前AI的输出质量?这是一个大问题。来自东京大学的研究团队最近发表了一项开创性研究,深入探讨了LLM评估中的关键因素。让人感到炸裂的是:改变一下输出顺序就能显著影响LLM评估结果;如果Prompt中涉及评分和理由,先评分再给理由,先给理由再评分结果也会大不同;评分规则和模型类型也会对评分有明显影响。在AI发展的快车道上,我们似乎总是更关注如何让模型变得更强大、更智能。但是,一个常被忽视却同样重要的问题是:我们如何准确评估这些模型的输出质量?特别是在对话评估这样高度主观的任务中,这个问题变得尤为棘手。
图片来自公众号公共图片库传统的自动评估指标如BLEU或ROUGE在面对开放式生成任务时往往显得力不从心。而人工评估虽然可靠,却耗时耗力,难以大规模应用。在这种背景下,利用LLM自身来评估AI生成的文本似乎成为了一个自然而然的选择。但这种方法真的可靠吗?
以上图中展示了四种GPT模型在不同输出指令配置下的评分分布。
模型敏感度:GPT-3.5-turbo-0613和GPT-4-0613对输出指令的变化表现出更高的敏感度,评分分布差异明显。
版本进化:较新的模型版本(如GPT-3.5-turbo-1106和GPT-4-1106-preview)展现出更稳定的评分分布,暗示它们可能具有更强的指令理解能力。
'理由先行'效应:在多数情况下,要求模型先给出理由再给分数(rs配置)会导致较高的评分,这一现象在GPT-3.5-turbo-0613中尤为明显。
模型间差异:GPT-4系列模型总体上给出了更高的评分,可能反映了它们对对话质量的不同理解或更严格的评判标准。
这些发现不仅揭示了LLM评估行为的复杂性,也为Prompt工程师在选择和使用模型时提供了重要参考。
研究发现,当要求模型先给出评分理由,然后再给出具体分数时,评分结果往往更高。例如:
- 使用GPT-4-0613模型时,json(rs)配置(理由先行)的平均分为5.34
- 而json(sr)配置(分数先行)的平均分仅为3.26
研究者推测,这与LLM的自回归生成特性有关。当模型先给出理由时,它能够更全面地考虑输入的提示和自己生成的理由,从而做出更加深思熟虑的评分。
研究中最引人注目的发现就是这个"理由先行"策略。传统上,我们可能会要求模型先给出分数,然后解释理由。但研究发现,如果我们调换这个顺序,让模型先给出评分理由,然后再给出具体分数,结果会大不相同。
为什么会这样?研究者推测,这与LLM的自回归生成特性有关。当模型先给出理由时,它能够更全面地考虑输入的提示和自己生成的理由,从而做出更加深思熟虑的评分。这一发现为Prompt工程师们提供了一个全新的视角:也许我们应该重新思考AI评估的整个流程。
研究团队的核心发现之一是:在使用LLM进行评估时,提示(Prompt)的设计至关重要。它不仅影响评分的准确性,更深刻地影响了模型对任务的理解和执行。
具体来说,研究者们发现,仅仅改变输出指令的顺序,就能显著影响LLM的评分结果。这一发现对Prompt工程师们来说无疑是一记惊雷:我们习以为常的提示结构可能需要彻底重新思考。研究团队使用了多个GPT模型版本进行实验,结果显示不同版本的模型对提示的敏感程度各不相同。这一发现对Prompt工程师们提出了新的挑战:我们可能需要为不同的模型定制不同的评估策略。- GPT-3.5-turbo-0613和GPT-4-0613表现出明显的顺序敏感性
- 而GPT-3.5-turbo-1106和GPT-4-1106-preview的敏感度相对较低
这一发现强调了在设计评估系统时需要考虑具体使用的模型版本。
这也意味着,在设计评估系统时,我们不能简单地假设一种方法适用于所有模型。相反,我们需要考虑到模型的特性,甚至可能需要为每个模型版本开发专门的评估提示。研究还揭示了另一个关键因素:模型对评分规则的理解程度。当研究者在提示中加入特定的评分规则时,如"不要仅仅因为问题影响不大就给出低分"。不同模型表现出了不同程度的理解和执行能力。- 当包含这些特殊规则时,不同配置间的评分差异更加明显
- 移除这些规则后,大多数评分变低,且配置间的差异减小
- GPT-4-1106-preview表现出最强的规则理解能力,其评分分布在有无规则的情况下变化最小
- 相比之下,GPT-3.5-turbo系列模型对规则的敏感度更高
这一发现突出了LLM在理解和执行复杂指令方面的能力差异,为Prompt工程师提供了重要参考。这一发现强调了Prompt设计的重要性。它不仅仅是告诉模型"做什么",更重要的是让模型理解"为什么这样做"。对Prompt工程师来说,这意味着我们需要更加精心地设计评分规则,确保模型能够准确理解和执行这些规则。研究的另一个重要方向是提示优化。研究者们探索了两种优化方法:GRIPS和OPRO。这些方法试图通过迭代优化提示,使LLM的评分更接近人类专家的判断。OPRO的方法来自谷歌,我之前有文章介绍过。 谷歌DeepMind重磅:提示工程师必须掌握OPRO,用LLM就能自动优化Prompt|ICLR2024
虽然结果显示优化后的提示确实能在某些情况下提高评分的准确性,但这个过程也带来了新的挑战。例如,如何收集足够的配对数据用于优化?如何确保优化后的提示仍然保持结构化输出?这些问题都需要Prompt工程师们进一步探索。关于输出你也可以看下这篇:如何正确约束输出格式,Deepmind最新:让LLM精准生成任何格式的文本,COLM2024
尽管研究取得了令人振奋的进展,但AI评估领域仍面临诸多挑战:
- 数据收集:获取高质量的人工评分数据仍然是一个巨大挑战。
- 个性化优化:全局优化可能无法满足所有评估场景的需求。
- 结构化输出:如何在优化提示的同时保持输出的结构化是一个棘手的问题。
然而,这些挑战同时也代表着机遇。对Prompt工程师来说,这是一个广阔的创新空间。我们可以探索更智能的数据收集方法,开发针对特定任务的个性化优化策略,或者设计更灵活的输出结构。
1. 重视输出顺序:考虑让模型先给出评分理由,再给出具体分数。
2. 精心设计规则:确保评分规则清晰、具体,且易于模型理解。
4. 迭代优化:利用GRIPS或OPRO等方法持续优化评估提示。根据论文的主要观点,我有一个最佳顺序的的Prompt框架,到群里你会得到这份框架。