Agent Arena:真实世界中智能体的因果评估
Agent Arena 是一个基于真实世界用户交互数据的新智能体评估框架,采用因果追踪方法对智能体组件进行随机对照试验,从而生成可解释的排行榜。本文详细介绍了其方法论、五个关键信号(确认成功、表扬与投诉、可操控性、Bash 恢复、工具幻觉)以及大量真实使用数据(任务分布、工具调用、代码行数等),并展示了几个高复杂度任务案例。
AI 智能体正越来越多地承担实际工作。从聊天到终端再到 OpenClaw,用户们正在与由模型和包含众多子组件及工具的 harness 组成的复杂智能体进行交互。随之而来的是任务分布的极大扩展。这使得智能体评估变得越来越困难,因为任务覆盖范围和任务复杂性都在同步增长。我们需要一种能够随着使用情况和能力而扩展的智能体评估方法。
今天,我们发布了 Agent Arena 排行榜。Arena 始终专注于现实世界中的评估。为此,Agent Arena 收集并分析了数百万次来自人们在 arena.ai/agent 上使用 Agent Mode 进行实际工作的野外交互——包括软件工程、金融分析等。基于这些在我们平台上运行的智能体的观察,我们得出了第一个 Agent Arena 排行榜。
Agent Arena 排行榜使用的评估方法不同于我们之前的 Arena。它不是依赖于成对投票,而是使用一种我们称之为因果追踪的方法来计算排名。因果追踪将智能体视为一个多组件系统,每个组件选择代表一种可能的处理。我们观察单个点状轨迹并测量各种信号,例如任务成功率、口头反馈、工具错误恢复、工具幻觉等。然后,通过随机化组件选择,我们创建了一个多干预的随机对照试验,在该试验中我们可以聚合测量结果以估计因果处理效果。我们在上图中将这些效果称为“净改进”。因果框架产生了一个可解释的排名,该排名代表了由于组件选择而带来的智能体性能提升。这分解了主编排模型、任何子智能体、图像生成模型以及 harness 中不同元素的贡献,使我们能够将多个信号合并为一个连贯的排行榜。
这个首期排行榜是我们对编排模型(即选择调用哪些工具的主要大语言模型)进行因果评估的结果。智能体 harness 其他方面的排名即将推出。下文统计方法部分包含了更多方法细节。
每个 Agent Arena 会话都包含丰富的反馈流。用户用自然语言与智能体进行迭代,逐轮表达赞同、不满或澄清。他们决定是否下载智能体产生的产物。他们点击明确的“赞同/反对”按钮。当智能体偏离轨道时,他们会发出内联修正。而智能体方面,则与一个不断反馈的环境进行交互:shell 退出码、工具错误、它试图调用的工具不存在等。Agent Mode 使我们能够提取所有这些信号——明确的用户反馈、隐含的用户反馈以及来自智能体环境的反馈。在计算出每个会话中每个信号的结果后,我们使用因果方法将其转化为排行榜,然后汇总成主排行榜。今天,我们首先展示 5 个信号,并计划在不久的将来测量更多信号。
主排行榜汇总了以下信号:
确认成功——用户使用 Arena UI 将任务标记为成功或失败。Arena 在每一步都提供“赞同”和“反对”按钮;我们使用给定任务轨迹的最终赞同或反对来确定结果。(一个会话中可以有多个任务。)
表扬与投诉——用户对智能体的输出表示表扬或投诉。对于每个任务,我们会识别出明确的口头表扬(“看起来很棒”、“这正是我需要的”)或明确的口头投诉(“这坏了”、“你完全误解了”)的消息。如果表扬数量超过投诉,则该任务标记为成功。
可操控性——智能体执行用户修正。当用户发出内联修正(“不,改为做 X”、“你读错了文件”)时,智能体应尝试修复。如果用户接受修复,我们标记修正成功;如果用户拒绝或放弃,则标记为不成功。在实际工作中,错误不可避免——这个信号捕捉了这些错误是否得到快速解决。
Bash 恢复——从 Bash 错误中恢复所需的轮数。当智能体发出因模型故障(而非环境问题)而出现错误的 Bash 命令时,恢复计时开始;我们计算后续的 Bash 调用,直到下一个无错误命令。如果智能体放弃,我们会施加额外的惩罚。
工具幻觉——智能体引用了不存在的工具。这惩罚了编造的工具名称、产生垃圾名称的语法错误以及思维链令牌泄漏到工具字段的情况。如果智能体调用不存在的工具,我们将任务标记为失败。
这五个信号只是起点。我们计划增加更多信号以进一步丰富这些评估,淘汰已过时的信号,并在改进追踪挖掘时对其进行修改。
最后,尽管不是排行榜信号,我们还可以计算智能体部署后的实际成本,以评估帕累托最优性。我们直接计算会话的确切成本。我们发现有些模型在实践中更昂贵,尽管按标价更便宜。这是由于模型行为(例如每步更多步骤)或诱导的用户行为(例如需要更多轮才能达到满意)所致。
现在,我们深入探讨排行榜背后的数据。Agent Arena 是一个实时的真实用户流,请求模型完成工作:编写代码、调试损坏的项目、通过网络进行研究、创建文档、构建前端、分析文件以及迭代多步骤任务。
在最近的 7 天切片中,Arena 看到了 160,480 个 Agent Mode 任务(注意一个会话中可能有多个任务)。最大的类别是代码编写(17.5%)、研究与查找(10.8%)、规划和头脑风暴(10.6%)以及多模态图像/视频工作(10.2%),其次是文档创建(9.1%)和代码调试(8.9%)。仅代码编写就约占 28,000 个任务,还有约 14,000 个代码调试任务和约 17,000 个研究与查找任务。
在 128,244 个会话中,75.6% 使用了至少一个工具——41.1% 运行了 Bash,27.1% 运行了网络搜索。在这一周内,Agent Mode 发出了 200 万个结构化工具调用,包括约 93.6 万次 Bash 调用、约 55 万次文件写入和约 27.5 万次网络搜索。
通过成功的 write_file 调用跟踪,Agent Mode 在过去一周内编写了 4030 万行代码——大约每个编码会话 1000 行。
在过去的 7 天里,会话平均执行约 16.5 次结构化工具调用,而高工具调用会话足够常见,形成了自己的队列:超过 3400 个循环过滤会话在一周内运行了非常长的工具链。这些会话主要是实际工作——53.2% 是编码或仓库调试,39.0% 是产物/文件创建,其余涉及网络合成、终端工作流和数据分析。
最后,约 32% 的近期会话在最终轮结束时至少包含 128k 个输入令牌,22% 至少包含 256k,8% 至少包含 1M。
在一批最重的实际会话样本中,我们看到了:一个实时体育电视节目表网站、一个自主水下航行器自动驾驶仪、一个自托管电影观看列表应用、一个金融研究 RAG 流水线、一个实时学习追踪平台等等。许多会话以用户下载完成的工作空间结束。