最新综述:LLM作为法官,用AI评判AI

AITNT-国内领先的一站式人工智能新闻资讯网站
# 热门搜索 #
AITNT-国内领先的一站式人工智能新闻资讯网站 搜索
最新综述:LLM作为法官,用AI评判AI
8661点击    2024-11-29 09:11

让AI来评判AI,即利用大语言模型(LLM)作为评判者,已经成为近半年的Prompt热点领域。这个方向不仅代表了AI评估领域的重要突破,更为正在开发AI产品的工程师们提供了一个全新的思路。


来自国际数字经济学院、中国科学院计算技术研究所、伦敦帝国理工学院、中国人民大学高瓴人工智能学院的研究者近期发布了一篇关于LLM-as-a-Judge的综述,引用146篇论文从应用现状、评估方法到核心提升策略做了非常全面的研究。我之前介绍过一篇元法官的自我改进的研究Meta与伯克利最新:元奖励Prompt,让LLM作为元法官能自我改进(包含Prompt模板),您也可以看看。


最新综述:LLM作为法官,用AI评判AI


最新综述:LLM作为法官,用AI评判AI


研究者用康德的《判断力批判》和《纯粹理性批判》开篇,它阐述了判断力(Judgment)在认识过程中的功能以及判断力的本质和作用。我解释一下康德这段话的意思。康德首先定义了判断,他认为判断力是在具体经验中应用普遍规则的能力,它是认识过程中的一个核心部分。通过判断力,我们不仅能感知和理解具体事物,还能将这些事物纳入到普遍的知识体系或规律之中。这是人类思维和理解世界的一种基本能力。


判断是将具体事物看作是普遍规律下的一部分的能力。它涉及将事物归纳到规则中的能力,即区分某物是否符合某一规则。

—— 康德,《判断力批判》;《纯粹理性批判》


