Agent 排行榜:评估多领域场景中的 AI 代理
Jensen Huang 称 AI 代理为“数字劳动力”——他并不是唯一认为代理代表 AI 下一个重大突破的科技 CEO。Satya Nadella 认为代理将从根本上改变企业的运营方式。
这些代理可以与外部工具和 API 交互,极大地扩展了它们的实际应用。然而,它们远非完美,并且由于潜在交互的复杂性,评估它们在此领域的性能一直具有挑战性。
我们的代理排行榜使用 Galileo 的工具选择质量指标来评估代理性能,以便清晰地了解不同 LLM 如何处理跨各种维度的基于工具的交互。
我们构建此排行榜是为了回答一个直接的问题:“AI 代理在真实业务场景中的表现如何?”虽然学术基准告诉我们技术能力,但我们想知道哪些模型适用于各种用例。
这个代理评估排行榜有何独到之处?🎯
huggingface.co/spaces/galileo-ai/agent-leaderboard
当前的评估框架解决特定的利基。BFCL 在数学、娱乐和教育等学术领域表现出色,τ-bench 专注于零售和航空场景,xLAM 涵盖 21 个领域的数据生成,ToolACE 则专注于 390 个领域的 API 交互。我们的排行榜将这些数据集综合成一个全面的评估框架,涵盖多个领域和实际用例。
通过整合各种基准和测试场景,我们提供了关于这些模型如何处理边缘情况和安全考虑的可行见解。我们分析成本效益,提供实施指导,并评估业务影响——这些因素对于部署 AI 代理的组织至关重要。我们的排行榜旨在帮助团队决定哪些模型最适合其特定 AI 代理的需求和限制。
新的 LLM 经常发布。我们计划每月更新我们的基准,以使其与正在进行中的模型发布保持同步。
主要见解 💡
我们对 17 个领先的 LLM 进行的分析揭示了 AI 代理如何处理实际任务的有趣模式。我们对专有模型和开源模型进行了 14 个不同基准的压力测试,衡量了从简单 API 调用到复杂多工具交互的一切。
我们的发现挑战了关于模型性能的传统观念,并为使用 AI 代理构建团队提供了实用见解。
工具调用复杂性 ⚙️
工具调用的复杂性远远超出了简单的 API 调用。各种场景挑战了 AI 代理对工具使用做出适当决策的能力
场景识别
当代理遇到查询时,它必须首先确定是否需要使用工具。信息可能已存在于对话历史中,导致工具调用冗余。或者,可用的工具可能不足或与任务无关,要求代理承认局限性而不是强制不适当的工具使用。
工具选择动态
工具选择并非二元对立——它涉及精度和召回率。代理可能正确识别一个必要的工具,但遗漏其他工具(召回率问题),或者在选择适当工具的同时选择不必要的工具(精度问题)。尽管不理想,但这些场景代表了不同严重程度的选择错误。
参数处理
即使工具选择正确,参数处理也会引入额外的复杂性。代理必须
- 提供所有必需的参数并使用正确的命名
- 适当地处理可选参数
- 保持参数值的准确性
- 根据工具规范格式化参数
顺序决策
多步骤任务要求代理
- 确定最佳工具调用序列
- 处理工具调用之间的相互依赖关系
- 在多个操作中保持上下文
- 适应部分结果或故障
这些复杂性突出了为什么工具选择质量不应被视为一个简单的指标,而应视为代理在实际场景中决策能力的多方面评估。
方法论 🔍
我们的评估过程遵循系统化的方法,以确保对 AI 代理进行全面公平的评估。
模型选择:我们首先精心策划了一组多样化的领先语言模型,包括专有和开源实现。这种选择确保我们涵盖了可用技术的全光谱。
代理配置:每个模型都使用标准化系统提示配置为代理,并被授予访问一组一致的工具的权限。这种标准化确保性能差异反映了固有的模型能力,而不是提示工程。
指标定义:我们将工具选择质量 (TSQ) 确立为我们的主要评估指标,重点关注工具选择的正确性和参数使用质量。该指标经过精心设计,旨在捕捉实际性能要求。
数据集精选:我们有策略地从已建立的基准数据集中进行抽样,以创建平衡的多领域评估套件。该数据集测试从基本函数调用到复杂多轮交互的一切,确保全面覆盖代理能力。
评分系统:最终性能得分计算为所有数据集的等权重平均值。这种方法确保没有单一能力主导整体评估,从而提供对代理性能的平衡视图。
通过这种结构化方法,我们提供的见解直接转化为实际实施决策。
我们如何衡量代理的性能?📊
它是如何工作的?
如上所述,工具调用评估需要在各种场景中进行可靠的测量。我们开发了工具选择质量指标,用于评估代理的工具调用性能,评估工具选择的准确性和参数使用的有效性。该框架确定代理是否适当地使用工具完成任务,同时还识别不需要使用工具的情况。
评估使用 GPT-4o 和 ChainPoll 来评估工具选择决策。每次交互都会收集多个独立判断,最终分数代表积极评估的比例。每个判断都包含详细解释,为评估过程提供了透明度。
import promptquality as pq
df = pd.read_parquet(file_path, engine="fastparquet")
chainpoll_tool_selection_scorer = pq.CustomizedChainPollScorer(
scorer_name=pq.CustomizedScorerName.tool_selection_quality,
model_alias=pq.Models.gpt_4o,
)
evaluate_handler = pq.GalileoPromptCallback(
project_name=project_name,
run_name=run_name,
scorers=[chainpoll_tool_selection_scorer],
)
llm = llm_handler.get_llm(model, temperature=0.0, max_tokens=4000)
system_msg = {
"role": "system",
"content": 'Your job is to use the given tools to answer the query of human. If there is no relevant tool then reply with "I cannot answer the question with given tools". If tool is available but sufficient information is not available, then ask human to get the same. You can call as many tools as you want. Use multiple tools if needed. If the tools need to be called in a sequence then just call the first tool.',
}
for row in df.itertuples():
chain = llm.bind_tools(tools)
outputs.append(
chain.invoke(
[system_msg, *row.conversation],
config=dict(callbacks=[evaluate_handler])
)
)
evaluate_handler.finish()
为什么我们需要一个 LLM 来评估工具调用?
基于 LLM 的评估方法能够在各种场景中进行全面评估。它验证了对不足上下文的适当处理,识别何时需要更多信息才能使用工具。对于多工具场景,它检查是否所有必要的工具都已识别并按正确顺序使用。在长上下文情况下,它确保考虑了对话早期阶段的相关信息。当工具缺失或不适用时,它确认代理正确地避免使用工具,而不是强制执行不正确的操作。
此指标的成功需要复杂的功能:在需要时选择正确的工具、提供正确的参数、有效协调多个工具以及识别不需要使用工具的情况。例如,如果所有必需信息都存在于对话历史中,或者如果没有可用的合适工具,则正确的操作是避免使用工具。
数据集中有什么?📁
评估框架采用了来自 BFCL (Berkeley Function Calling Leaderboard)、τ-bench (Tau benchmark)、Xlam 和 ToolACE 的精心策划的基准数据集。每个数据集都旨在测试代理能力的特定方面。理解这些维度对于模型评估和实际应用程序开发都是必要的。
单轮能力
基本工具使用场景评估了理解工具文档、处理参数和执行基本函数调用的基本能力。此测试维度侧重于直接交互中的响应格式和错误处理。此能力对于实际应用程序中的简单自动化任务(如设置提醒或获取基本信息)至关重要。[xlam_single_tool_single_call]
工具选择场景评估模型从多个选项中选择正确工具的能力。此维度检查模型对工具文档的理解以及对工具适用性做出决策的能力。对于实际应用程序,在构建多功能代理时,此能力至关重要。[xlam_multiple_tool_single_call]
并行执行场景检查模型同时编排多个工具的能力。此维度对于实际应用程序中的效率尤其重要。[xlam_multiple_tool_multiple_call]
工具重用场景评估批处理操作和参数变化的有效处理。此方面对于实际应用程序中的批处理场景尤其重要。[xlam_single_tool_multiple_call]
错误处理和边缘情况
无关检测场景测试模型识别工具限制并在可用工具不符合用户需求时进行适当通信的能力。此能力是用户体验和系统可靠性的基础。[BFCL_v3_irrelevance]
缺失工具处理场景检查模型如何优雅地处理所需工具不可用的情况,包括它们传达限制和建议替代方案的能力。[xlam_tool_miss, BFCL_v3_multi_turn_miss_func]
上下文管理
长上下文场景评估模型在扩展交互中保持上下文和理解复杂指令的能力。此能力对于复杂工作流和扩展交互至关重要。[tau_long_context, BFCL_v3_multi_turn_long_context]
多轮交互
基本对话场景测试对话函数调用能力和跨回合的上下文保留。此基本能力对于交互式应用程序至关重要。[BFCL_v3_multi_turn_base_single_func_call, toolace_single_func_call]
复杂交互场景结合了多项挑战,以测试整体稳健性和复杂场景处理。[BFCL_v3_multi_turn_base_multi_func_call, BFCL_v3_multi_turn_composite]
参数管理
缺失参数场景检查模型如何处理不完整信息以及与用户交互以收集必要参数。[BFCL_v3_multi_turn_miss_param]
对 AI 工程师的实际影响 🛠️
我们的评估揭示了在开发 AI 代理时创建健壮高效系统的一些关键考虑因素。让我们分解一下这些基本方面:
模型选择和性能
在复合任务中得分高于 0.85 的高级模型对于处理复杂工作流程至关重要,尽管大多数模型可以有效管理基本工具。在处理并行操作时,重要的是检查每个特定任务的执行分数,而不是依赖整体性能指标。
上下文和错误管理
对于在长上下文场景中表现不佳的模型,实施上下文摘要策略至关重要。当模型在无关性检测或参数处理方面表现出弱点时,强大的错误处理机制变得尤为重要。对于在此领域需要额外支持的模型,考虑实施结构化工作流程以指导参数收集。
安全性和可靠性
实施强大的工具访问控制,特别是对于难以检测无关操作的模型。对于性能不一致的模型,添加验证层有助于保持可靠性。此外,构建错误恢复系统也至关重要,特别是对于难以处理缺失参数的模型。
优化系统性能
根据每个模型处理并行执行和长上下文场景的能力来设计您的工作流程架构。在实施批处理策略时,请考虑模型重用工具的程度,因为这会显著影响效率。
AI 模型的现状
虽然专有模型目前在整体能力方面处于领先地位,但开源替代品正在迅速改进。简单的工具交互在所有模型中都变得越来越可靠,但在复杂的多轮交互和长上下文场景中仍然存在挑战。
这种在不同方面的表现差异强调了根据您的特定用例要求选择模型的重要性,而不是仅根据通用性能指标进行选择。
希望您觉得这很有用,并期待在 LinkedIn、Twitter 和 GitHub 上收到您的反馈。
引用 📄
您可以引用此排行榜:
@misc{agent-leaderboard,
author = {Pratik Bhavsar},
title = {Agent Leaderboard},
year = {2025},
publisher = {Galileo.ai},
howpublished = "\url{https://huggingface.co/spaces/galileo-ai/agent-leaderboard}"
}
更多模型性能见解 📈
推理模型
我们分析中一个值得注意的观察是关于推理模型的。尽管 o1 和 o3-mini 在函数调用能力方面表现出色——分别达到 0.876 和 0.847——但我们遇到了其他推理模型的重大挑战。具体来说,DeepSeek V3 和 Deepseek R1,尽管它们具有令人印象深刻的通用能力,但由于其有限的函数调用支持而被排除在我们的排行榜之外。
这种排除并非反映模型质量,而是基于模型文档中已说明的限制而做出的有意识决定。Deepseek V3 和 Deepseek R1 的官方讨论都明确表示其当前版本不支持函数调用。我们没有尝试工程变通方法或呈现可能具有误导性的性能指标,而是选择等待未来版本提供原生函数调用支持。
这种经验突出表明,函数调用是一种专业能力,不应假定所有高性能语言模型都固有地具备此能力。即使具有出色推理能力的模型,如果未明确设计和训练此能力,也可能无法固有地支持结构化函数调用。最好根据您的用例评估模型以获得最佳选择。
精英级性能 (>= 0.9)
Gemini-2.0-flash 以卓越的 0.938 平均分保持领先地位。它在所有评估类别中表现出卓越的一致性,特别是在复合场景(0.95)和无关性检测(0.98)方面表现强劲。以每百万 token 0.15/0.6 美元的价格,它提供了性能和成本效益的引人注目的平衡。
紧随其后的是 GPT-4o,其得分为 0.900,在多工具处理(0.99)和并行执行(0.98)方面表现出色,尽管每百万 token 的价格显著更高,为 2.5/10 美元。
高性能段 (0.85 到 0.9)
高性能段有几个强劲的竞争者。Gemini-1.5-flash 以 0.895 的惊人指标保持领先,尤其在无关检测(0.98)和单函数性能(0.99)方面表现出色。Gemini-1.5-pro 尽管价格更高,每百万 token 1.25/5 美元,但仍以 0.885 的分数实现了显著的性能,在复合任务(0.93)和单工具执行(0.99)方面表现出色。
o1 尽管定价昂贵,每百万 token 15/60 美元,但其 0.876 的分数和行业领先的长上下文性能(0.98)证明了其地位。新加入的 o3-mini 以 0.847 的分数展现出竞争力,在单函数调用(0.975)和无关检测(0.97)方面表现出色,以每百万 token 1.1/4.4 美元的价格提供了平衡的选择。
中级能力 (0.8 到 0.85)
GPT-4o-mini 以 0.832 的高效率保持着强劲的势头,在并行工具使用(0.99)和工具选择方面尤其令人印象深刻,但在长上下文场景中表现不佳(0.51)。
在开源模型中,mistral-small-2501 以 0.832 领先,在长上下文处理(0.92)和工具选择能力(0.99)方面比其前身有了显著改进。Qwen-72b 紧随其后,以 0.817 的分数在无关性检测(0.99)方面与私有模型匹敌,并在长上下文处理(0.92)方面表现强劲。Mistral-large 在工具选择方面表现出色(0.97),但在复合任务中面临挑战(0.76)。
Claude-sonnet 达到 0.801,在工具缺失检测(0.92)和单函数处理(0.955)方面表现突出。
基础级模型 (<0.8)
此层级包括在特定领域表现良好但整体得分较低的模型。Claude-haiku 以 0.765 的平衡性能和每百万 token 0.8/4 美元的成本效益定价。
开源的 Llama-70B 在多工具场景(0.99)中表现出 0.774 的潜力,而较小的变体,如 Mistral-small(0.750)、Ministral-8b(0.689)和 Mistral-nemo(0.661)则为基本任务提供了高效的选择。
致谢 🙏
我们衷心感谢为本评估框架提供了基准数据集的创建者们:
BFCL:感谢伯克利人工智能研究团队提供的全面函数调用能力评估数据集。
τ-bench:感谢 Sierra Research 团队开发了此专注于实际工具使用场景的基准。
xLAM:感谢 Salesforce AI Research 团队提供的涵盖 21 个领域的广泛大型动作模型数据集。
ToolACE:感谢团队提供的涵盖 390 个领域的全面 API 交互数据集。
这些数据集对于创建用于评估语言模型工具调用能力的全面评估框架至关重要。