东南大学、蚂蚁提出MATEval:多Agent开放式文本评估框架
论文标题:
论文作者:
作者单位:
论文地址:
代码地址:
近期生成式大语言模型(LLMs)的进步令人瞩目,然而,这些大模型生成的文本质量依然存在着一系列的问题。评估这些模型生成的文本质量,尤其是在开放式文本中,始终是一个重大挑战。
针对这一点,近期的工作探索了使用 LLMs 作为评估器的可能性。虽然使用单一的 LLM 作为评估代理显示出了潜力,但它充满了显著的不确定性和不稳定性。为了解决这些问题,我们提出了 MATEval:一个“多 agent 的文本评估框架”,其中所有代理均由诸如 GPT-4 之类的 LLMs 扮演。
MATEval 框架模仿人类协作讨论方法,通过整合多个代理的互动来评估开放式文本。我们的框架整合了自我反思和思维链(CoT)策略以及反馈机制,增强了评估过程的深度和广度,并指导讨论达成共识,同时,框架可以生成包括错误定位、错误类型和评分在内的综合评估报告。
实验结果显示,我们的框架超越了现有的开放式文本评估方法,并且与人类评估的相关性最高,这验证了我们的框架在解决评估 LLMs 生成文本方面的有效性。此外,我们的框架也显著提高了文本评估和工业场景中模型迭代的效率。
引言
评估大型语言模型(LLMs)生成的文本一直是一项挑战性任务。传统的手工评估方法不仅耗时、费力,而且成本高昂 [2]。尽管像 BLEU [14]、Rouge [10] 以及 METEOR [1] 这样的方法在机器翻译等场景中取得了成功,但这些自动化评估方法在开放式文本生成的背景下受到限制 [11]。
最近,像 G-Eval [4] 这样的 LLMs 被用作评估器,但这些方法显示出不稳定和不确定的评估效果 [15][16]。即使某些合作框架通过采用多 agent 讨论可以缓解这个问题,例如 ChatEval [3],然而,目前 agent 合作的方法仍限于简单互动,没有充分发挥代理的思考和规划潜力。此外,在多 agent 讨论框架内达成共识仍然是一个挑战性问题。
此外,传统文本评估模型通常只提供一个分数而不解释它,这使得评估人员难以信任这些分数的可靠性。他们仍然需要手动识别错误,显然这在工业场景下会减缓 bad case 的收集速度,进而影响工业场景中模型迭代的速度。
为了解决上述挑战,我们提出了一个多代理文本评估框架(MATEval)。在此框架中,我们模拟了评估 LLMs 生成文本时人类的协作过程,并提出了一种新颖的多 agent 讨论策略。这种策略整合了自我反思 [13] 和思维链(CoT)[17] 概念,因为自我反思专注于理解问题的深度但可能导致思维僵化。同时,基于 CoT 的策略强调问题的细化但可能缺乏对特定问题的深入分析。
因此,我们通过使用提示引导 agent 来分解待评估的问题,并在每轮讨论中只关注一个子问题。在每一轮的讨论中,agent 进行自我反思,考虑同伴的发言以丰富问题理解。这种方法加强了 agent 的自我评估和批判性思维,扩大了他们对开放式文本的评估范围,并使结果更加接近人类评估。
此外,我们的框架在每轮讨论结束时引入了一个反馈机制,以评估讨论的质量和效率,鼓励代理达成共识。我们框架生成的综合评估报告详细说明了错误类型、具体位置、错误解释和相应分数。对于工业应用场景,我们提供了两种报告格式:一个是问题与答案格式,用于策略分析;另一个是文本报告格式,用于帮助业务人员快速识别错误并迭代改进 LLMs。我们的框架在支付宝的故事文本评估任务中取得了显著成果,显著提高了模型迭代的效率。
总结来说,我们的主要贡献是:
1. 我们提出了一个名为 MATEval 的多代理评估框架,通过为 LLMs 生成的文本提供准确的诊断报告,提高了评分的可靠性。该框架不仅促进了工业场景中的模型迭代,而且显著提升了审查效率。
2. 我们提出了一种在多 agent 框架中整合自我反思和 CoT 的新方法。此外,我们创新性地在每轮讨论结束时引入了一个反馈机制,以解决分歧并促进共识的达成。
3. 我们在两个英文和两个中文故事文本数据集上进行了全面的实验,其中一个中文数据集是基于支付宝的童话故事文本数据集构建的。我们的实验结果展示了我们框架的有效性及其与人类评估的高度相关性。
相关工作
传统自然语言生成(NLG)评估:在很长一段时间里,开放式文本评估主要依赖人类注释,这导致了巨大的人力和财力成本。随后的自动化 NLG 评估采用计算模型来评估生成文本的质量,例如 BLEU [14]、ROUGE [10] 和 METEOR [1]。
基于嵌入的度量标准指通过衡量生成文本和参考文本之间的语义相似性来评估生成文本的质量,这种计算基于词或句子嵌入。BERTScore [18] 根据 BERT 的上下文嵌入来计算生成文本和参考文本之间的相似性。RUBERBERT [5] 也基于 BERT 嵌入来通过诸如池化和 MLP 操作等过程,衡量有无参考文本的文本之间的相似性。
基于 LLM 的评估器:GPTScore [4] 利用像 GPT-3 这样的模型来评估文本质量,这基于一个假设,即生成预训练模型根据给定指令和上下文为高质量生成文本分配更高的概率。最近的研究还探索了直接使用 ChatGPT 作为 NLG 评估器的潜力,其中 ChatGPT 直接基于提示对文本进行评分 [15]。G-Eval [12] 展示了使用像 ChatGPT 这样的 LLM 通过思维链(CoT)方法评估 NLG 输出。
多 agent 交互:最近,使用 agent 进行交流和合作以完成特定任务的概念得到了广泛应用。CAMEL [9] 介绍了一个称为角色扮演的合作代理框架,使得各个 agent 能够协作自主地解决复杂任务。ChatEval [3] 将多 agent 方法应用于文本评估,构建了一个多代理评审团,探索了在评估开放式问题和传统 NLG 任务中不同通信策略的影响。
方法
在本节中,我们将提供 MATEval 框架设计的详细阐述,各种策略的使用细节,以及不同角色的功能。
我们的框架主要由具有不同角色的 agent 组成,并结合讨论策略。我们使用的 agent 角色包括评估 agent(Evaluator Agent)、反馈 agent(Feedback Agent)和总结 agent(Summarizer Agent),它们协作完成文本评估任务。
评估 agent 是评估任务中的主体,反馈 agent 在提高讨论质量和促进共识中发挥着至关重要的作用,而总结 agent 对于整合讨论信息、总结并形成评估报告是不可或缺的。在我们的框架中,我们采用了一种整合自我反思和思维链(CoT)的讨论策略。
框架的输入是可能包含各种质量问题的文本。输出是一个详细的评估报告,包含了错误类型、位置、解释和评分。我们以两种格式呈现结果:一种是有利于评估相关性的问答(Q&A)格式,以便我们可以轻松提取相关性分数来计算相似性。另一种是有利于相关业务人员迭代的文本报告格式。他们可以通过阅读分析报告直接了解文本问题并迭代模型,从而提高效率。这在图 1 的右侧部分展示。
3.2 不同角色的应用
在本节中,我们介绍框架内的几个关键角色及其各自的功能。
评估 agent:框架中的核心元素是评估器,我们使用 GPT-4 进行多轮评估和响应,这些响应通过精心设计的提示来引导。评估 agent 存储并处理来自其他agent的消息,使用这些作为对话的历史。每个 agent 不仅接收来自他人的响应,还提供自己的发言,整个过程几乎不需要人工干预。
反馈 agent:反馈 agent 评估每轮讨论的内容和质量。它专注于识别效率低下的对话和分歧。如果检测到问题,它会为后续轮次提出改进建议,通过提示增强效率和共识。
总结 agent:所有讨论结束后,总结 agent 汇总整个过程和结果。它提供了一个问答格式的评估报告,详细说明了各种问题的识别、分析和评分。此外,我们提供了一个包含详细问题描述且易于阅读的综合文本格式评估报告,以帮助在工业场景中改进模型性能。
3.3 反馈机制
反馈机制是我们框架中精心设计的组成部分。在每轮讨论结束时,我们使用提示来指导一个反馈 agent 总结并评估讨论。其功能是引导后续讨论减少重复、提高讨论效率,更重要的是,他需要指导参与者达成共识。所有这些都通过将反馈 agent 的评论传达给参与讨论的其他 agent 来实现。
3.4 结合自我反思和CoT策略
自我反思策略:每个 agent 发言后,它们将进行自我反思的过程。在提示的指导下,agent 通过整合其他 agent 的观点来调整他们的发言。每个 agent 的最终发言被存储起来并用作后续讨论的历史信息。在新一轮讨论中,上一轮的声明被存储为历史信息。
CoT 策略:我们通过提示引导 agent 自主分解问题,并在每轮讨论中只解决一个子问题。同时,每个 agent 的声明被存储并用作后续讨论的历史信息。
结合自我反思和 CoT:如算法 1 所示。结合自我反思和 CoT 是我们框架中采用的重要策略。Agent 根据提示自主分解问题,每轮讨论中聚焦于一个子问题:D(Q) = {Q1, Q2, ..., Qn}, Pi = I(Qi, H),其中 I 代表基于提示形成的初步想法,Q 是评估任务,Qn 是子问题,H 是历史信息。
然后通过自我反思优化他们的想法:Ri = S(Pi, H)。接下来需要更新历史信息:H = H ∪ {Ri}。每轮讨论后,一个反馈提供者评估讨论以减少重复和分歧:E = E(H)。最后,一个总结者汇总所有声明以产生评估报告:Rfinal = Summary(H)。整体提示和讨论流程如图 2 所示。
实验
4.1 实施细节
在 MATEval 框架中,我们选择了 OpenAI 的 GPT-4 作为我们的 LLMs,这得益于它的卓越性能和 API 的可访问性。我们将 temperature 参数设置为 0,以确保结果的可重现性。GPT-4 的易访问性促进了我们实验中有效且连贯的多 agent 交互。
4.2 数据集
我们主要将我们的框架应用于支付宝业务场景中 LLMs 生成的故事文本的评估。因此,在实验中,我们主要关注两个开放式故事数据集:ROCStories(ROC)[6] 和 WritingPrompts(WP)[6]。考虑到 GPT-4 的上下文长度限制和需要存储多轮讨论上下文的需求,我们将 WP 故事截断为前 200 个单词,确保在截断点保持文本的完整性。
为了测试模型的泛化能力,我们在两个中文数据集上也进行了类似的实验:包括基于人类编写的中文故事的每个故事数百个词的 Chinese LOng Text understanding and generation(LOT)[7] 数据集,以及使用支付宝业务数据中的 prompt 字段并利用 GPT-3.5 生成构建的命名为 Ant 的中文童话数据集,后者主要涉及寓言和童话故事。考虑到 GPT-4 的请求速率限制和高使用成本,我们从每个数据集中选择前 200 个故事进行多 agent 讨论实验。
通过使用 GPT-4 接口,我们在不同数据集的 200 个故事文本中引入了五种基本类型的错误,以模拟故事中可能出现的问题。这些错误包括重复问题(REP)、逻辑问题(LINC)、连贯性问题(DCONT)、用词不当(ILC)和事实错误(FER)。
重复问题包括重复的句子或过度使用单词;逻辑问题包括在句子中将名词替换为其反义词以及肯否定的转换;连贯性问题涉及语句顺序错误或不相关内容;用词不当指的是错误使用量词或代词;事实错误表示与既定常识知识矛盾。我们雇佣了五名注释者来评估这些数据集,确保数据与人类偏好相符。其中人工评分和多agent评分遵循相同的标准:从零开始,每个错误扣除一分,对每种错误类型和每个文本的总分进行统计。
4.3 对比方法
有参考度量标准:BLEU [14] 分数用于评估候选文本和参考文本之间的词汇相似性。ROUGE-L [10] 关注最长公共子序列,以评估文本的流畅性和连贯性。而 RUBER-BERT [5],是原始 RUBER 模型的增强版,利用 BERT 的上下文嵌入,包括有参考和无参考版本。有参考版本 RUBER-BERTr,使用 BERT 词嵌入衡量候选回答和参考答案之间的相似性。
无参考度量标准:RUBER 的无参考版本 RUBER-BERTu [5] 使用 BERT 词嵌入预测回答和查询之间的相关性,随后进行池化和 MLP 等操作。基于 BERT 的 UNION [8] 模型区分人类编写的故事和自动生成的负样本,并纠正负样本的干扰。ChatEval [3] 通过多 agent 框架评估开放式问答质量,我们选择其最有效的 One-by-One 方法进行比较。
我们的方法:根据我们的经验,我们比较了各种策略:
单 agent(SA):LLMs 直接评估故事文本,不通过多 agent 讨论。 One-by-One [3](O_b_O):agent 在多轮讨论中依次评估故事,没有任何优化策略。 自我反思(SR):agent 在讨论过程中考虑自己和他人的先前发言并进行自我反思。 思维链(CoT):agent 通过 prompt 分解待评估的问题,在每轮讨论中解决一个子问题。 自我反思 +CoT(SR+CoT):通过结合 CoT 和自我反思策略,agent 首先分解讨论问题,然后每轮讨论中进行自我反思。 在所有这些策略中,我们都在每轮讨论结束时采用反馈机制,以及最终总结。
4.4 实验结果
我们在 ROC 和 WP 数据集上进行的实验结果展示在表 1 中,使用 MATEval 框架的不同策略评估故事文本。我们计算 Spearman(ρ)和Kendall(τ)相关系数来比较模型评估与人类判断的一致性。
分析 ROC 和 WP 数据集上的实验结果,我们得出以下结论:
基于LLMs的方法与传统的 n-gram 和基于 Bert 的方法相比,显示出更好的 Spearman(ρ)和 Kendall(τ)相关性,证明了它们在文本评估中的有效性。多 agent 讨论评估通常在性能上超越单 agent 评估,表明它们显著提高了文本评估质量。
在分析 MATEval 框架内使用的各种策略时,我们发现独立使用自我反思或 CoT 产生了在不同错误类型上不稳定的结果,在某些情况下,这些方法甚至表现不如单 agent 评估。这可能是由于单独应用这些策略时存在的的固有缺陷。例如,自我反思可能导致在多轮讨论中思维僵化,其中 agent 经常之前的内容而没有新见解。
另一方面,单独使用 CoT 通常导致表面化和分散的视角,导致分析效率低下,即 CoT 方法通常只对每种错误类型提供基本分析,而不深入探讨。
自我反思和 CoT 的结合在总体的相关性上取得了最佳表现,特别是在评估逻辑问题、连贯性问题和用词不当方面表现突出。与单 agent 方法相比,它显著改善了连贯性问题的评估,展示了框架对文本连贯性的高敏感度。然而,对于重复和事实错误的相关性较低。agent 经常错误地将情感相似的句子识别为重复,尽管之前有明确的定义。
此外,框架对事实错误的评估受到 LLMs 限制的影响,特别是缺乏外部知识从而影响了常识错误的检测,这突出了未来多 agent 评估框架增强中集成外部知识的必要性。
4.5 消融实验
为了评估 MATEval 中不同模块的有效性,我们在 ROC 数据集上进行了消融实验,包括移除反馈机制、省略 Q&A 格式的解释和不使用多 agent 方法。表 3 显示,完整的 MATEval 框架优于其消融版本,证实了反馈机制、报告的解释和多 agent 方法的必要性。具体来说,这验证了我们的反馈机制在促进讨论共识和提高相关性方面的重要性。也突出了 LLMs 提供评分解释显著增强了评估效果。
4.6 泛化实验
为了验证我们的框架在不同语言和工业领域的泛化能力,我们在两个中文数据集上进行了实验:LOT 和基于支付宝业务数据构建的故事文本数据集 Ant。表 2 中的发现与英文数据集的相似。有趣的是,在中文中,单 agent 评估有时显示出更好的结果。这可能是由于中文语言和句子结构的独特性。这表明对于不同语言,可能需要对 agent 的设置和微调进行调整以达到最佳性能。
4.7 案例研究
为了展示 MATEval 框架在实际工业应用中的有效性,我们选取了一个故事文本的示例进行说明,该示例在表 3 中呈现。在这个示例中,我们将我们的框架与人工评估、单 agent 评估和没有任何策略的 One_by_One 评估方法进行了比较。结果显示我们框架的方法与人类评估保持了基本一致性,而其他方法或多或少都显示出一些遗漏,从而说明了我们的方法与人类评估之间的高度相关性。
结论
我们提出了 MATEval 框架,该框架提高了工业领域中评估由大语言模型(LLMs)生成的开放式故事文本的性能。广泛的实验表明,MATEval 在两个经典故事数据集以及两个中文数据集上的评估结果与人类偏好更为一致,与现有方法相比具有优势。在支付宝的工业场景中,我们的框架显著提高了审查效率和评估准确性,作为一种有效的辅助工具。
在未来的工作中,我们可以在工业领域微调 LLMs 作为 agent 以完成特定领域任务。在解决复杂的领域评估任务时,我们可以使这些特定领域的 agent 相互协作,同时引入外部知识,从而增强它们在应对挑战时的能力和效率。
参考文献
更多阅读
#投 稿 通 道#
让你的文字被更多人看到
如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。
总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。
PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析、科研心得或竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。
📝 稿件基本要求:
• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注
• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题
• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算
📬 投稿通道:
• 投稿邮箱:[email protected]
• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者
• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿
△长按添加PaperWeekly小编
🔍
现在,在「知乎」也能找到我们了
进入知乎首页搜索「PaperWeekly」
点击「关注」订阅我们的专栏吧
微信扫码关注该文公众号作者