可泛化的工具学习训练方法
为了让模型学会使用工具,训练模型也是一种可行的途径。婴儿学习新工具主要有两种方式,一种是观察模仿成人如何使用工具的过程,另一种是依靠自身的探索,摸索出工具的使用方式。受此启发,工具学习的模型训练范式也可以分成两种:
- 从演示中学习:模型模仿人类使用工具,可采用监督学习、半监督学习或自监督学习来实现。
- 从反馈中学习:环境或人类的反馈可以帮助模型理解其行为的结果并调整其行为,据此改进其工具使用策略,从而增强模型的使用工具能力。强化学习便是实现从反馈中学习的一个代表性解决方案。
工具学习模型训练范式示意图
通用工具学习:工具使用经验的通用性是人类智能的一个重要特征。人类可以从一个工具的使用中总结出通用性的经验,从而帮助其它工具的使用。为了实现通用工具学习,首先要对工具的操作接口进行形式化统一。这样,模型便能够以标准化的方式操作各种工具,并更容易地抽象出工具的基本特征。这可以通过以下三种方式实现。
- 语义接口:模型通过使用特定的文本片段(如动作名称)作为动作触发器,从而来操作工具。
- GUI 接口:模型模仿人类使用图形界面(GUI)来与工具交互。
- 编程接口:模型通过编写代码来使用工具。这种方式具有广阔的应用前景,首先是因为编写代码可以实现复杂的工具使用逻辑,其次通过执行程序可以更加方便地调用外部工具。
在统一工具操作接口的前提下,模型还需要针对具体的任务或领域进一步地适应、细化和专门化其学习的知识。为了达成此目标,有两种解决方法:
- 元工具学习:元工具学习体现了模型的元认知能力,使其能够反思自身的学习过程并在必要时调整新的工具使用策略。通过元认知,模型可以识别工具使用策略中的基本原则或共同模式,并将其迁移到新的任务或领域中去。
- 课程工具学习:课程工具学习则采用逐步学习的方法,让模型从简单的工具开始学习,然后逐渐学习更复杂的工具。这种方法有助于模型理解复杂工具,将其视为简单工具的进阶版。通过课程工具学习,模型能够更有效地识别抽象工具间的共性和差异,从而实现知识和技能的迁移。
开源平台 BMTools
ChatGPT Plugins 的出现补充了 ChatGPT 最后的短板,使其可以支持连网、解决数学计算,被称为 OpenAI 的 “App Store” 时刻。然而,由于目前其支持的工具数量有限,并且仅支持部分 OpenAI Plus 用户,大多数开发者仍然无法使用。
为解决这个痛点,研究团队推出了工具学习包 BMTools,一个基于语言模型的开源可扩展工具学习平台。团队将各种各样的工具(例如文生图模型、搜索引擎、股票查询等)调用流程都统一到一个框架上,使整个工具调用流程标准化、自动化。开发者可以通过 BMTools,使用给定的模型(ChatGPT、GPT4)调用多种多样的工具接口,实现特定功能。
BMTools 不仅支持 OpenAI 的 Plugins,还允许开发者自己扩充工具库。开发者只用编写简单的 python 程序就能轻松构建新的插件功能,并可集成其他来源的外部工具(如 ChatGPT Plugins)。该工具包目前已支持论文中提到的 17 种工具,并在持续维护更新中,未来将支持更多基底模型和面向国内的工具的使用,助力工具学习的前沿学术探索和工程落地。此外,该工具包也已集成最近爆火的 Auto-GPT 与 BabyAGI,并且在 Huggingface Spaces 上可直接试用。
BMTools Huggingface Spaces 演示
基于 BMTools,团队探索了基础模型使用工具的有效性与局限性,并选取了 text-davinci-003 和 ChatGPT 两个代表性基础模型,评估它们在 17 种工具使用场景下的性能表现,实验证明:
1. 在大多数情况下,模型可以通过简单的提示学习如何有效地使用工具,并提高它们的任务性能。2. 对于模型能够利用其内部知识解决的任务,只有在对工具进行正确调用时,模型才会获得性能提升,否则反而会产生负面影响。3.ChatGPT 相比于 text-davinci-003 并没有得到更好的结果。对于知识图谱、在线购物、3D 建模等较为复杂的工具,ChatGPT 和 text-davinci-003 均不够令人满意,需要进一步提升基础模型能力来提升工具的使用能力。
ChatGPT 和 text-davinci-003 工具学习实验结果
前瞻开放讨论
最后,论文从不同角度探讨了工具学习带来的机遇与挑战:
- 工具学习的安全性:在期待基础模型与工具学习结合所带来的生活改变之前,审视其中潜在的风险尤为重要。团队强调了需要防止恶意用户误导模型调用工具,以及提升模型使用工具的可信度等问题。
- AI 创造工具:基础模型可能具有自发创造工具的潜力。一直以来,创造和使用工具被认为是人类智能的独特特征,而基础模型的出现可能颠覆这一观念。越来越多的证据表明,创造工具的能力不再是人类专有的领域。
- 工具学习个性化:模型通常在通用文本语料库上训练,并使用广泛定义的人类偏好进行校准。然而,这种方法无法满足具有不同需求的用户的个性化需求。探索如何实现个性化的工具学习将成为未来研究的重要课题。
- 知识冲突:引入工具后,模型需要解决来自不同来源的知识冲突问题,包括模型自身、外部知识库等。解决不同知识库间的知识冲突,以实现知识的有效整合,是迎接工具学习挑战的关键一步。
- 开放性问题:最后,团队提出了一系列开放性问题,包括:工具能力是否应当内化进模型中?如何准确评判模型的工具使用能力?如何规避工具学习场景下的安全性、隐私性问题?如何在工具学习框架下促进更好的人机协同?
总结
研究团队深入探讨了基础模型的工具学习范式,提出了一个通用的工具学习框架,并重点探讨了其中的重点研究问题。为了展示基础模型在工具使用方面的灵活性与精细性,团队开发了开源的工具学习平台 BMTools,并对 17 个代表性工具进行了实验,通过详细的分析、实验探索,提出了一系列具有前瞻性的问题。我们期待这篇文章能激发更多融合工具与基础模型的研究,助力开创智能化人机协同工作的新篇章。