尽管开源大型语言模型(LLM)(例如 LLaMA)取得了进步,但它们在工具使用能力方面仍然受到很大限制,即使用外部工具(API)来执行人类指令。原因是当前的指令调整主要侧重于基本语言任务,但忽略了工具使用领域。这与最先进(SOTA)闭源 LLM(例如 ChatGPT)的出色工具使用能力形成鲜明对比。为了弥补这一差距,我们引入了 ToolLLM,这是一个通用的工具使用框架,涵盖数据构建、模型训练和评估。我们首先介绍 ToolBench,这是一个用于工具使用的指令调整数据集,它是使用 ChatGPT 自动构建的。具体而言,构建可分为三个阶段:(i)API 收集:我们从 RapidAPI Hub 收集了 49 个类别的 16,464 个真实 RESTful API; (ii) 指令生成:我们提示 ChatGPT 生成涉及这些 API 的各种指令,涵盖单工具和多工具场景;(iii) 解决方案路径注释:我们使用 ChatGPT 为每条指令搜索有效的解决方案路径(API 调用链)。为了增强 LLM 的推理能力,我们开发了一种新颖的基于深度优先搜索的决策树算法。它使 LLM 能够评估多个推理轨迹并扩大搜索空间。此外,为了评估 LLM 的工具使用能力,我们开发了一个自动评估器:ToolEval。基于 ToolBench,我们对 LLaMA 进行微调以获得 LLM ToolLLaMA,并为其配备神经 API 检索器,为每条指令推荐合适的 API。实验表明,ToolLLaMA 表现出执行复杂指令和推广到未见过的 API 的卓越能力,并且表现出与 ChatGPT 相当的性能。我们的 ToolLLaMA 还在分布外工具使用数据集 APIBench 中展示了强大的零样本泛化能力。代码、训练模型和演示均可在 https://github.com/OpenBMB/ToolBench 上公开获取。
人类和动物之间的区别在于人类使用和创建工具的独特能力。工具可以克服生理局限性,从而创造出宏伟的文明。同样,可以实现具有学习外部工具使用能力的大型语言模型(LLMS)等基础模型,这可能是实现人为的一般智能的关键步骤。以前在该领域的研究主要采用了两种不同的方法来增强LLMS的工具调用能力。第一种方法强调了用于模型微调的相关数据集的构建。相比之下,第二种方法旨在通过封闭式学习策略充分利用LLM的固有推理能力。在这项工作中,我们引入了一种新型的工具调用管道,旨在控制Massive Real-World API。本管道反映了人类任务解决过程,解决了复杂的现实生活用户查询。在每个步骤中,我们指导LLMS总结所达到的结果并确定下一步行动。我们将此管道称为“从摘要到动作”,Sum2act简称。我们对工具基台基准的SUM2ACT管道的经验评估显示出显着的性能改进,超过了诸如REACT和DFSDT之类的已建立方法。这重点介绍了Sum2ACT在增强复杂现实世界任务的LLM方面的有效性。