AI Agent Evaluation (1):智能体评测框架微洞察

最近我们在做一些很有意思的智能体技术研发工作,我们称为“Super Agent”,即超级智能体。使用我们的框架,不但能够构建智能体,还能把它们装配起来形成更加强大的智能体。不过,把成果端得出来还需一些时日。我们希望能赶上在今年十月底在2024 GOSIM China (全球开源创新大会)上发布。‍‍‍‍

Super Agent研发中,我们需要解决的一个问题是:两个Agents完成同一个任务,如何评估哪一个Agent做得更好一些呢?

通过本文,我们梳理智能体评测相关的研究工作,看一看有没有我们可以直接应用或借鉴的。‍‍‍‍‍

AgentBench

f0252b446c592c7f2e9e372ba01fe839.jpeg

简介:

AgentBench主要是清华大学的工作。它评估了8个不同领域中LLM的表现:

  • 基于代码的环境:‍

  • 操作系统(Operating System):将自然语言命令翻译成操作系统bash命令执行。‍‍

  • 数据库(Database):Text-2-SQL,在真实的SQL接口、数据库和多个表上完成任务。

  • 知识图谱(Knowledge Graph):完成基于知识图谱的问答。

  • 基于游戏的环境:

  • 数字卡游戏(Digital Card Game): 让大语言模型成为策略和规划游戏的玩家。‍‍‍‍‍‍‍‍

  • 横向思维谜题(Lateral Thinking Puzzles):让大语言模型成为从非传统角度推论事实并探索新想法的游戏的玩家。

  • 日常生活(House Hold):完成“把锅放在餐桌上”等家务任务。

  • 基于网络的环境:

  • 网上购物(Web Shopping):在电子商务网站上搜索、查看和选择商品。‍‍‍‍

  • 网页浏览(Web Browsing):让大模型为完成任务进行网站交互(比如,点击,选择,键入)动作。

22302e056e4555e68bd8951e37175ec1.png

图:AgentBench概览

观察与思考:‍‍‍‍

  • AgentBench的评估重点不是在智能体本身,而是评估驱动智能体背后的大语言模型在几个领域的能力。

  • AgentBench选取了8个很有代表性的领域,但对于功能千变万化的智能体而言,无法很好地覆盖所有领域。

  • AgentBench对27种大模型的能力测试能为智能体的开发者为他们的应用选取适当的大语言模型提供非常好的参考依据。‍‍

  • AgentBench提供了将评估方法应用到其他领域的代码,对于需要深度评估在某领域的Agent性能的工作而言,可以考虑在AgentBench的基础上构建。

  • 实验环境很复杂。AgentBench利用Docker技术将实验环境稳定下来,方便所有的研究人员统一使用,是一个可以借鉴的好方法。

  • 在AgentBench文章中指出,即使当前最强的大语言模型也无法承担实际可用的智能体的任务("even the strongest gpt-4 is not qualified as a practically usable agent")并指出了造成失败的五个原因:交互历史记录超过LLM的最大上下文长度,智能体不遵循格式说明,智能体选择无效的工具,智能体在多轮任务迭代后仍然无法解决问题。这警醒我们在智能体的设计上要注意提供Memory的功能;在Action/Tool Use方面,要采取相对可靠的方法,即便是牺牲一些灵活性。‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

总之,智能体的范畴远超大语言模型,包括智能体的工作流、智能体的设计模式和智能体的提示工程都会对智能体的性能产生影响,同时智能体还受到其所能使用的工具,所能访问的存储的影响,而AgentBench的评估机制中没有考虑这些因素。

‍ToolEyes

简介:‍

ToolEyes是以复旦大学为主的工作,是一个专为评估多个真实场景中LLMs工具学习能力而定制的细粒度系统。

ToolEyes考察了七个真实场景:文本生成(TG)、数据理解(DU)、实时搜索(RS)、程序操作(AM)、个人生活(PL)、信息检索(IR)和金融交易(FT)。