研究者的论文框架非常清晰(需详尽研究,请移步原文 https://arxiv.org/pdf/2411.15594):


最新综述:LLM作为法官,用AI评判AI


一、为什么我们需要LLM作为评判者?


在传统的AI系统评估中,人工评判一直被视为黄金标准。专业评估人员凭借其丰富的经验和专业知识,能够对AI系统的输出进行全面而深入的评价。然而,随着各种LLM不断升级,AI技术的快速发展和广泛应用,这种评估方式正面临着前所未有的挑战。


首先是规模化问题。以机器翻译为例,一个商用翻译系统每天可能需要处理数百万条文本。如果依靠人工评估,即便组建一个庞大的评估团队,也难以应对如此海量的评估需求。更重要的是,随着评估规模的扩大,人力成本会呈指数级增长,这对许多企业来说都是难以承受的负担。


第二是一致性难题。不同评估者之间往往存在认知差异和主观偏好。比如在评估AI生成的文章时,有的评估者可能更注重内容的准确性,有的则更看重表达的流畅性。这种差异导致评估结果缺乏统一标准,难以进行横向比较。而且,即使是同一个评估者,在不同时间对同一内容的评判也可能产生波动,这进一步加剧了评估的不确定性。


第三个挑战是专业性要求。随着AI应用领域的不断拓展,评估工作越来越需要跨学科知识。以医疗AI为例,评估者不仅要懂AI技术,还要具备专业的医学知识。这种复合型人才极其稀缺,严重制约了AI系统的评估和优化。


正是在这样的背景下,研究者们开始探索让LLM承担评判角色的可能性。这种方法具有多个独特优势:首先,LLM具有强大的知识储备和理解能力,可以胜任多领域的评估工作;再者,LLM可以24小时不间断工作,轻松应对大规模评估需求;最重要的是,同一个LLM在相同的输入下会产生近似一致的稳定输出,这就从根本上解决了评估标准不统一的问题。


二、评估方法的演进:从简单打分到多维度评价


在LLM评判领域的发展历程中,评估方法经历了从简单到复杂、从单一到多元的演进过程。目前,主流的评估方法大致可以分为四类:评分生成、是非判断、配对比较和多项选择。这些方法各有特色,适用于不同的评估场景。


最新综述:LLM作为法官,用AI评判AI


1. 评分生成:定量评估的基石


评分生成是最直观也是应用最广泛的评估方法。这种方法的核心思想是将评估对象的质量量化为具体的分数,使评估结果更加客观和可比较。根据近期的研究发现,评分方式的选择会显著影响评估的效果。


在离散评分领域,研究者们进行了大量实验来确定最优的分值范围。例如,JudgeLM团队的研究表明,1-5分制在大多数场景下能取得最好的效果。这是因为这个范围既能提供足够的区分度,又不会让评估变得过于复杂。而在某些需要更精细区分的场景,如学术论文评审,1-10分制则表现更好。


连续评分则提供了更大的灵活性。以LLaVA-Critic为例,它采用0-100的评分范围,这使得评估结果能更细致地反映质量差异。不过研究也发现,过于精细的分值可能会增加评估的不确定性。因此,在实际应用中往往会将分数归一化到0-1区间,以平衡精确度和可靠性。


特别值得一提的是Likert量表评分法,这是一种多维度评估方法的代表。G-Eval系统就采用了这种方法,从准确性、连贯性、流畅性等多个维度对AI输出进行评分。每个维度使用1-5分的量表,最后通过加权平均得出总分。这种方法不仅能给出整体评价,还能帮助开发者识别具体需要改进的方面。


在具体实践中,评分方法的选择需要考虑多个因素。首先是评估目的:如果是为了快速筛选,简单的高中低三档评分就够用了;如果是为了深入分析和改进,则需要更细致的评分体系。其次是评估对象的特性:对于创意写作这样的主观任务,多维度评分更合适;而对于数学解答这样的客观任务,单一维度的评分可能就足够了。


实践表明,评分生成方法在以下几个方面具有独特优势:


  1. 量化比较:数值化的评分使得不同系统之间的比较变得简单直接
  2. 趋势分析:连续的评分数据便于进行统计分析,发现改进趋势
  3. 反馈明确:具体的分数能为系统优化提供清晰的方向指导


当然,这种方法也存在一些局限。最主要的是,单一的分数可能无法完整反映评估对象的所有特点。此外,不同场景下相同分数的含义可能不同,这就要求在实际应用中建立清晰的评分标准和细则。以下是研究者给出的prompt 模板


最新综述:LLM作为法官,用AI评判AI


2. 是非判断:明确的对错评估


是非判断是评估方法中的一种特殊形式,它要求评估者对评估对象的正确性进行明确的判断。这种方法主要适用于需要明确判断的场景,如知识准确性验证、法律文书审查等。


在实际应用中,是非判断方法可以通过多种方式实现。例如,Reflexion框架通过生成自我反思来提供反馈;知识准确性验证则通过对比已知事实来评估陈述的正确性。这种方法的优点在于能够提供明确的对错判断,有助于快速筛选和优化。


然而,是非判断方法也有一些局限。首先,它可能无法适用于主观任务的评估,因为这些任务往往没有明确的对错标准。其次,即使在客观任务中,也可能存在模棱两可的情况,难以进行明确的判断。以下是研究者给出的prompt 模板:


最新综述:LLM作为法官,用AI评判AI


3. 配对比较:相对评估的利器


配对比较是一种相对评估的方法,它要求评估者从两个或多个选项中选择更好的一个。这种方法主要适用于需要比较不同选项的场景,如产品推荐、文本生成等。


在实际应用中,配对比较方法可以通过多种方式实现。例如,双选项评估要求评估者从两个选项中选择更好的一个;三选项评估则增加了一个平局选项,允许评估者表示两个选项相同。这种方法的优点在于能够提供相对的评估结果,有助于快速比较和优化。


然而,配对比较方法也有一些局限。首先,它可能无法适用于需要绝对评估的场景,因为这种方法只能提供相对的比较结果。其次,即使在相对评估的场景中,也可能存在难以比较的情况,难以进行有效的评估。以下是研究者给出的prompt 模板:


最新综述:LLM作为法官,用AI评判AI


4. 多项选择:复杂评估的解决方案


多项选择是一种复杂评估的方法,它要求评估者从多个选项中选择最好的一个。这种方法主要适用于需要从多个选项中进行选择的复杂评估场景,如用户体验分析、产品设计等。


在实际应用中,多项选择方法可以通过多种方式实现。例如,评估者可以被要求从多个选项中选择最好的一个;也可以被要求对多个选项进行排序。这种方法的优点在于能够提供复杂的评估结果,有助于深入分析和优化。


然而,多项选择方法也有一些局限。首先,它可能无法适用于需要快速评估的场景,因为这种方法需要评估者进行复杂的比较和选择。其次,即使在复杂评估的场景中,也可能存在难以选择的情况,难以进行有效的评估。以下是研究者给出的prompt 模板:


最新综述:LLM作为法官,用AI评判AI


三、模型选择策略


在LLM评判领域,模型选择是至关重要的。不同的模型具有不同的特点和优势,选择合适的模型可以显著影响评估的效果。


1. 通用大模型


通用大模型是LLM评判领域的一种重要选择。这种模型具有强大的知识储备和理解能力,可以胜任多领域的评估工作。GPT-4就是一种典型的通用大模型,它在多个研究中显示出与专业人类评估者相当的表现。


然而,通用大模型也有一些局限。首先,它可能无法适用于需要专业知识的评估场景,因为这种模型虽然具有强大的知识储备,但可能无法理解专业领域的术语和概念。其次,即使在通用评估的场景中,也可能存在难以评估的情况,难以进行有效的评估。


2. 微调模型


主流方案:


  • PandaLM:基于LLaMA-7B微调的专门评估模型
  • JudgeLM:基于Vicuna微调的可扩展评估模型
  • Auto-J:针对多场景构建评估数据的生成式评估模型
  • Prometheus:基于GPT-4构建的细粒度评估模型


微调过程的三个关键步骤:


  1. 数据收集:指令、评估对象、评估结果
  2. 提示词设计:根据评估方案设计模板
  3. 模型微调:使用收集的数据进行训练


四、提升评估可靠性的核心策略


在LLM评判领域,提升评估可靠性是至关重要的。评估可靠性直接影响评估的有效性和可信度。以下是一些提升评估可靠性的核心策略:


1. 提示工程优化


  • 结构化模板:明确定义评估维度
  • 示例引导:提供高质量的few-shot案例
  • 输出约束:采用统一的格式规范


2. 评估流程优化


评估流程优化是提升评估可靠性的一个重要策略。通过优化评估流程,可以显著提高评估的效率和可靠性。以下是几个关键的评估流程优化方案:


a) 多轮评估机制


  • 初始评估:由基础模型进行第一轮评分
  • 交叉验证:使用不同模型对同一对象进行评估
  • 一致性检查:分析不同轮次评估结果的差异
  • 最终综合:根据多轮评估结果生成最终评分


