TellWorldAI 世界档案
问档案English

首页›论文

论文arXiv

《Toolformer:语言模型能自学使用工具》

2023 年的一篇论文,让语言模型自学决定何时调用计算器、搜索引擎等外部工具,并把返回结果融入后续文本生成。

arXiv 编号 2302.04761 时代 生成式 AI 普及

要解决的问题

语言模型的训练目标很单一:给定前面的文本,预测下一个词元(token)。这个目标很有力,但它和「算出一个数」「查到一条事实」并不是一回事。论文《Toolformer:语言模型能自学使用工具》指出了这里的一个反差:语言模型在算术、事实查找这类基本功能上反而吃力,而这些任务恰恰是简单得多、小得多的模型所擅长的[1]。计算器给出的乘积是精确的,检索系统返回的是已经存好的答案;语言模型给出的则是当下最可能的那个词元,它可以很流畅,同时是错的。

做法

Toolformer 是一个被训练来做四件事的模型:决定调用哪些 API(应用程序接口)、什么时候调用、传什么参数,以及怎样把结果最好地融进接下来的词元预测里[1]。API 是一段约定好的接口,让一个程序可以请求另一个程序做事,并拿回结果。这个设计的关键在于,上面四个决定都是学出来的,而不是写死的规则——没有人会预先规定「遇到一串数字就要做乘法」。

可以粗略想象它在实际文本里的样子:模型写着一段话,写到某处需要一个算术结果,于是发出一次对计算器的调用,拿回那个数,再带着这个数继续往下写,就好像它本来就知道这个数一样。对其他几种工具,行为形状是类似的。

训练方式

这个方法值得一提的地方在于训练是自监督的,每个 API 只需要少量示例就够了[1]。自监督的意思是监督信号来自数据本身,而不是靠人工标注的成对样本;少量示例只用来告诉模型一次工具调用长什么样,之后候选调用由模型自己生成、自己评估取舍。作为起点的模型是预训练好的 GPT-J,参数量 6.7B,训练数据取自 CCNet 的一个子集[1]。

用到的工具与结果

这项工作把多种工具接了进来:一个计算器、一个问答系统、两个不同的搜索引擎、一个翻译系统和一个日历。借助这些工具,Toolformer 在多种下游任务上的零样本(zero-shot)表现有明显提升,同时没有牺牲它原本的语言建模能力[1]。零样本指的是让模型去完成一个它没有被专门训练过的任务,测试时不提供任何针对该任务的示例。这句话的后半截和前半截同样重要:学会调用工具并没有以牺牲普通文本预测为代价,模型没有变得比原来更不会写字。

意义

它的贡献与其说是一个基准分数,不如说是一套做法。此前使用外部工具的系统,工具调用通常由人设计:某个程序决定何时去查数据库,再把结果喂给模型。Toolformer 把这个决定变成模型学习内容的一部分——选哪个工具、何时调用、传什么参数、怎样把答案接回文本,全都归到模型自己的下一词元预测里。论文把这件事表述为语言模型自学使用工具[1]。这个表述引出一个更一般的问题:能力究竟该从哪来——只是把模型做得更大,还是让模型在任务需要时,把活儿交给专门的、更小的、更可靠的软件去办。

注释与来源

  1. Toolformer: Language Models Can Teach Themselves to Use Toolshttps://arxiv.org/abs/2302.04761

引用本页: 《Toolformer:语言模型能自学使用工具》. TellWorld, https://www.tellworld.net/zh/papers/toolformer-2023. 更新于 2026-11-08