0

0

语言模型自己学会用搜索引擎了?Meta AI提出API调用自监督学习方法Toolformer

WBOY

WBOY

发布时间:2023-04-08 11:11:10

|

1174人浏览过

|

来源于51CTO.COM

转载

在自然语言处理任务中,大型语言模型在零样本和少样本学习方面取得了令人印象深刻的结果。然而,所有模型都存在固有的局限性,往往只能通过进一步扩展来部分解决。具体来讲,模型的局限性包括无法访问最新信息、会对事实产生「信息幻觉」、低资源语言理解困难、缺乏进行精确计算的数学技能等等。

解决这些问题的一种简单方法就是给模型配备外部工具,如搜索引擎、计算器或日历。然而,现有方法通常依赖于大量的人工注释,或将工具的使用限制在特定的任务设置下,使得语言模型与外部工具的结合使用难以推广。

为了打破这种瓶颈,近期 Meta AI 提出了一种称为 Toolformer 的新方法,使得语言模型学会「使用」各种外部工具。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

图片

论文地址:https://arxiv.org/pdf/2302.04761v1.pdf

Toolformer 很快就引起了人们的高度关注,有人认为这篇论文解决了目前大型语言模型的许多问题,称赞道:「这是最近几周最重要的论文」。

图片

有人指出 Toolformer 以自监督学习的方式,仅用极少数样本就让大型语言模型学会使用一些 API 和工具,这是非常灵活且高效的:

图片

甚至有人认为 Toolformer 将让我们离通用人工智能(AGI)更近一步。

图片

Toolformer 之所以能获得如此高的评价,是因为它满足了以下的实际需求:

  • 大型语言模型应该在自监督的方式下学习工具的使用,而不需要大量的人工注释。这一点很关键, 人工注释的成本很高只是一方面,更重要的是人类认为有用的东西可能与模型认为有用的东西不同。
  • 语言模型需要更全面地使用不受特定任务约束的工具。 

这明确打破了前文所述的瓶颈。我们来具体看一下 Toolformer 的方法和实验结果。

方法

Toolformer 基于带有 in-context learning(ICL)的大型语言模型从头开始生成数据集(Schick and Schütze, 2021b; Honovich et al., 2022; Wang et al., 2022)的思路:只需给出少数几个人类使用 API 的样本,就可以让 LM 用潜在的 API 调用标注一个巨大的语言建模数据集;然后使用自监督损失函数来确定哪些 API 调用实际上有助于模型预测未来的 token;最后根据对 LM 本身有用的 API 调用进行微调。

由于 Toolformer 与所使用的数据集无关,因此可以将其用于与模型预训练完全相同的数据集,这确保了模型不会失去任何通用性和语言建模能力。

具体来说,该研究的目标是让语言模型 M 具备一种能力 —— 通过 API 调用使用各种工具。这就要求每个 API 的输入和输出都可以表征为文本序列。这允许将 API 调用无缝插入到任何给定文本中,并使用特殊的 token 来标记每个此类调用的开始和结束。

该研究将每个 API 调用表示为一个元组

图片

,其中 a_c 是 API 的名称,i_c 是相应的输入。给定具有相应结果 r 的 API 调用 c,该研究将不包括和包括其结果的 API 调用的线性化序列分别表示为:

图片

其中, 和「→」是特殊的 token。如下图 1 所示,这种方法让 LM 学会了控制各种工具,并为自己选择在何时以及如何使用哪种工具。

图片

给定数据集

图片

,该研究首先将这个数据集转换成一个增加了 API 调用的数据集 C*。这分三个步骤完成,如下图 2 所示:首先,该研究利用 M 的 in-context learning 能力对大量潜在的 API 调用进行采样,然后执行这些 API 调用,再检查获得的响应是否有助于预测未来的 token,以用作筛选标准。筛选之后,该研究合并对不同工具的 API 调用,最终生成数据集 C*,并在此数据集上微调 M 本身。

图片

实验及结果

该研究对各种不同的下游任务进行了实验,结果表明:基于 6.7B 参数预训练 GPT-J 模型的 Toolformer(学习过使用各种 API 和工具)在各种任务上明显优于更大的 GPT-3 模型和其他几个基线。

该研究在 LAMA 基准的 SQuAD、GoogleRE 和 T-REx 子集上对几种模型进行了评估,实验结果如下表 3 所示:

图片

WHEE
WHEE

WHEE是一款AI绘画与图片生成器,提供一站式AI视觉创作服务。WHEE不仅会画也会修图,各种AI修图功能一应俱全。

下载

为了测试 Toolformer 的数学推理能力,该研究在 ASDiv、SVAMP 和 MAWPS 基准上进行了实验。实验表明,Toolformer 在大多情况下都使用了计算器工具,这明显比 OPT (66B)和 GPT-3 (175B)略胜一筹。

图片

在问答方面,该研究在 Web Questions、Natural Questions 和 TriviaQA 三个问答数据集上进行了实验。Toolformer 明显优于大小相同的基线模型,但逊于 GPT-3 (175B)。