b) 评估标准细化


  • 维度分解:将复杂评估任务分解为多个具体维度
  • 量化指标:为每个维度设定可量化的评分标准
  • 权重分配:根据维度重要性分配不同权重
  • 综合计算:通过加权平均等方式得出最终评分


c) 质量控制机制


  • 随机抽检:定期抽查评估结果进行人工验证
  • 异常检测:建立评分偏差检测机制
  • 校准反馈:根据验证结果动态调整评估参数
  • 版本控制:记录评估模型和标准的迭代历史


d) 评估结果验证


  • 人机对比:与人类专家评估结果进行对比
  • 统计分析:使用统计方法分析评估结果的分布
  • 一致性测试:检验不同评估者之间的评分一致性
  • 时间稳定性:追踪评估结果随时间的变化趋势


通过以上这些优化策略的综合应用,可以构建一个更加可靠和高效的LLM评估体系。这不仅能提高评估结果的准确性,也能为评估过程提供更好的可解释性和可追溯性。


3. 偏见控制


偏见控制是提升评估可靠性的一个重要策略。通过控制偏见,可以显著提高评估的公平性和可靠性。例如,通过使用随机化输入顺序,可以控制位置偏见。


五、LLM评判Agent系统应用


在Agent系统评估领域,LLM作为评判者有两种主要应用方式:一是对Agent的整体过程进行评估,二是在Agent框架的特定阶段进行评估。这两种方式各有特点和应用场景。


