自 2022 年底以来,大语言模型(LLMs)凭借其执行通用任务的强大能力,成为众人关注的焦点。不仅限于聊天应用,将这些模型应用于开发各类 AI 应用和软件(如 Langchain, Llama Index, AutoGPT, Voyager)已成为一种趋势。GPT, Gemini, Llama, Mistral 等模型通过与外部世界的交互,如函数调用和执行,展现了其巨大潜力。

伯克利函数调用排行榜(Berkeley Function-Calling Leaderboard,简称 BFCL)[1]是一个用于评估大型语言模型(LLM)在准确调用函数或工具方面的能力的在线平台。BFCL是一个全面评估大型语言模型(LLM)调用函数和工具能力的平台,包括多种编程语言和应用场景。该平台通过提供问题-函数-答案对,评估模型在不同场景下的表现,如简单函数调用、并行函数调用、多函数调用等。此外,BFCL还关注模型的成本和延迟,并在2024年8月19日发布了BFCL V2数据集,解决了偏见和数据污染问题,专注于动态真实世界场景。这个排行榜的特点包括:

  1. 全面评估 LLM:它评估大型语言模型的函数调用能力,涵盖了各种编程语言和应用场景。
  2. 真实世界数据:使用实际数据集进行评估,确保评估的准确性和相关性。
  3. 定期更新:排行榜会根据 AI 技术的最新进展进行更新。
  4. 详细的错误分析:提供对不同模型的优缺点的深入分析。
  5. 模型比较:方便用户在模型之间进行比较,以便做出明智的决策。
  6. 成本和延迟估计:为模型的经济效率和性能提供估计。

排行榜中包括了 2,000 个问题-函数-答案对,涉及多种编程语言(如 Python、Java、JavaScript、REST API)和复杂的使用场景。这些场景包括需要从多个提供的函数中选择一个或多个函数的多个函数调用,以及需要同时进行多个函数调用的并行函数调用。

伯克利函数调用排行榜对于研究人员、开发者和教育机构来说是一个宝贵的资源,可以帮助他们比较和选择最适合其需求的模型,评估模型的经济效率和性能。伯克利函数调用排行榜是 AI 社区的关键工具,它提供了一种透明且数据驱动的评估方法,用于评估和选择最有效的用于编程任务的大型语言模型。通过提供全面的评估、真实世界的见解和实用的比较,它使用户能够做出明智的决策,从而提高其 AI 应用程序的效率和有效性。

2024年9月19日发布的 伯克利函数调用排行榜(BFCL V3)[2]是一个评估大型语言模型(LLM)在多轮和多步函数调用(工具使用)方面能力的重要平台。它允许LLM进行往返交互,通过询问澄清性问题来处理复杂任务,特别是引入了多轮次、多步骤函数调用(工具使用)的基准测试。BFCL V3在评估大型语言模型(LLMs)如何通过调用正确功能与各种场景互动方面取得了关键进展。它允许模型与用户进行来回互动,通过询问澄清问题来导航复杂任务。此外,BFCL V3首次执行API状态验证作为真实情况验证,而不仅仅是通过抽象语法树(AST)和可能的答案列表进行参数匹配。BFCL V3的主要特点包括:

  1. 多轮函数调用:允许模型与用户进行来回交互,处理输入信息,从而处理更动态和真实的用户交互。
  2. 多步函数调用:LLM可以将响应分解为多个步骤,模拟真实世界中AI助手可能需要规划执行路径、请求和提取关键信息,以及处理顺序函数调用以完成任务。
  3. API状态验证:BFCL V3首次执行API状态验证作为地面实况验证。
  4. 数据集组成:包括基础多轮、增强多轮、缺失参数、缺失函数、长上下文多轮和组合等多个类别,旨在创造极端困难但重要的挑战。
  5. 多轮模型推理和执行:评估多轮函数调用模型,包括函数调用模型和提示模型,以及它们在推理过程中的差异。
  6. 状态基础评估:通过比较每个对话轮次后实例的最终状态来评估模型性能。

BFCL V3的这些创新和改进使其成为评估LLM在复杂场景中函数调用能力的重要工具,更多详细信息和数据集可以在伯克利大学的官方网站上找到。

相关链接:

