图片来源@视觉中国
文|追问NextQuestion
自然语言处理(NLP)曾被誉为“人工智能皇冠上的明珠”,现如今,随着大语言模型(LLM)变得愈发智能和自主,NLP模型似乎已“王气黯然”。
通过广泛的对齐训练,LLM不仅掌握了传统的NLP任务,如问答、自然语言推理和文本摘要,在理解人类意图和执行指令方面也展示出了令人印象深刻的能力。此外,LLM也被用于社交和游戏语境中的各类实验,这些研究引发了公众的广泛兴趣和热烈讨论。人们对智能体LLM寄予厚望,期待它可以超越传统的NLP模型、解决现实世界的种种实际任务。那么,LLM在交互式环境中实际完成挑战性任务的能力究竟如何呢?
近日,来自清华大学、俄亥俄州立大学和加州大学伯克利分校的研究者设计了一个测试工具——AgentBench,用于评估LLM在多维度开放式生成环境中的推理能力和决策能力。研究者对25个LLM进行了全面评估,包括基于API的商业模型和开源模型。他们发现,顶级商业LLM在复杂环境中表现出强大的能力,像GPT-4这样的顶级模型能够处理宽泛的现实任务,明显优于开源模型。研究者还表示,AgentBench是一个多维动态基准测试,目前由8个不同的测试场景组成,未来将覆盖更广的范围,更深入地对LLM进行系统性评估。
▷图源:arXiv官网
▷图注:AgentBench上不同LLM的表现。虽然LLM开始表现出其愈发成熟的能力,但模型之间的差距很大,要实现实际应用仍然任重而道远。左图,几种常见的LLM在AgentBench提供的8种场景中的表现。右图,AgentBench在8种场景中的总得分。虚线表示开源LLM(绿色)与基于API的LLM(橙色)的平均得分。图源:来自论文
AgentBench包含8个不同的环境,其中5个是首次使用的环境:操作系统、数据库、知识图谱、数字卡牌游戏、横向思维谜题(即所谓的“海龟汤”游戏)。其余3个环境是根据已发布的数据集重新编译的,包括家务、网购、网络浏览。
上述所有数据集都经过设计与调整,来模拟交互式环境,使纯文本LLM可以作为自主的智能体运行。此外,AgentBench可以系统地评估LLM的核心能力,包括执行指令、编码、获取知识和逻辑推理能力。
▷图注:AgentBench基本构想示意图。图源:来自论文
与现有的其他基准测试相比,AgentBench专注于通过思想链(Chain-of-Thought,CoT)对LLM进行以实际应用为导向的评估。而这些数据集大多也代表了LLM未来可能的应用前景与发展方向。
1. 操作系统
允许LLM访问和操作终端(terminal)来控制操作系统是一项颇具挑战性的任务。尽管已经有研究尝试将自然语言翻译为Shell命令,但少有研究对真实的可执行环境进行评估。在此数据集中,研究者的目标是在真实操作系统的交互式bash环境(即Ubuntu Docker)中,针对具有确定性答案的人类问题或一系列实现实际目标的操作来评估LLM。
本项研究中,约一半的指令是由人类创建或收集自人类的。而另一半主要是由GPT-4生成的,并通过模块测试进行严格过滤。对于人工指令,研究者首先从Stack Overflow上收集bash或shell标签下的约6000个真实问题和解决方案,然后按网站读者的评分对它们进行排序,并邀请编程专家挑选出有挑战性的问题。研究者最终统计LLM在执行中解决问题的成功率。每个问题最终只包含错误或正确两种状态。
▷图注:AgentBench场景示例。图源:来自论文
操作系统
任务:“查找‘/etc’目录中非空目录的总数。”
动作空间:任何有效的bash命令
观测结果:系统标准输出
2. 数据库
数据库是另一类典型的系统,很多用户都有利用人工智能自动与之交互的需求。因此,检查LLM通过SQL操作真实数据库的能力至关重要。先前的研究非常重视SQL和自然语言之间的转换,或者回答给定单个小型数据库表格中的问题。然而,在AgentBench中,研究者则是在真实的SQL接口和数据库上评估LLM,来模拟现实世界中的场景。
研究者通过合并几个已有的数据库(WikiSQL、WikiTableQuestions、SQA、HybridaQA和FeTaQA)来获取查询(query)及数据库相关信息,从而确保指令和数据的多样性。为了进一步丰富数据集并避免发生泄漏(leakage),研究者使用gpt-3.5-turbo来执行数据增强。在提供表头信息和原始行后,gpt-3.5-turbo会新生成10行数据。使用名称、表头信息和一些SQL示例,研究者要求gpt-3.5-turbo生成5个额外的SQL查询。然后,将获取的SQL语句依此输入gpt-3.5-turbo中,并要求其在不改变原始含义的基础上重写这些语句。最终的数据集包含1599个条目,包含3种基本的数据库操作:选择、插入或更新。研究者最终统计LLM完成指令的成功率。总体成功率是上述3种操作成功率的平均值。
▷图注:AgentBench场景示例。图源:来自论文
数据库
任务:已知奥运奖牌表,提问“美国的奖牌总数是多少?”
动作空间:任何有效的SQL命令
观测结果:MySQL命令行界面输出
3. 知识图谱
智能体需要具备广泛的技能才能处理知识图谱。首先,它需要理解自然语言及其复杂和微妙之处。它还应该能够将复杂的任务分解为更简单、更易于管理的模块。此外,智能体还需要有能力制定计划、制定策略并根据需要进行调整。现在的知识图谱通常规模巨大,致使智能体无法完全感知整个图谱。在这种部分感知的环境下运行,就要求智能体能够利用不完整的信息做出决策并管理不确定性。这就更加需要智能体在决策中表现出足够的灵活性和适应性。考虑到上述挑战,知识图谱可以作为代表性的测试场来评估人工智能体在复杂的现实环境中的决策能力。
为了衡量LLM的决策能力,特别是其在长期规划方面的熟练程度,研究者精心编制了一个数据集,该数据集源自FREEBASE上现有的知识库问答(KBQA)数据集,藉此为LLM配置了一系列知识图谱查询工具。通过借助文献(参考文献18)中给出的方法,研究者可以为每个问题建立相对应的最佳应用工具序列。同时,为了保证任务的高难度,研究者仅保留那些至少需要调用5个工具的问题,最终积累了一个包含1663个问题的数据集,用以测试智能体。
研究者使用F1分数作为主要评估指标,通过比较模型的预测答案与标准答案得出:
除了F1分数外,研究者还评估了结果的精确匹配率,以及模型生成的动作序列的可执行性。如果模型的动作序列在执行时可产生任意一组答案,则其可执行性得分为1.0;如果无法给出答案,则得分为0。
▷图注:AgentBench场景示例。图源:来自论文
知识图谱
任务:“查找与飓风玛丽类似并影响北美东部的热带气旋。”
动作空间:基本知识图谱查询工具
观测结果:查询结果
4. 数字卡牌游戏
游戏,尤其是那些需要策略和规划的游戏,可以作为智能体开发的模拟环境。然而,之前研究中广泛使用的是基于文本的游戏,其主要侧重点在于基础常识。最近的一些研究转而采用现实世界的游戏(例如,MineDojo,一个基于游戏Minecraft的开放式通用人工智能体学习平台)作为环境,但大多数需要超出现有LLM的多模式功能。相反,数字卡牌游戏(例如炉石传说)则是纯文本 LLM 评估的理想选择。数字卡牌游戏通常涉及丰富的卡牌文字描述、回合制比赛以及深思熟虑的获胜策略,这些都在考验模型对游戏规则的理解、操作的逻辑性,以及根据当前情况和过去的游戏经验形成策略决策的能力。在这项工作中,研究者采用了2021年清华大学智能体大赛(THUAC)中使用的简化数字卡牌游戏系统(鱼洋陷役,Aquawar),来评估LLM智能体。在“鱼洋陷役”中,智能体作为玩家,管理一支具有不同天赋的鱼组成的队伍,以回合制形式与另一队玩家(由基准智能体控制)作战。
研究者的评估指标包括对游戏规则的理解,如完成率和平均非法行为次数,也包括更高级别的战略指标,如击败敌方鱼的平均数量、造成的总伤害,还包括最重要的指标——游戏获胜率。
▷图注:AgentBench场景示例。图源:来自论文
数字卡牌游戏
任务:“在鱼洋陷役中使用四张‘鱼’卡打败其他玩家。”
动作空间:四张“鱼”卡和断言
观测结果:战斗过程、“鱼”的状态
5. 横向思维谜题
横向思维谜题,即情境谜题、海龟汤,是一种风靡全球的集体游戏。游戏通常由一个人主持谜题,其他人通过提出与谜语相关的问题来猜测。主持人只能回答“是”、“否”或“无关”。当其中一名玩家恢复谜题的关键情节时,游戏就会终止。它的名字来源于心理学术语“横向思维”,指的是从非传统角度推论事实并促进新想法探索的能力。
在此数据集中,研究者首先设计了一个基于gpt-3.5-turbo的横向思维谜题主持系统,用于自动操作游戏。为了评估LLM的横向推理能力,研究者从网络上整理了一个多样化的谜题数据集。每个样本都由一则故事(即一个谜题。例如,一个男人走进一家餐馆,点了一碗甲鱼汤,吃完后自杀了。他为什么这么做?)和对应的真相组成。研究者将样本分为四个难度级别:简单、中等、困难和专家。对LLM的评估主要围绕衡量LLM智能体推断的结论与事实的的接近程度,以及其发现这些事实的速度。通过这种评估,研究者旨在深入了解LLM横向推理能力的深度和敏捷性。
▷图注:AgentBench场景示例。图源:来自论文
横向思维谜题
任务:“某人关灯睡觉,翌日清早开窗后自杀了,为什么?”
动作空间:任何二元问题
观测结果:“是”、“否”或“不相关”
6. 家务
完成日常家务劳动需要很强的常识知识作为基础,现有的研究已经为语言智能体的评估构建了完备的环境。在AgentBench中,研究者利用经典的ALFWorld物理家庭环境,根据模型在此环境中完成任务的能力对其进行评估。ALFWorld基准测试由旨在模仿家庭场景的文本环境组成,提供了一个交互式环境,智能体可以通过基于文本的界面执行决策任务。
给定家庭环境描述和目标指令之后,智能体的目标是将复杂的高级目标分解为一系列简单行动。每个步骤之后,智能体都会收到环境反馈,从而允许智能体动态调整计划并继续执行后续任务,最终完成主要的目标。
▷图注:AgentBench场景示例。图源:来自论文
家务
任务:“清理肥皂并将其放在台面上。”
动作空间:房间内允许的动作列表,或其他无障碍房间
观测结果:行动后的效果
7. 网购
目前,网上购物已成为现代生活的重要组成部分。网购行为主要包括在真实的电子商务网站上搜索、查看和选择用户想要的商品,需要智能体具有强大的推理和决策能力。研究人员利用Webshop——一个模拟的在线购物环境——来评估语言智能体。该测试环境显示网页的文本观测信息以及智能体可用的操作。智能体可以自由地探索网站并通过可点击的按钮浏览项目,就像在现实世界中一样。
研究人员从亚马逊网站上抓取了大约100万种商品,形成网站的数据库。该测试环境同时收集了12087条人类指令,并将其与目标和预期属性联系起来(更多数据集构建细节请参阅参考文献20)。
▷图注:AgentBench场景示例。图源:来自论文
网购
任务:“寻找一套大号床罩,颜色是红木色,价格小于70元。”
动作空间:搜索(生成关键字)并(从可点击按钮中)点击
观测结果:产品描述;网页
8. 网页浏览
互联网环境是训练和评估智能体的理想沙盒。Mind2Web是一个最近发布的通用基准测试,用于开发和评估能够根据高级用户指令跨各种网站域执行复杂任务的Web智能体。它设计了可行的网站交互动作,例如点击、选择和文字输入,有利于对网页版LLM智能体进行全面评估。Mind2Web涵盖了旅游、信息、服务、购物和娱乐等领域,并参考SimilarWeb上的排名对网页进行整合。同时,Mind2Web聘请注释者根据当前网站提出任务目标,然后将他们的互动痕迹记录为专家演示。
在本研究中,研究人员主要利用Mind2Web进行跨环境的泛化,跨域测试集包含来自73个网站的912个任务,涵盖住房、工作、社交媒体、教育、健康、政府、家庭服务等领域。
▷图注:AgentBench场景示例。图源:来自论文
网页浏览
任务:“在社区中找到一篇最近点赞量超10k的帖子并给它点赞。”
动作空间:1)从网页所有的HTML元素中选择一个;2)单击、键入或选择选项
观测结果:网页HTML(可选:屏幕截图)
为了对现有LLM智能体的能力进行系统性评估,研究人员广泛评估了25个常见的LLM,包括基于API的商业LLM和开源LLM。各种模型在AgentBench中的总体得分及在特定环境中的得分如下图所示。
▷图注:不同模型在AgentBench上的测试结果。顶级商业LLM(例如gpt-4)与中型开源LLM相比优势明显。“VER”代表模型版本;“OA”代表基于所有测试环境的加权平均值得出的整体分数。图源:来自论文
在这个具有挑战性的基准测试中,研究人员惊奇地发现,一些顶级LLM在处理现实世界的环境交互方面具有强大的能力。例如,在AgentBench的7个数据集中,gpt-4呈现出最佳性能;在“家务”环境中,其成功率达到了78%,表明它在该场景下已经具有实际的可用性。至于其他基于API的LLM,尽管它们的性能相对较差,但也可解决部分问题。
然而,对于开源LLM来说,在一些具有挑战性的任务(例如知识图谱、数字卡牌游戏和家务)中,很多模型无法解决任何问题。一般来说,大多数开源LLM在AgentBench中的表现相较于基于API的LLM差距非常明显,甚至表现得最好的开源模型openchat-13b-v3.2,相较于gpt-3.5-turbo,也存在明显的性能差距。虽然最近不少团队声称其开源LLM已经达到了gpt-3.5-turbo和gpt-4的性能,但实际测试结果显示,开源LLM还需继续努力。
在评估中,研究者发现当下LLM智能体普遍面临以下几个挑战,这也许可以作为智能体发展中值得关注的方向。
1.行动的有效性
在研究过程中,研究人员发现模型并不总是遵循指令行事。换言之,模型的预期输出可能并不在可以接受的动作集合之内。而这其中有几个常见错误:首先,模型可能并不能理解任务指令,所以也不尝试输出操作。其次,模型输出一个动作,但这个动作不正确或不完整(例如缺少参数),因此被测试环境拒绝。有些模型还会在一回合内输出多个动作,这也是规则不允许的。确保LLM智能体可以采取有效的行动是一个亟需改进的领域。
2. 可处理的文本长度
一些开源模型可以处理的上下文长度过短,这影响了其在处理相关交互任务上的性能。如果任务具有超出其可处理文本容量的冗长指令和反馈,会导致模型忽略部分潜在有用的信息。因此,扩大可处理上下文的长度可以提高模型的性能。
3. 多轮一致性
有些任务虽然每轮对话都很简洁,但对话轮数较多(例如,家务处理)。一些模型往往会在多轮对话中忘记自己的角色。一个常见的错误是,尽管被要求以智能体的身份进行交互,但却输出道歉并表示无法控制环境,例如“非常抱歉,我对指令感到困惑。作为语言模型,我无法控制操作系统……但我可以提供……”。对于某些模型来说,保持多轮对话过程中的一致性仍然十分困难。
总而言之,虽然顶级LLM已经能够处理复杂的现实世界任务,但对于其开源竞争对手来说,还有很长的路要走。未来以AgentBench为基石,有可能开发出更好、更适用的LLM智能体。
参考文献: