尽管定义自定义指标并评估推理、工具使用和记忆等各个组成部分能为您特定的智能体系统提供有益了解,但要了解其在整体中的表现,就需要进行标准化评估。基准测试提供了一种系统化的方式,用于在通用任务和环境中比较不同的智能体架构、底层大型语言模型 (LLM) 或具体的实现选项。这种可比性对于追踪进展、找出架构上的优势或不足以及确保研究和开发的可重现性很重要。然而,对复杂的智能体系统进行基准测试也带来特殊的挑战。智能体与环境交互,进行一系列决策,使用工具,并在可能较长的时间跨度内管理状态。它们的行为可能不确定,成功常包含效率、可靠性和安全性等多方面考量,而不仅仅是简单的任务完成。因此,有效的基准测试需要体现这种交互性和多维特性。标准化基准测试的作用标准化基准测试在智能体系统开发中具有几项重要功能:可比性: 它们提供了一个共同的依据,可以客观比较不同团队开发或使用不同技术的智能体(例如,比较使用GPT-4的ReAct智能体与使用Claude 3的思考树智能体)的性能。可重现性: 它们定义了具体的任务、环境和评估规程,使得研究人员和开发者能够复现实验并验证结果。进展追踪: 基准测试就像里程碑,帮助社区衡量智能体能力随时间的提升。某些基准任务上的持续低表现能表明需要更多研究关注的方面。找出不足: 分析基准测试中不同类型任务的表现,可以显示智能体架构的特定局限(例如,智能体可能擅长网页导航,但在涉及数据库交互的复杂规划中表现不佳)。推动发展: 有挑战性的基准测试可以通过为智能体能力设定较高目标来激发创新。智能体基准测试的分类智能体基准测试通常分为几类,它们常有重叠:特定任务基准测试: 专注于评估在某类任务上的表现,例如预订航班、管理软件库或根据复杂网站导航来回答问题。示例包括WebArena(网页任务)和SWE-bench(软件工程)。"特定能力基准测试: 用于单独测试和衡量智能体的特定能力,如推理、规划、工具使用或记忆访问。例如,ToolBench非常侧重于智能体正确选择和使用各种API的能力。基于环境的基准测试: 提供模拟或真实环境,智能体必须在其中运行以达成目标。这些常需要交互和适应。AgentBench使用几种不同的环境(操作系统、数据库、网页界面)来测试智能体。ALFWorld提供基于文本的游戏环境,需要规划和交互。重要的智能体基准测试几个基准测试已变得重要,用于评估复杂的智能体系统。了解其侧重和结构对于选择适合您评估需求的基准测试很重要。AgentBench"AgentBench是一个全面的基准测试,旨在评估LLM作为智能体在八个不同环境中的表现。其主要优势在于评估智能体在模拟复杂性的交互式环境中的推理和决策能力。"这些环境包含:操作系统 (OS): 需要文件操作、命令行操作和脚本编写的任务。数据库 (DB): 根据自然语言指令查询和操作结构化数据的任务。知识图 (KG): 需要导航和查询知识图以回答复杂问题的任务。数字卡牌游戏: 需要在游戏规则内进行策略规划和决策的任务。逻辑推理谜题 (LTP): 评估标准逻辑之外的创造性问题解决和推理能力的任务。家居管理 (Alfworld): 模拟家庭环境中的任务,需要多步规划和交互。网上购物: 涉及导航电商网站以查找和比较产品的任务。网页浏览: 需要跨网站信息检索和导航的一般任务。AgentBench提供一个框架,用于将智能体与这些环境连接,并主要基于任务成功率进行标准化评估。{"data": [{"type": "bar", "x": ["OS", "DB", "KG", "Web Shop", "Web Browse", "LTP"], "y": [65, 75, 70, 55, 60, 45], "name": "智能体Alpha (ReAct + GPT-4)", "marker": {"color": "#228be6"}}, {"type": "bar", "x": ["OS", "DB", "KG", "Web Shop", "Web Browse", "LTP"], "y": [70, 68, 72, 65, 68, 50], "name": "智能体Beta (ToT + Claude 3)", "marker": {"color": "#40c057"}}], "layout": {"title": "智能体在AgentBench任务上的表现", "xaxis": {"title": "AgentBench环境"}, "yaxis": {"title": "成功率 (%)"}, "barmode": "group", "legend": {"orientation": "h", "yanchor": "bottom", "y": -0.3, "xanchor": "center", "x": 0.5}}}比较智能体在选定的AgentBench任务上的表现,显示出不同的优势。智能体Alpha擅长数据库任务,而智能体Beta在网页导航和逻辑推理谜题中表现更好。ToolBenchToolBench特别关注使用工具的能力。考虑到许多智能体任务依赖于与外部API和工具的交互,ToolBench提供了一个大规模、有挑战性的基准测试,用于评估智能体在以下方面的表现:选择:根据自然语言指令从可能数千个备选项中选择合适的API。生成:为选定的API生成正确的参数。规划:规划一系列API调用以完成复杂请求。ToolBench通过收集大量的API构建。它自动生成不同复杂度的指令(任务),从单个API调用到需要基于API响应进行推理的多步骤工作流。评估侧重于API选择、参数生成以及整体任务完成的正确性。GAIAGAIA(通用AI助手)将自身定位为基准测试,用于评估通用AI助手在对人类来说简单但对大多数高级AI模型来说有挑战的任务上的表现。它强调需要稳健性、工具熟练度(网页浏览、文档交互)、推理和处理歧义的任务。任务旨在模拟诸如根据限制条件规划旅行或回答需要从多个来源整合信息的提问等请求。GAIA侧重于正确性,并避免容易猜测的答案。WebArenaWebArena专门侧重于智能体在真实的网页环境中的表现。它提供多样化的任务集,基于实际网站,涵盖电商、社交媒体、软件开发平台(如GitLab)和内容管理系统内部的信息查询、网站导航和内容操作。智能体与实时、经过特殊处理的网页交互,使其成为衡量实际网页自动化能力的好测试。评估考虑任务成功是否基于达到网页环境中的最终目标状态。有效使用基准测试将您的智能体与基准测试集成通常包含以下步骤:环境搭建: 基准测试常有特定的依赖项(Python版本、库、Docker容器、特定工具的API密钥)。请仔细遵循基准测试作者提供的设置说明。智能体适配: 您需要为您的智能体编写适配器或封装器,使其符合基准测试预期的接口。这通常包含定义智能体如何接收观察结果(环境状态、任务描述)以及如何输出动作(命令、API调用、文本响应)。运行评估: 执行基准测试的评估脚本,该脚本将向您的智能体呈现任务,记录其交互,并计算相关指标。这可能需要大量计算,特别是对于任务多或环境复杂的基准测试。指标计算和解读: 分析输出指标(例如,成功率、pass@k、分数、步数、成本)。检查在不同任务类别或环境中的表现,以了解具体的优势和不足。智能体是在规划、工具选择还是执行过程中失败的?注意潜在问题:基准测试过拟合: 避免过度调整您的智能体,使其仅在基准测试中的特定任务上表现良好。目标是通用能力,而不仅仅是高基准分数。数据泄露: 确保您智能体中使用的LLM未在基准测试的测试集上进行训练,否则会使结果失效。指标局限: 认识到当前指标可能无法涵盖智能体行为的所有理想方面,例如对轻微任务变化的稳健性、安全性或道德考量。局限性和未来方向当前的智能体基准测试提供了有价值的工具,但它们仍在发展中。许多难以评估:长时程规划和一致性: 跨越较长时间或需要复杂记忆管理的任务。复杂的多个智能体协作: 包含沟通和协调策略的场景。适应性和学习: 智能体在没有明确再训练的情况下,适应全新工具或环境的能力如何。创造性和开放式任务: 没有单一预设正确答案的问题。稳健性和安全性: 评估智能体如何处理意外错误、模糊指令或潜在有害请求。未来的基准测试可能会包含更具动态性和交互性的环境,衡量更广范围的能力,包含学习和适应,并可能涉及人机协作评估以衡量更主观的特性。随着智能体系统变得更强大,发展精细和全面的评估方法,包含基准测试,仍然是持续研究的一个重要方面。