图片

在跨语言任务方面,该研究将 Toolformer 和 MLQA 上所有的基线模型进行了比较,结果如下表 6 所示:

图片

为了研究日历 API 的效用,该研究在 TEMPLAMA 和一个名为 DATESET 的新数据集上对几种模型进行了实验。Toolformer 优于所有基线,但没有使用 TEMPLAMA 日历工具。

图片

除了验证各种下游任务的性能改进之外,该研究还希望确保 Toolformer 的语言建模性能不会因为 API 调用的微调而降低。为此,该研究在两个语言建模数据集上进行实验来评估,模型的困惑度如下表 8 所示。

对于没有任何 API 调用的语言建模来说,添加 API 调用无需花费任何成本。

图片

最后,研究人员分析了随着语言模型规模的扩大,向外部工具寻求帮助的能力对模型性能的影响,分析结果如下图 4 所示

图片

感兴趣的读者可以阅读论文原文,了解更多研究细节。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
chatgpt使用指南
chatgpt使用指南

本专题整合了chatgpt使用教程、新手使用说明等等相关内容,阅读专题下面的文章了解更多详细内容。

0

2026.03.16

chatgpt官网入口地址合集
chatgpt官网入口地址合集

本专题整合了chatgpt官网入口地址、使用教程等内容,阅读专题下面的文章了解更多详细内容。

0

2026.03.16

minimax入口地址汇总
minimax入口地址汇总

本专题整合了minimax相关入口合集,阅读专题下面的文章了解更多详细地址。

4

2026.03.16

C++多线程并发控制与线程安全设计实践
C++多线程并发控制与线程安全设计实践

本专题围绕 C++ 在高性能系统开发中的并发控制技术展开,系统讲解多线程编程模型与线程安全设计方法。内容包括互斥锁、读写锁、条件变量、原子操作以及线程池实现机制,同时结合实际案例分析并发竞争、死锁避免与性能优化策略。通过实践讲解,帮助开发者掌握构建稳定高效并发系统的关键技术。

7

2026.03.16

TypeScript类型系统进阶与大型前端项目实践
TypeScript类型系统进阶与大型前端项目实践

本专题围绕 TypeScript 在大型前端项目中的应用展开,深入讲解类型系统设计与工程化开发方法。内容包括泛型与高级类型、类型推断机制、声明文件编写、模块化结构设计以及代码规范管理。通过真实项目案例分析,帮助开发者构建类型安全、结构清晰、易维护的前端工程体系,提高团队协作效率与代码质量。

114

2026.03.13

Python异步编程与Asyncio高并发应用实践
Python异步编程与Asyncio高并发应用实践

本专题围绕 Python 异步编程模型展开,深入讲解 Asyncio 框架的核心原理与应用实践。内容包括事件循环机制、协程任务调度、异步 IO 处理以及并发任务管理策略。通过构建高并发网络请求与异步数据处理案例,帮助开发者掌握 Python 在高并发场景中的高效开发方法,并提升系统资源利用率与整体运行性能。

141

2026.03.12

C# ASP.NET Core微服务架构与API网关实践
C# ASP.NET Core微服务架构与API网关实践

本专题围绕 C# 在现代后端架构中的微服务实践展开,系统讲解基于 ASP.NET Core 构建可扩展服务体系的核心方法。内容涵盖服务拆分策略、RESTful API 设计、服务间通信、API 网关统一入口管理以及服务治理机制。通过真实项目案例,帮助开发者掌握构建高可用微服务系统的关键技术,提高系统的可扩展性与维护效率。

396

2026.03.11

Go高并发任务调度与Goroutine池化实践
Go高并发任务调度与Goroutine池化实践

本专题围绕 Go 语言在高并发任务处理场景中的实践展开,系统讲解 Goroutine 调度模型、Channel 通信机制以及并发控制策略。内容包括任务队列设计、Goroutine 池化管理、资源限制控制以及并发任务的性能优化方法。通过实际案例演示,帮助开发者构建稳定高效的 Go 并发任务处理系统,提高系统在高负载环境下的处理能力与稳定性。

65

2026.03.10

Kotlin Android模块化架构与组件化开发实践
Kotlin Android模块化架构与组件化开发实践

本专题围绕 Kotlin 在 Android 应用开发中的架构实践展开,重点讲解模块化设计与组件化开发的实现思路。内容包括项目模块拆分策略、公共组件封装、依赖管理优化、路由通信机制以及大型项目的工程化管理方法。通过真实项目案例分析,帮助开发者构建结构清晰、易扩展且维护成本低的 Android 应用架构体系,提升团队协作效率与项目迭代速度。

111

2026.03.09

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
【web前端】Node.js快速入门
【web前端】Node.js快速入门

共16课时 | 2.1万人学习

swoole进程树解析
swoole进程树解析

共4课时 | 0.2万人学习

ThinkPHP6.x 微实战--十天技能课堂
ThinkPHP6.x 微实战--十天技能课堂

共26课时 | 1.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号