最新综述:LLM作为法官,用AI评判AI


1. Agent整体评估方法


a) Agent-as-Judge模式


  • 设计完整的Agent系统作为评估者
  • 通过Agent的认知和决策能力进行全面评估
  • 减少人工参与,提高评估效率
  • 消除thoroughness(全面性)和effort(工作量)之间的权衡


b) 评估维度设计


  • 任务完成质量评估
  • 决策过程合理性分析
  • 资源使用效率评估
  • 交互质量评价


2. 阶段性评估机制


a) 关键阶段评估


  • 规划阶段:评估决策制定的合理性
  • 执行阶段:监控行为执行的准确性
  • 反馈阶段:分析结果与目标的匹配度


b) 交互式评估流程


  • 通过语言与环境进行交互
  • 基于LLM反馈进行决策调整
  • 实时评估和优化执行策略


3. 评估框架组成


a) 核心组件


  • Actor LM:执行具体任务的语言模型
  • Self-reflection LM:自我反思和评估组件
  • LLM Evaluator:专门的评估模型
  • Environment:交互环境


b) 关键功能


  • Planning:任务规划和决策
  • Memory:经验和知识存储
  • Graph:知识图谱构建
  • Search/Retrieve:信息检索能力


4. 实践应用策略


a) 评估数据收集


  • Trajectory:记录完整的行为轨迹
  • Experience:积累交互经验
  • Feedback:收集评估反馈


b) 优化方向


  • 评估标准的动态调整
  • 评估结果的可解释性
  • 评估效率的持续提升
  • 人机协同评估机制


通过这种结构化的评估体系,我们可以全面且高效地评估Agent系统的性能。这不仅帮助我们更好地理解和改进Agent系统,也为Agent技术的发展提供了重要的质量保证机制。


六、提升策略


在直接使用LLM进行评分、选择、配对比较或排名等评估任务时,LLM固有的偏见(如长度偏见、位置偏见和具体性偏见等)会导致评估结果欠佳。为了解决这些问题并提升整体评估性能,研究者建议可以从以下三个方面着手改进。


最新综述:LLM作为法官,用AI评判AI


1. 评估提示词设计策略


a) 优化LLM对评估任务的理解


1.Few-shot提示示例

  • 在提示词中加入高质量评估样例
  • 典型应用:FActScore、SALAD-Bench、GPTScore等
  • 帮助模型更好地把握评估目标和标准


2.评估步骤分解

  • 将整体评估任务分解为小步骤
  • 为每个步骤提供详细定义和约束
  • 代表工作:
  • G-Eval和DHP:使用Chain-of-Thought方法
  • SocREval:采用苏格拉底式方法设计步骤
  • BSM:将评估任务并行分解后合并


3.评估标准分解

  • 将粗粒度标准分解为细粒度子标准
  • 多维度评分后综合
  • 典型案例:
  • HD-Eval:通过层次标准分解对齐人类偏好
  • Hu and Gao:建立11项明确的层次分类系统


4.针对性优化

  • 随机交换内容:解决位置偏见
  • 代表工作:Auto-J、JudgeLM、PandaLM等


