让ChatGPT长“手”!Meta爆火新论文,让语言模型学会自主用工具

  鱼羊 Pine 发自凹非寺

  量子位公众号 QbitAI

  ChatGPT 爆火,Meta 也坐不住了。

  微软和谷歌正在搜索引擎那边刺刀拼刺刀呢,谁想 Meta 冷不防抛出一篇新论文,顿时吸引全场目光:

  瞄准 ChatGPT 的“软肋”,让大语言模型自行学会了使用工具!

  简单来说,基于 Meta 的这个思路,ChatGPT 这些大语言模型可以缺啥补啥:

  不会算数,就自己掏出计算器计算;需要最新信息,就自己连接搜索引擎搜索……

  是不是有点 AI 自己操作自己内味儿了?

  论文一出,不少 AI 研究者就将其视作“过去几周里最重要的论文”。

  这篇论文给人们打开了思路,让大语言模型未来可以成为所有事情的起点。

  还有网友表示:我老婆原本不太关心 AI,听说 Meta 这论文都惊了。普通人真的得好好想想这事儿了。

  自学工具用法的大语言模型

  这一回,Meta 给这个会使工具的语言模型起名 Toolformer。

  Toolformer 的内核逻辑,总结下来很简单,就是:专业的任务交给专业的工具来做。

  在生成文本的过程中,遇到特定的任务,Toolformer 会直接调用所需工具的 API。

  比如说,在执行这个任务:1400 名参与者,有 400 人通过了测试,占多大比例?(为了让 ChatGPT 掌握数学运算,OpenAI 可没少折腾)

  Toolformer 丝毫不慌,直接“掏出”计算器,现场计算得出结果:29%。

  又或者说,想要备注个事情,只知道是周五,具体日期还不知道?

  没关系,翻出日历查一下就好了。

  甚至翻译任务也可以直接丢给它,各国语言都能够识别并翻译,直接省去了在软件切换语言的工夫。

  除了这些工具之外,Toolformer 还能够调用Q&A以及搜索引擎等工具。

  这时,就已经有网友开始畅想未来了:现在,ChatGPT 版必应能帮你比较酒店价格,那未来有了 Toolformer,预定性价比高的酒店岂不是也可以甩给 AI 去做了。

  不过话说回来,Toolformer 面对不同的任务都能行云流水般地调用对应的工具,它是怎么做到的呢?

  一言以蔽之,Toolformer 经过训练,能够在生成文本中插入 API 调用,直接将任务外包出去。

  在这其中,训练的过程是以自监督的方式完成的。这意味着无需大量人类标注好的数据,Toolformer 只需要少量演示就能学会调用 API。

  具体来说,先给 Toolformer 提供少量已经手动标注好的例子,然后让语言模型在实践中生成一个更大的包含示例的数据集。

  这个过程主要分成三步:

  首先是取样,通俗点讲就是看输入的文本提示中,哪个地方需要调用哪种工具,然后直接将“调用的 API”插入到对应的地方;

  其次是执行,执行上一步的“调用 API”任务,将生成的文本直接插入进去;

  最后是过滤,上一步中工具生成的文本如果对输入文本来说用处不大的话,就可以直接 pass 掉,保留对文本有用的地方。

  这样一来,基于这些有用的数据集,Toolformer 便可以对预先训练好的大语言模型进行微调。

  讲了这么多,Toolformer 的真实效果到底如何,有没有一个横向的数据对比?

  论文将 Toolformer 和多个其他大语言模型,包括 GPT-J,OPT(66B)以及 GPT-3(175B)进行了对比,比较了它们在数学、Q&A以及机器翻译等方面的能力。

  结果显示,在学习使用工具后,GPT-J 的零样本学习性能的到了显著的提高。

  △Toolformer:是在 GPT- J 上微调,并加强了 CCNet 子集中的 API 调用/ Toolformer (disabled):同上,但解码期间禁用 API 调用

  并且在大多数任务上性能都有明显提高,在一些下游任务中 Toolformer 甚至已经超过了 GPT-3。

  “未来大语言模型发展的重要分支”

  说到这里,不知道你怎么看这件事儿。

  有不少网友是已经按捺不住,想着去拔 AI 电源了。

  而引发更多讨论的,是这样一种观点:Toolformer 可能是未来 LLM(大语言模型)发展的一个重要分支。

  大语言模型进化出使用工具的能力,知道应该在何时、使用何种工具来实现需求,也就意味着许多在今天还需要人类和 AI 协作完成的工作,未来 AI 都能自己搞定了。

  比如现在还多少有些“人工智障”的语音助手,如果背后有 ChatGPT+Toolformer 的技术能力支撑,那么从挑选符合需求的餐厅,到直接订座,这一系列动作都可以被丝滑地串联起来。

  又比如微软的必应搜索接入 ChatGPT。如果这些大语言模型能充分调用各种 API、使用 UI,那它不仅能帮人们完成搜索,还能完全改变人们操作网页的方式——一切输入都可以化简为自然语言。

  甚至,ChatGPT 这样的模型,借助各种 API 重写自己的代码,也将成为可能。

  事实上,让 AI 掌握工具的使用方法这个研究方向,也并不只有 Meta 在做。

  比如谷歌即将嵌入到搜索中的Bard,背后模型 LaMDA 就内置了一套工具箱,包括计算器、翻译器和访问搜索引擎获取外部信息的接口。

  还有开源项目LangChain,也致力于将大语言模型与外部的计算、知识来源相结合,以开发真正可用的应用程序。

  而现在,Meta 又使大模型对工具的使用“熟练度”、“自主性”,更上一层楼。

  不过,也有网友指出,Toolformer 所展现出的“自学”能力,还是一个初级、“狭义”的版本。

这些模型本身仍然是纯粹的函数:给定相同的输入(包括采样时的随机值),它将总是产生相同的输出。

  有点像是在说,一个大语言模型能学会将特定领域的语言作为其自然语言的一部分,以此纳入来自外部工具的知识。

  One More Thing

  Meta 新论文炸场,还挑动了人类的“反思”神经。

  这不,新鲜梗图已经出炉:

人类在沉迷,而机器在学习。

  论文地址:

  https://arxiv.org/abs/2302.04761

  参考链接:

  [1] https://twitter.com/timo_schick/status/1624058382142345216

  [2] https://twitter.com/mathemagic1an/status/1624870248221663232

  [3] https://twitter.com/Tisoga/status/1624543837745192960