伯克利函数调用排行榜(BFCL)的更多相关文章

  1. USNews2018世界大学1250所排行榜

    USNews2018世界大学1250所排行榜(最全版) 中外学术情报<更多内容2017-10-27 09:00:00 10月24日,USNews发布2018世界大学排行榜,来自全球74个国家或地 ...

  2. 取代 Python 多进程!伯克利开源分布式框架 Ray

    Ray 由伯克利开源,是一个用于并行计算和分布式 Python 开发的开源项目.本文将介绍如何使用 Ray 轻松构建可从笔记本电脑扩展到大型集群的应用程序. 并行和分布式计算是现代应用程序的主要内容. ...

  3. 【译】Meteor 新手教程:在排行榜上添加新特性

    原文:http://danneu.com/posts/6-meteor-tutorial-for-fellow-noobs-adding-features-to-the-leaderboard-dem ...

  4. 各大IT技术博客排行榜

    cnblogs 积分排名前3000名 http://www.cnblogs.com/ 左侧有推荐博客排行 cppblog http://www.cppblog.com/AllBloggers.aspx ...

  5. idapython实现动态函数调用批量注释

    部门小伙伴遇到一个样本需要对动态函数调用就行批量注释还原的问题,通过idapython可以大大的减少工作量,其实这一问题也是很多样本分析中最耗时间的一块,下面来看看如何解决这个问题(好吧这才是今年最后 ...

  6. Lua 排行榜更新

    排行榜: key:玩家名字,val:玩家的数值 local key1 = {"a1", "a2", "b1", "b2" ...

  7. 使用 Redis 实现排行榜功能

    排行榜功能是一个很普遍的需求.使用 Redis 中有序集合的特性来实现排行榜是又好又快的选择. 一般排行榜都是有实效性的,比如“用户积分榜”.如果没有实效性一直按照总榜来排,可能榜首总是几个老用户,对 ...

  8. Redis 排行榜 相同分数根据时间优先排行

      版权声明:本文为博主原创文章,未经博主允许不得转载. 1. 需求 Redis 提供了按分数进行排序的有序集合. 比如在游戏里面,比如战斗力排行,充值排行,用默认的Redis 实现就可以达到需求. ...

  9. [汇编与C语言关系]1.函数调用

    对于以下程序: int bar(int c, int d) { int e = c + d; return e; } int foo(int a, int b) { return bar(a, b); ...

  10. javascript函数调用的各种方法!!

    在JavaScript中一共有下面4种调用方式: (1) 基本函数调用 (2)方法调用 (3)构造器调用 (4)通过call()和apply()进行调用 1. 基本函数调用 普通函数调用模式,如: J ...

随机推荐

  1. php 选择驱动写法

    在 ThinkPHP 5.1 中,若要根据配置文件 sms.conf 中的设置在不同的短信渠道之间进行切换,可以采用以下步骤: 第一步:定义接口 首先,创建一个接口,这个接口将由所有短信渠道类实现.这 ...

  2. 解决 IIS Express 启动错误:“拒绝访问”问题

    报错 Starting IIS Express ... stderr: Failed to register URL "http://localhost:8378/" for si ...

  3. Python中FastAPI项目使用 Annotated的参数设计

    在FastAPI中,你可以使用PEP 593中的Annotated类型来添加元数据到类型提示中.这个功能非常有用,因为它允许你在类型提示中添加更多的上下文信息,例如描述.默认值或其他自定义元数据. F ...

  4. 【FTP】小米手机FTP传输

    设置方法 打开[文件管理],右上角按钮选择[远程管理] 点击设置按钮 默认保持唤醒状态 设置FTP账户的用户名密码 Windows访问: 然后开启服务即可: 手机和电脑连接同一个网络内访问 每次接入网 ...

  5. 【SpringBoot】16 数据访问P4 整合JPA

    DAO面向SpringData操作 Spring Data 项目的目的是为了简化构建基于 Spring 框架应用的数据访问技术, 包括非关系数据库.Map-Reduce 框架.云数据服务等等: 另外也 ...

  6. AI的发展需要有应用和落地场景 —— 李开复:传统公司看不懂技术,大模型落地B端阻碍多

    引自:https://baijiahao.baidu.com/s?id=1801826206644007472&wfr=spider&for=pc "我们投了七八家机器人企业 ...

  7. Ubuntu18.04 环境下 解决VScode中空格长度减小的问题

       问题:   Ubuntu下安装vscode后发现空格特别小,只有正常空格的一半大小 ======================================================= ...

  8. 使用MindSpore_hub 进行 加载模型用于推理或迁移学习

    从官方资料: https://www.mindspore.cn/tutorial/training/zh-CN/r1.2/use/save_model.html?highlight=save_chec ...

  9. mini_imagenet 数据集生成工具 (续)

    续接前文:  mini_imagenet 数据集生成工具 ============================================ 前文接受了mini_imagenet数据集的生成,但 ...

  10. java获取包下所有的类

    1.背景 给一个Java的包名,获取包名下的所有类.. 根据类上的注解,可以展开很多统一操作的业务 2.直接看代码-spring环境下 package com.qxnw.digit.scm.commo ...