实际上,Tool Eyes专注于评估智能体在工具方面的能力。在各场景中,Tool Eyes评估了大语言模型在工具的使用中的五个维度:

  1. 格式对齐:大语言模型有没有按格式要求为正确的工具调用生成关键信息。‍‍

  2. 意图理解:评估大语言模型的思维过程与用户需求的相关性和在交互过程中对新提供的信息的适应性。

  3. 行为规划:评估LLMs思维过程的有效性和逻辑完整性。关于

    1. 有效性:包括总结当前状态的合理性,计划下一步行动的及时性,以及计划的多样性。

    2. 逻辑一致性:包括语法健全性、逻辑连贯性和逻辑正确性。

  4. 工具选择:

    1. 审查LLMs的工具选择和必要参数输入是否符合工具文档中概述的要求。

    2. LLMs明确阐明他们选择工具的思维过程是否与选择的工具匹配

  5. 答案组织:在智能体完成任务的最后阶段,LLMs合并整个过程中收集的信息,并对用户的查询提供直接响应。该评估从两个维度展开:1)LLMs及时响应的能力。能不能在指定的迭代次数里顺利完成任务。2) 我们审查LLMs提供的回复质量。

ToolEyes 整理了一个拥有大约 600 个工具的工具库,通过十个LLMs的评估揭示了它们对特定场景的偏好和工具学习中有限的认知能力。有趣的是,扩大模型规模甚至加剧了工具学习的障碍。这些发现提供了旨在推进工具学习领域的指导性见解。

dd96b5bcdd5ed0e0716c63fb963c3172.png

图:ToolEyes评估的七类场景中使用的各类工具

观察与思考:‍‍‍‍‍‍‍‍‍

  • ToolEyes的评估核心是智能体中大语言模型对工具的使用能力,评估的对象也是大语言模型。他们并没有将整个智能体作为目标评估对象。‍‍

  • 对于我们而言,需要评估的是智能体应用的性能。ToolEyes并未提供直接的评估方案。

  • 对于智能体的开发者而言,ToolEyes对十几个大模型在智能体Action和Tool Use方面的工作值得关注,这有助于开发者对驱动智能体应用的大模型的选择。

  • ToolEyes的评估有一部分是由大语言模型进行判定的,对于行为规划的一致性和逻辑有效性程度、大语言模型回复质量高低、以及意图理解水平高低和大语言模型思维链与工具选择的匹配程度等评测维度,ToolEyes都让GPT4来做判官。而我们首要的测试目标,就是智能体结果质量的高低,这种让大语言模型做裁判的方法,我们可以借鉴。

  • 虽然ToolEyes的评测对象(智能体中的LLM)与我们的(智能体)不同,但在对智能体性能进行深入细致地评估时,在工具能力方面可以参考ToolEyes的"格式对齐”,“工具选择”等评估指标和评估方法,以及部分行为规划的工作,或者可以直接使用。

RoTBench

RoTBench简介‍‍

RoTBench也来自于复旦大学,评估智能体中大语言模型面对现实世界不可避免的噪音时对外部工具使用的稳定性。RoTBench建立了五个具有不同的(从干净无噪声到严重噪声等)噪声级别的外部环境,在大语言模型的工具选择、参数识别和内容填充三个关键阶段的弹性的深入分析。对六个广泛使用的模型的实验,评估发现增强LLMs在工具学习中的鲁棒性有迫切需要。

观察与思考:

RoTBench也是对智能体中的语言模型对工具使用的能力,着重于对环境进行控制,通过调整噪声水平,评估智能体中大语言模型准确使用工具的能力。

4f9a3300420cf70de91bd55692b5e911.png

图:RoTBench在实验数据中加噪声的方法:对工具的名称和参数进行各种“折腾”,包括但不限于加、减、换、颠倒字符等等手段。评估大语言模型是否还能正确地选择工具、识别参数、并将参数名、参数名和参数值等进行正确的组装。

‍‍‍‍‍‍‍‍

MT-Bench‍‍

简介

MT-Bench来自于加州大学伯克利分校和圣地亚哥分校、卡内基梅隆大学、斯坦福大学和MBZUAI的团队。MT-Bench探索使用优秀的 LLMs 作为评判者来评估开放式问题的结果。MT-Bench团队研究了LLM作为评判的用法和局限性,他们的结果表明,像 GPT-4 这样的强判断器可以很好地匹配人类偏好,达到超过 80% 的一致性,与人类之间的一致性水平相同。因此,LLM作为评判是一种可扩展且可解释的近似人类偏好的方法。