5.评估任务转换

  • 将评分任务转换为配对比较任务
  • 通过局部配对比较实现全局排序
  • 代表工作:Liu等人提出的PARIS框架


b) 优化LLM的输出形式


1.结构化输出约束

  • 使用特定格式模板(如"X: Y")
  • JSON字典格式输出
  • 典型应用:G-Eval、DHP、LLM-EVAL


2.提供解释性输出

  • 同时输出评分和解释理由
  • 提升评估结果的可解释性
  • 代表工作:CLAIR、FLEUR等


2. 模型能力提升策略


a) 基于元评估数据集的微调


1.数据集构建方法

  • 从公开数据集采样并修改
  • 使用强大LLM生成训练数据
  • 典型案例:
  • PandaLM:基于Alpaca数据集
  • SALAD-Bench:基于LMSYS-Chat数据集


2.数据增强技术

  • 生成离题版本(OffsetBias)
  • 多路径提示策略(CritiqueLLM)
  • 参考支持和丢弃范式(JudgeLM)


b) 基于反馈的迭代优化


1.模型反馈优化

  • 收集失败模式
  • 使用更强大模型提供反馈
  • 代表工作:INSTRUCTSCORE


2.人机协同优化

  • 人工纠正评估结果
  • 动态更新示例集
  • 典型案例:JADE框架


3. 评估结果优化策略


a) 多重评估结果整合


1.多轮评估

  • 多次独立评估取平均
  • 不同参数设置下的综合
  • 典型应用:
  • PsychoBench:十次独立运行
  • Auto-J:结合多种评判标准


2.多模型投票

  • 使用多个评估模型
  • 通过投票机制整合结果
  • 代表工作:CPAD、分布式同行评议


b) 直接优化输出


1.分数平滑

  • 结合token概率权重
  • 显式分数和隐式概率结合
  • 典型案例:FLEUR评分平滑


2.自验证机制

  • 评估结果可靠性检查
  • 仅保留通过自验证的结果
  • 代表工作:TrueTeacher


通过以上这些策略的综合运用,我们可以显著提升LLM评判系统的性能。这些方法不是互斥的,而是可以相互补充,共同构建更可靠的评估体系。例如,我们可以在直接优化输出的基础上进行多重评估结果整合,从而获得更稳定的评估结果。


七、专业领域应用


LLM评判领域的应用非常广泛,包括金融领域、法律领域、创意内容评估等。


1. 金融领域


在金融领域,LLM评判可以应用于风险评估、合规性检查等场景。例如,通过使用LLM评判,可以快速评估金融文档的风险水平和合规性。


2. 法律领域


在法律领域,LLM评判可以应用于法律文书审查、合同评估等场景。例如,通过使用LLM评判,可以快速评估法律文书的准确性和有效性。


3. 创意内容评估


在创意内容评估领域,LLM评判可以应用于文学作品评价、艺术创作评估等场景。例如,通过使用LLM评判,可以快速评估文学作品的质量和艺术创作的价值。


八、实践建议


以下是一些面向AI应用开发者的实践建议:


1. 评估任务设计


评估任务设计是至关重要的。通过设计合适的评估任务,可以显著提高评估的有效性和可靠性。例如,通过使用结构化模板,可以提高评估的准确性和可靠性。


2. 提示工程优化


提示工程优化是至关重要的。通过优化提示词,可以显著提高评估的准确性和可靠性。例如,通过使用清晰的指令语言,可以提高评估的准确性和可靠性。


3. 质量保证措施


质量保证措施是至关重要的。通过实施质量保证措施,可以显著提高评估的有效性和可靠性。例如,通过使用多轮评估,可以提高评估的准确性和可靠性。


LLM评判领域是一个快速发展的领域,具有广泛的应用前景。通过提升评估可靠性和有效性,可以显著提高LLM评判的应用价值。关于本文如果你有更多问题,欢迎来讨论。


