17 天前

ToolLLM:助力大型语言模型掌握16000多个真实世界API

Yujia Qin, Shihao Liang, Yining Ye, Kunlun Zhu, Lan Yan, Yaxi Lu, Yankai Lin, Xin Cong, Xiangru Tang, Bill Qian, Sihan Zhao, Lauren Hong, Runchu Tian, Ruobing Xie, Jie Zhou, Mark Gerstein, Dahai Li, Zhiyuan Liu, Maosong Sun
ToolLLM:助力大型语言模型掌握16000多个真实世界API
摘要

尽管开源大型语言模型(LLMs),如LLaMA,在多个方面取得了显著进展,其在工具使用能力方面仍存在明显局限,即无法有效调用外部工具(如API)来完成人类指令。其根本原因在于,当前的指令微调(instruction tuning)主要聚焦于基础语言任务,而忽视了工具使用这一关键领域。这与最先进的闭源大模型(如ChatGPT)所展现出的卓越工具使用能力形成鲜明对比。为弥合这一差距,我们提出ToolLLM——一个涵盖数据构建、模型训练与评估的通用工具使用框架。我们首先构建了ToolBench,这是一个面向工具使用的指令微调数据集,其构建过程完全基于ChatGPT自动完成。整个构建流程可分为三个阶段:(i)API收集:从RapidAPI Hub中收集了涵盖49个类别的16,464个真实世界RESTful API;(ii)指令生成:利用ChatGPT生成多样化、包含这些API的指令,覆盖单工具与多工具使用场景;(iii)解决方案路径标注:通过ChatGPT自动搜索并标注每条指令对应的合法解决方案路径(即一系列API调用序列)。为进一步提升大模型的推理能力,我们设计了一种基于深度优先搜索的新型决策树算法。该算法使大模型能够评估多种推理路径,并有效扩展搜索空间,从而增强其规划与决策能力。此外,为实现对大模型工具使用能力的自动化评估,我们开发了ToolEval评估工具。基于ToolBench数据集,我们对LLaMA模型进行微调,得到LLM ToolLLaMA,并引入神经API检索器(neural API retriever),以根据输入指令推荐最合适的API。实验结果表明,ToolLLaMA在执行复杂指令方面表现出色,具备良好的泛化能力,能够有效应对未见过的API,其性能与ChatGPT相当。此外,在分布外(out-of-distribution)的工具使用数据集APIBench上,ToolLLaMA也展现出强大的零样本泛化能力。

ToolLLM:助力大型语言模型掌握16000多个真实世界API | 最新论文 | HyperAI超神经