大型语言模型在NLP任务中表现优异,但在算术和事实查找等功能上不如小型专用模型。为此,论文提出了Toolformer模型,它能自学使用外部工具,如计算器、问答系统等,以提升在零样本或少量样本设置下的性能。Toolformer通过自我监督学习工具使用,无需大量标注,显著提升了零样本性能,同时保持语言建模能力,实现了动态工具调用以补充其功能不足。
1 Toolformer的构建
(1)模型训练:
Toolformer基于预训练的GPT-J模型,通过微调使得模型学会何时、如何及为何调用特定的API,并且如何将API返回的结果融入到未来的预测中。这个过程是自我监督的,仅需少量的API调用示例进行学习。
(2)API调用学习:
Toolformer被设计为能判断应该调用哪个API,何时调用,传递哪些参数,以及如何利用API返回的信息来改善后续的token预测。模型在训练过程中学习这些技能,而无需额外的人工标注或指令。
(3)工具集成:
Toolformer集成了多种工具,包括计算器用于数学计算、问答系统解决知识查询、搜索引擎获取网络信息、翻译系统处理多语言文本,以及日历服务来处理时间相关的任务。
(4)解码策略:
在解码阶段,Toolformer会尝试启动API调用,不仅当<API>标记是最有可能的下一个词时,而且当它位于最可能的k个词列表中时也会触发调用。这增加了模型使用API的倾向,同时确保每个输入最多只调用一次API,避免陷入无休止的API调用循环。
(5)零样本学习:
Toolformer在一系列下游任务上展现了强大的零样本学习能力,这意味着模型在没有见过具体任务示例的情况下,也能解决问题。这不同于以往需要提供特定任务示例的模型。
2 Toolformer的优点
- 自主学习工具使用:Toolformer无需显式编程即可学会API的选择、调用及结果处理。
- 改进的零样本性能:Toolformer在保持语言建模能力的同时,零样本性能显著提升,可与大型模型竞争。
- 自监督训练:Toolformer仅需少量API示例,通过自监督训练,降低人工标注成本。
- 集成多种工具:Toolformer整合多种工具,提升处理多样化任务的能力。
- 提升数学计算技能:Toolformer使用计算器工具,在数学推理任务上超越其他模型。
- 问题回答能力增强:Toolformer在多种问答任务上表现优于GPT-J及其变体。
- 时间感知和日历使用:Toolformer有效利用日历工具,提升日期相关问题的处理能力。
- 多语言问题回答:Toolformer通过翻译工具,提高多语言问答能力。
- 语言建模性能保持:加入API调用训练后,Toolformer的语言建模性能依旧稳定。
3 结语
Toolformer能够自我学习使用外部工具,如计算器、问答系统和搜索引擎等,通过简单的API接口调用来提升解决多种下游任务的能力,特别是在零样本场景下表现显著提高,同时保持了核心的语言建模能力。
论文题目:Toolformer: Language Models Can Teach Themselves to Use Tools
论文链接:https://arxiv.org/abs/2302.04761
PS: 欢迎大家扫码关注公众号_,我们一起在AI的世界中探索前行,期待共同进步!