136777cb6eccc362f858515fbcbc4da0.png

图 :用户和两个 AI 助手(LLaMA-13B(助手 A)和 Vicuna-13B(助手 B))之间的多轮对话,由 MMLU 基准测试中的问题和后续指令发起。然后向 GPT-4 提供上下文,以确定哪个助手回答得更好。

观察与思考:

MT-Bench给出的让大语言模型做裁判的理论基础和方法可以平移到对智能体输出结果进行评估的场景。而且可能是一种最为简单、成本最低、时间最省、资源最省、而且具备一定公正性、适合定制化场景的评估方案。‍‍‍‍‍‍‍‍‍‍

AlpacaEval 和AlpacaEval 2

简介

斯坦福大学的AlpacaEval 是一个全自动化的评估工具,用于根据 AlpacaFarm 数据集评估指令跟踪语言模型。它也采用MT-Bench的基本方法,让大语言模型担任裁判的工作。它因其经过人工验证的高质量评估而脱颖而出,既经济高效又快速。AlpacaEval 计算各种任务中模型的胜率,包括传统 NLP 和指令调整数据集,提供模型能力的全面衡量。

00649c2d1847e4663501d53fb341b669.png

图:Alpaca Eval概览

观察与思考:

Alpaca Eval和Alpaca Eval 2改进版的全自动的测评方法实在是让使用者喜爱,因为它太方便了。

评估两个模型做任务的胜率的评估机制非常适合我们将两个智能体一较高下的机制。不过,Alpaca Eval测评所依赖的数据集仍然是针对大语言模型测试任务而设计,不能直接用于更加定制化的智能体的测评。

Alpaca Eval测评数据的组织也很简单,基本上由  “任务描述”,“LLM1的结果”,“LLM2的结果”,“LLM1胜/负”的结构化数据组成,数据集比较容易准备。

因此,我们认为一个可能方法是沿用Alpaca Eval的方法,将其测评数据集替换为智能体的测评数据集,就可以成为快速有效测评智能体的目的。

总结与思考‍‍‍‍‍‍‍‍‍‍‍‍‍

在我们的初步调研中,并没有发现以AI智能体为对象的完善测评体系。当前的相关工作(如Agent Bench等)多以在智能体中的大语言模型为对象进行测评。其中,有一些工作(如ToolEyes, RoTBench等)则将测评重点放在了Tool Use等智能体的关键能力上。‍‍‍‍‍

我们认为,由于智能体高度定制化的特点,以及比LLM更加复杂的元素和机制(如Prompt的影响,Memory的影响,Task Planning的影响,以及如Reflection,React等不同的设计模式的影响),并不能简单地用大语言模型评测来替换智能体评测。‍‍‍‍‍‍‍

幸运的是,虽然MT-Bench依然是以大语言模型为测评对象,但它提供了用优秀大语言模型作为评估者的理论依据,Alpaca Eval更进一步提供了一个可借鉴的系统化和高度自动化的方法。‍‍‍‍‍‍‍‍‍‍‍

本文尝试研究了当前的智能体测评框架,Benchmarks和方法。下一步,我们将了解现有的智能体们是如何进行测评的。‍‍

部分相关材料:

  • AgentBench: Evaluating LLMs as Agents, https://arxiv.org/abs/2308.03688

  • ToolEyes: Fine-Grained Evaluation for Tool Learning Capabilities of Large Language Models in Real-world Scenarios, https://arxiv.org/abs/2401.00741

  • RoTBench: A Multi-Level Benchmark for Evaluating the Robustness of Large Language Models in Tool Learning, https://arxiv.org/abs/2401.08326

  • Judging LLM-as-a-Judge with MT-Bench and Chatbot Arena, https://arxiv.org/abs/2306.05685

  • AlpacaEval by Stephen M. Walker II, https://klu.ai/glossary/alpaca-eval

  • Length-Controlled AlpacaEval: A Simple Way to Debias Automatic Evaluators, ‍‍‍‍‍‍https://arxiv.org/abs/2404.04475


437a3661c5d50f7ef87261b432e73f97.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值