文章来自于“AI修猫Prompt”,作者“AI修猫Prompt“。


最新综述:LLM作为法官,用AI评判AI

关键词: AI , LLM , 人工智能 , LLM-as-a-Judge
AITNT-国内领先的一站式人工智能新闻资讯网站
AITNT资源拓展
根据文章内容,系统为您匹配了更有价值的资源信息。内容由AI生成,仅供参考
1
AI数据分析

【开源免费】DeepBI是一款AI原生的数据分析平台。DeepBI充分利用大语言模型的能力来探索、查询、可视化和共享来自任何数据源的数据。用户可以使用DeepBI洞察数据并做出数据驱动的决策。

项目地址:https://github.com/DeepInsight-AI/DeepBI?tab=readme-ov-file

本地安装:https://www.deepbi.com/

【开源免费airda(Air Data Agent)是面向数据分析的AI智能体,能够理解数据开发和数据分析需求、根据用户需要让数据可视化。

项目地址:https://github.com/hitsz-ids/airda

2
智能体

【开源免费】AutoGPT是一个允许用户创建和运行智能体的(AI Agents)项目。用户创建的智能体能够自动执行各种任务,从而让AI有步骤的去解决实际问题。

项目地址:https://github.com/Significant-Gravitas/AutoGPT


【开源免费】MetaGPT是一个“软件开发公司”的智能体项目,只需要输入一句话的老板需求,MetaGPT即可输出用户故事 / 竞品分析 / 需求 / 数据结构 / APIs / 文件等软件开发的相关内容。MetaGPT内置了各种AI角色,包括产品经理 / 架构师 / 项目经理 / 工程师,MetaGPT提供了一个精心调配的软件公司研发全过程的SOP。

项目地址:https://github.com/geekan/MetaGPT/blob/main/docs/README_CN.md

3
RAG

【开源免费】graphrag是微软推出的RAG项目,与传统的通过 RAG 方法使用向量相似性作为搜索技术不同,GraphRAG是使用知识图谱在推理复杂信息时大幅提高问答性能。

项目地址:https://github.com/microsoft/graphrag

【开源免费】Dify是最早一批实现RAG,Agent,模型管理等一站式AI开发的工具平台,并且项目方一直持续维护。其中在任务编排方面相对领先对手,可以帮助研发实现像字节扣子那样的功能。

项目地址:https://github.com/langgenius/dify


【开源免费】RAGFlow是和Dify类似的开源项目,该项目在大文件解析方面做的更出色,拓展编排方面相对弱一些。

项目地址:https://github.com/infiniflow/ragflow/tree/main


【开源免费】phidata是一个可以实现将数据转化成向量存储,并通过AI实现RAG功能的项目

项目地址:https://github.com/phidatahq/phidata


【开源免费】TaskingAI 是一个提供RAG,Agent,大模型管理等AI项目开发的工具平台,比LangChain更强大的中间件AI平台工具。

项目地址:https://github.com/TaskingAI/TaskingAI

4
微调

【开源免费】XTuner 是一个高效、灵活、全能的轻量化大模型微调工具库。它帮助开发者提供一个简单易用的平台,可以对大语言模型(LLM)和多模态图文模型(VLM)进行预训练和轻量级微调。XTuner 支持多种微调算法,如 QLoRA、LoRA 和全量参数微调。

项目地址:https://github.com/InternLM/xtuner

5
prompt

【开源免费】LangGPT 是一个通过结构化和模板化的方法,编写高质量的AI提示词的开源项目。它可以让任何非专业的用户轻松创建高水平的提示词,进而高质量的帮助用户通过AI解决问题。

项目地址:https://github.com/langgptai/LangGPT/blob/main/README_zh.md

在线使用:https://kimi.moonshot.cn/kimiplus/conpg00t7lagbbsfqkq0