赶上最新的AI论文

LATM使用LLM来生成和运行扩展工具

LATM使用LLM来生成和运行扩展工具

大型语言模型

三个要点
✔️ 通过与外部工具结合来扩展LLM的能力正在进行,但通过让LLM自己生成这些工具,目的是以更广泛和更灵活的方式扩展其能力
✔️ LATM有工具生成、工具使用和工具选择的部分,而工具生成和工具利用可以使用不同的LLM
✔️ 虽然它可以是一个强大的工具,但也提出了更深层次的伦理、安全和控制问题。希望可以采取适当的措施来扩大其使用范围

Large Language Models as Tool Makers
written by Tianle CaiXuezhi WangTengyu MaXinyun ChenDenny Zhou
(Submitted on 26 May 2023)
Comments: Code available at this https URL
Subjects:  Machine Learning (cs.LG); Artificial Intelligence (cs.AI); Computation and Language (cs.CL); Machine Learning (stat.ML)

code: 

本文所使用的图片要么来自论文、介绍性幻灯片,要么是参考这些图片制作的。

概述

最近的研究表明,使用外部工具来提高大规模语言模型(LLMs)的问题解决能力是有潜力的。然而,该领域以前的研究受限于现有工具的可用性。本研究通过提出一个闭环框架,即LLMs As Tool Makers(LATM),迈出了消除这一限制的第一步,在这个框架中,LLMs创造了自己的可重复使用的工具来解决问题。作者的方法包括两个关键阶段:

1)工具创建:LLM作为一个工具制造商,为一个给定的任务创建工具(工具以Python实用函数的形式实现)。

2)工具使用:LLM作为一个工具使用者,应用工具制作者创造的工具来解决问题。工具使用者可以是与工具制作者相同的LLM,也可以是另一个LLM。

工具创建允许LLM不断生成适用于不同需求的工具,并在未来需求有利于任务解决时调用相应的API。此外,LLM在工具创建和工具使用阶段的分工,带来了实现成本效益的机会,而不影响生成的工具和问题解决方案的质量。例如,认识到工具创建比工具使用需要更高的能力水平,强大但资源密集的模型可以应用于工具创建者,而轻量级但成本效益高的模型可以应用于工具使用者。作者在一系列复杂的推理任务中测试了这种方法的有效性,包括Big-Bench任务:用GPT-4作为工具创造者,用GPT-3.5作为工具使用者,LATM的性能与用GPT-4作为工具创造者和工具使用者一样好并且推理成本显著降低。

[文章作者注]检查github上的代码,发现它非常小。这里提出的框架使用现有的LLM,如GPT-4,实现更强大的能力。它似乎比许多人提出的提示工程更广泛、更灵活地执行任务;它可能是也会导致AGI的突破性建议之一。如果受到一个易于使用的用户界面,预计它的使用将比现有的LLM一般更加广泛。

介绍。

大规模语言模型(LLMs)在广泛的NLP任务中表现出卓越的能力,甚至有迹象表明能够实现人工通用智能(AGI)的某些方面。此外,用外部工具增强LLM的潜力已经被发现,从而大大改善其解决问题的能力和效率。然而,如何使用这些工具的适用性在很大程度上取决于是否有合适的工具。根据人类进化里程碑的经验教训,一个重要的转折点是人类获得了生产自己的工具来解决新挑战的能力。

在这项研究中,作者进行了初步研究,将这种进化概念应用于LLMs领域。作者提出了一个闭环框架,他们称之为LLMs As Tool Makers(LATM),它允许LLMs产生自己的可重复使用的工具来处理新的任务。该方法由两个主要阶段组成:

1)工具创建:一个LLM,称为工具制作者,专门为一个特定的任务设计一个工具(以Python函数的形式实现)。

2) 使用工具:另一个LLM,称为工具使用者(有时与工具制造者相同),应用工具来处理新请求

这种两阶段的设计使LATM能够将每个阶段的工作分配给最合适的LLM。具体来说,需要高级能力的工具制造过程可以分配给资源密集但功能强大的模型(如GPT-4)。另一方面,相对简单的工具使用过程可以分配给更轻、更经济的模型(如GPT-3.5 Turbo)。这种方法不仅提高了LLM的问题解决能力,而且还可以大大降低处理一组任务的平均计算成本。

由于工具创建过程只需要为一个给定的功能执行一次,创建的工具可以在不同的任务实例中重复使用。这种方法为处理复杂任务的可扩展和具有成本效益的解决方案铺平了道路。例如,考虑一个用户要求LLM安排一个对所有人都方便的会议的任务(例如通过电子邮件对话):像GPT-3.5 Turbo这样的轻量级模型往往在处理这种任务时很吃力,因为它涉及复杂的算术推理。另一方面,更强大的模型(如GPT-4)能够找到正确的解决方案,尽管推理成本非常高,LATM通过采用强大但昂贵的模型作为工具制造者来克服这些障碍,然后将其作为工具使用者,以经济有效地传递模型供后续使用。一旦工具被创造出来,轻量级的工具使用者就可以用它来高效地解决任务,而且性能很高。这种模式同样可以应用于各种工作流程中的重复性任务,如将网络文档解析成特定的数据格式,制定符合某些自定义要求的路由计划,或者用它来解决流行的游戏,如数独,一个24小时的游戏.

此外,还引入了另一个轻量级的LLM,即调度器,以确定一个输入问题是否可以用现有的工具解决,或者是否需要创建一个新的工具。调度器为该框架增加了更多的活力,并实现了实时、即时的工具创建和利用。

作者的实验测试了这种方法在各种复杂推理任务上的有效性,包括几个具有挑战性的Big-Bench任务。结果表明,LATM的成本效益更高,同时取得了与更大规模的模型相当的性能。这种模仿人类在工具创造和使用方面的进化飞跃的新型LLM方法,为社区通过刺激LLM生成的工具而成长提供了可能。

overview.png

图1 LATM的闭环框架 在有大量问题解决请求的情况下,直接利用强大的LLM来解决所有实例可能会很昂贵。另一方面,轻量级模型具有成本效益,但通常无法应对复杂的任务;LATM利用了两种模型的优势,强大的模型作为工具制造者,为请求中观察到的任务生成可重复使用的工具(以Python函数的形式实现),然后利用下一个请求来将工具传递给具有成本效益的工具-用户模型,以解决类似的实例。通过这种方法,轻量级模型可以实现与强大模型相媲美的性能,同时保持更高的成本效率。

相关研究

思想链 (CoT)

近年来,在提高大规模语言模型(LLMs)解决复杂任务的问题能力方面取得了重大进展。例如,CoT提示已经被提出来以增强LLM的推理能力,并在一系列推理和自然语言处理任务中显示出更好的性能。 CoT提示通常通过自然语言来表达,但在某些情况下也可以用编程语言来有效表达。在某些情况下,也可以用编程语言来表达。最近,有人提议使用LLM来生成文档的结构化视图,通过集合多个复合函数的提取来平衡质量和成本;LATM也紧随其后,管理成本和质量之间的权衡,同时专注于更普遍的用例着重于。

用工具扩展语言模型

最近的研究探讨了使用外部工具来补充LLM完成复杂任务的能力的可能性,如Yao等人和Yang等人提出用LLM中特定任务的行动来增强推理痕迹,使模型能够推理和协同行动.各种研究表明,用计算器、搜索引擎、翻译系统、日历或对其他模型的API调用等工具来补充LLM,可以解决单靠LLM不容易解决的任务。LATM使用Python可执行程序来生成其他可以创建可重复使用的工具来解决任务实例。此外,通过将工具创建者与工具使用者分开,轻量级模型可以用于大多数推论,提高了LATM的效率和成本效益。

语言模型中的自适应生成

此外,最近的研究提出了自适应控制LLM解码的方法,以提高文本生成效率:投机性解码加快了用更快但性能较低的模型生成文本标记的速度,而生成的标记的它的概念是通过使用较大和较昂贵的模型进行评分来逼近其性能;LATM通过在模型之间转移新生成的工具而不是改变解码程序来提高LLM解决任务的性能和效率。

层叠式语言模型

最近有研究表明,LLM可以实现迭代互动,而且通过组合多个LLM,可以进一步扩展其能力。Chen等人还证明,确定LLM的最佳组合可以降低成本,同时提高准确性:LATM不是简单地级联LLM,而是利用较大的模型产生的新工具来更好地处理任务类别,可以识别并将这些任务类别中的单个推论分配给较小的模型。

作为工具制造商的LLM(LATM)

创造新的工具并重新使用它们

在LATM范式中,主要过程可分为两个阶段:"工具创建 "和 "工具使用"。每个阶段都利用不同类型的大规模语言模型(LLMs)来平衡性能和成本效益。

工具创建

- 工具建议: 在这个阶段,工具制作者试图生成一个Python函数来解决来自给定任务的演示。这个过程提供了一些具体的演示,并编写了一个程序,在这个程序中,模型产生了演示的行为。

- 工具验证: 使用验证样本生成单元测试,并在建议的工具上运行测试。如果任何这些测试失败,工具制造商会在其历史记录中记录错误,并试图在单元测试中修复这个问题;LLM的自我调试能力在最近的研究中得到了有效的证明。然而,在LATM管道内,验证阶段的使用方式略有不同。

1) 提供一个例子,说明如何将一个自然语言问题转换为一个函数调用。

2)验证工具的可靠性,确保整个过程可以完全自动化。

是。

- 工具包装 如果执行或验证失败,超过了预先定义的阈值,工具创建阶段被认为是失败的。否则,工具制作者已经准备好为工具使用者打包的工具了。这个阶段包括打包功能代码,并提供如何将任务转换为函数调用的演示。这些演示是从工具验证步骤中提取出来的,在这个步骤中,问题被转化为单元测试。然后,这个最终产品将提供给工具用户。下面引用了一个单词排序的例子。

pipeline.png

图2 LATM管道 LATM可分为两个阶段:1)工具创建:一个强大但昂贵的模型作为工具制造者,从几个演示中生成通用和可重复使用的工具;2)工具使用:一个轻量级和廉价的模型作为工具使用者,使用工具来解决任务的充当工具使用者,使用工具来解决各种实例。(i) 工具提议:工具制作者试图从一些训练演示中生成一个工具(Python函数),如果工具不能运行,就报告错误并生成一个新的工具(以解决函数的问题);(ii) 工具验证:工具制作者对一个样本进行验证测试运行一个单元测试,如果工具没有通过测试,报告错误并生成一个新的测试(以修复单元测试中的函数调用问题);(iii)工具打包:将函数代码打包,并演示如何将单元测试中的问题转换成函数调用,以便工具使用者准备好工具供用户使用。

工具的使用

在这个第二阶段,轻量级的、具有成本效益的模型,如GPT-3.5 Turbo,承担了工具使用者的角色。工具使用者的角色是使用验证过的工具来解决不同的任务。这一阶段涉及到使用包装工具,其中包括解决任务的函数和展示如何将任务查询转换为函数调用的演示。该演示允许工具用户使用内涵学习方法生成所需的函数调用。然后,函数调用被执行,任务被解决。可以选择进行后处理,将输出转化为符合任务要求的格式(例如,多选题中的选择)。

工具创建阶段,包括工具建议、验证和包装,对每一类任务只需要执行一次。然后,产生的工具可以重复用于该任务的所有实例。这使得LATM的效率和成本效益明显高于只使用强大的模型。此外,Python函数工具是一种比思维链工具更通用的形式,可以用来解决涉及算法推理能力的问题,增加了LLM的整体效用和灵活性。

为了说明这个方法,图3显示了一个具体的例子,说明工具制造者如何通过创建一个工具(Python函数)来解决BigBench的逻辑推理任务,然后由工具使用者使用。该任务要求用户对五个物体的顺序进行推理并回答一个问题。要求既包括某些对象对的相对位置,也包括某些对象的绝对位置,如图3中的 "工具器输入 "块所示。为了解决这个任务,工具制造者(如GPT-4)生成一个通用程序,通过从问题中提取约束条件并根据结果搜索所有的排列组合来解决这个任务。工具使用者(如GPT-3.5 Turbo)可以使用这个程序来解决任务,只需通过函数调用从任务的自然语言实例中提取相关信息。

input_example.png

图3 逻辑推理任务的LATM流水线的工具建议和工具使用阶段说明 [Srivastava等人, 2022] 该任务要求根据一些给定条件确定五个对象的顺序。在工具建议阶段,一个工具制造者(例如GPT-4)制定一个通用的Python函数,可以解决任务提供的k个演示(作者的实验中k=3)。工具制造者生成一个搜索算法,列举所有可能的序列,并根据所提供的条件验证每个序列。在工具使用阶段,工具使用者将每个自然语言问题转化为一组条件,并生成函数调用,以对每个任务实例使用该工具。

用Dispatcher处理流媒体数据

在现实世界的场景中,任务实例通常是按顺序到达的。为了适应这种数据流,作者引入了第三个LLM,即调度器,它决定是否让工具使用者或工具制造者参与每个到达的任务。这个模块类似于现有研究中的工具选择功能。然而,作者的调度器的独特之处在于它能够识别现有工具无法解决的新任务,并让工具制造者为这些任务生成新的工具。

具体来说,调度员维护着工具制造者生产的现有工具的记录。当收到一个新的任务实例时,调度员首先确定是否存在适合手头任务的工具。如果存在合适的工具,调度员会将该实例及其相应的工具传递给工具使用者以解决任务。如果没有找到合适的工具,调度员会将该实例识别为一个新的任务,并且用一个强大的模型来解决该实例,或者调用一个人的标识器。来自新任务的实例被缓存起来,直到有足够的缓存实例可供工具制造者创建新工具。图4说明了调度器的工作流程。由于调度员任务的简单性,调度员可以是一个轻量级的模型,并有适当的提示,只给整个管道增加一个小的成本。 图中显示了一个LATM提示的例子,调度员由LATM提示,而调度员由LATM提示。

图4 调度器的说明 在一个任务实例依次到达的在线环境中,调度器是一个轻量级的模型,在每个实例到达时对其进行评估。如果已经有合适的工具来处理这个任务,调度器会选择这个工具,并将任务实例转发给工具使用者来解决。如果没有找到合适的工具,调度员就把任务实例转发给工具制造者,让其创建一个新的工具供工具使用者以后使用。

实验

设置

数据集

LATM在六个不同领域的数据集上进行了评估,包括逻辑演绎、跟踪洗牌对象、Dyck语言、单词排序、中国剩余定理和会议安排。前五个数据集是由BigBench提供的,使用的是逻辑演绎和跟踪洗牌对象任务的五个对象版本,在本文中被称为逻辑演绎(5)和跟踪洗牌对象(5)。对象(5)。还构建了调度会议任务,以证明LATM在真实世界场景中的有效性。

表1 工具商为解决问题而产生的效用函数。

模型设置

在工具创建阶段,温度被设置为0.3,以便在生成过程中引入随机性,必要时允许重试。在这个阶段,使用GPT-4和GPT-3.5 Turbo模型对ChatCompletion API进行了实验,通过不断向聊天历史追加回复来提供互动体验。在工具使用阶段,只对LLM API进行了一次调用,还使用GPT-3型模型与标准完成API进行了消融研究。使用工具时,温度统一为0.0。在工具建议和工具验证阶段,最大重试次数被设定为三次。

工具制造阶段的有效性。

工具创建阶段使用一个强大而缓慢的模型来生成针对特定任务的通用Python函数。这个步骤对每个任务只执行一次,开销在该任务的所有实例中进行摊销。在这个实验中,GPT-4被用作代表性的工具器,然而其他模型的工具器功能也被研究。如图3所示,我们诱导语言模型生成一个通用的Python程序,并提供几个镜头的示例。

当GPT-4被用作工具制造商时,我们观察到它经常为解决任务设计合适的算法。例如,如表1所示,工具制作者通过搜索所有的排列组合并选择满足给定约束条件的正确排列组合来解决逻辑推理任务。

LATM提高了轻量级LLM的性能

表2比较了思维链提示和LATM的性能:采用GPT-4作为工具制造者,为六个任务生成工具,并作为工具使用者评估了GPT-3.5 Turbo和GPT-4的性能。结果表明,在工具的帮助下,像GPT-3.5 Turbo这样的轻量级模型实现了与GPT-4相同的性能,并明显优于CoT提示。此外,在工具的帮助下,使用GPT-3.5 Turbo的平均成本要比使用GPT-4低得多。这表明,与采用更昂贵的模型相比,LATM能有效地提高轻量级模型的性能并降低成本。有趣的是,对于Dyck语言任务,GPT-3.5 Turbo作为工具用户甚至超过了GPT-4。对失败案例的调查显示,在将问题转换为函数调用时,GPT-4有时不必要地解决了部分问题,并产生了不正确的函数输出。

表2 LATM和思维链(CoT)性能比较 对于LATM,GPT-3.5 Turbo和GPT-4都使用了GPT-4创建的工具。结果显示,应用LATM极大地提高了GPT-3.5 Turbo的性能,在某些情况下往往超过或达到使用CoT的GPT-4的性能。最后一列显示了处理n个样本的总体成本。其中C代表调用GPT-4的成本,c代表调用GPT-3.5 Turbo的成本。Suzgun等人为前四个任务提供了数次拍摄的CoT演示,最后两个任务直接应用了数次拍摄的提示,没有使用CoT。

表2使用GPT-4 v.s. GPT-3.5 Turbo在工具创建阶段生成新工具(通过工具验证步骤的Python函数)的成功率,每个模型对每个任务进行五次试验,n/5意味着在五次成功中生成一个有效工具的n条轨迹.对于困难的任务,如逻辑推理和跟踪洗牌的对象,GPT-3.5 Turbo每次尝试都失败了,这表明需要使用更强大的模型作为工具制作者。

将LATM扩展到混合任务流环境

LATM可以扩展到一个流式设置,即来自(潜在的)不同任务的实例即时到达。在这种情况下,需要另一个模型,即调度器,来确定实例所属的任务:GPT-3.5 Turbo被用作调度器,并对其能力进行评估:

1) 确定解决输入实例的现有工具。

2) 要求从一个未知的任务中创建工具。

确定现有工具

首先,评估了调度器为给定实例识别现有工具的能力:六个任务被随机混合以产生一个有100个样本的测试集。对于测试集中的每个实例,一个包含与现有工具相关的任务实例的提示被用来识别调度器中适当的现有工具。如果该工具被正确识别,则被认为是成功的。对于测试集的五个随机配置,确定正确工具的准确性为94%±2%。

要求工具生产

接下来,调度员评估调度员为未知任务的实例请求工具准备的能力。随机选择四个任务作为准备工具的现有任务。然后选择四个任务进行测试,两个来自未知任务,两个来自现有任务内部 建立一个有100个样本的测试集。对于测试集中的每个实例,使用调度器来确定是否有必要请求创建工具,或者是否可以用现有工具来解决。提出正确请求的准确率为95%±4%。

结果表明,调度器可以有效地识别现有的工具,并要求为未知的任务创建工具,而没有明显的性能损失。这表明,LATM可以顺利地扩展到混合任务流设置。

分步分析

语言模型创建工具所需的能力

我们调查了在工具创建阶段使用的语言模型的能力要求。一般来说,这个阶段对每个任务只执行一次,我们发现更强大和昂贵的模型更能达到目的,因为高精确度对有效地将工具传递给小模型很重要。具体来说,对于困难的任务,如逻辑推理和洗牌物体追踪,GPT-3.5 Turbo在所有五个跟踪中都失败了。而失败的主要原因是,该工具不够通用,可能只用于训练样本。另一方面,我们也发现,对于简单的任务,Toolmaker可以成为一个轻量级的语言模型。对于简单的任务,如单词排序,GPT-3.5 Turbo可以毫不费力地生成一个解决该任务的程序。另一个可能导致工具制造者失败的限制是上下文长度限制。为了提高工具制造阶段的可靠性,这也引入了一个长的上下文,因为整个历史被用于工具制造过程的每个步骤。在这种情况下,上下文长度为8192的GPT-4是首选。

工具使用的语言模型所需的能力

对使用工具的模型的能力要求进行了调查。结果如表4所示,这证实了GPT-3.5 Turbo在所有测试的模型中具有最佳的性能和成本平衡。对于GPT-3系列的老型号(ada、babbage、curie和davinci),我们还发现,指令调优前的型号有时比指令调优后的型号表现更好。这表明,对于这些模型,指令调谐阶段可能对语境中的学习能力产生了负面影响,这在工具使用阶段是很重要的。

表4使用GPT-4生成的相同工具的各种工具用户模型的性能比较所有的成本都是基于写作时的速率。在所有模型中,GPT-3.5 Turbo展示了性能和成本之间的最佳权衡,因为GPT-3是一个指令前调谐模型,而指令后调谐模型在工具使用阶段被发现表现得相当糟糕。我们选择了预调谐模型。我们推测,这是因为指令调谐阶段损害了对工具使用阶段至关重要的语境中学习能力。

CoT作为一种工具是没有用的

除了LATM之外,我们还研究了从大模型到小模型重用思维链(CoT),与LATM管道类似,是否可以提高任务绩效。具体来说,在 "创造CoT "阶段使用同一个大模型(GPT-4),使用零枪提示 "让我们一步一步地思考 "来引出中间的思考步骤,并将生成的CoT用于同一个小型工具使用模型(GPT-3.5 Turbo)。这在两个任务中进行了测试,结果报告于表5。可以看出,来自大模型的CoT的表现与人写的CoT一样好,或者比LATM差很多。

表5使用GPT-4生成的CoTs时的准确度性能接近于人类编写的CoTs,远低于LATM。

摘要

介绍了LATM,这是一个闭环框架,允许大型语言模型(LLM)创建和使用自己的工具来完成各种任务。 LATM方法的灵感来自于人类制造工具的进化过程,并采用了两个关键阶段。即 "工具制造 "和 "工具使用"。这种分工允许利用先进的LLM能力,同时大大降低计算成本。作者的实验证实了LLM在各种复杂任务中的有效性,证明这个框架更具有成本效益,同时具有与资源密集型模型相当的性能。他们还表明,增加另一个调度器LLM将增加框架的灵活性,使工具可以在飞行中创建和使用。

评估过程中发现,严重缺乏高质量的数据集,这些数据集以原始自然语言格式忠实地表现了日常的人机互动,如电子邮件和电话会议时间表以及机票预订。作者表示,他们希望这种数据集的建立将刺激研究界培养下一代人工智能系统。这样的系统将能够生成和应用自己的工具,并能够更有效地处理复杂的任务。在未来,工具制造者可以改进现有的工具,以解决新的问题,就像在软件开发中一样。这种适应性可以进一步促进人工智能生态系统的发展,并释放出大量的机会。

本文探讨了使大规模语言模型(LLM)能够创建自己的工具的可能性,使生态系统能够更加自主地发展。这种研究工具很有前途,但同时也提出了重要的伦理、安全和控制方面的考虑,需要仔细解决。作者的研究最重要的影响之一在于LLMs有可能自动成长并达到前所未有的能力。这可能会大大增加LLMs可以处理的任务的范围和复杂性,可能会彻底改变客户服务、技术支持甚至是研究和开发领域。它还可能导致更有效地利用计算资源和减少人为干预,特别是对于常规和重复性任务。然而,法律硕士的这种新的自主权也是一把双刃剑:通过赋予法律硕士开发自己的工具的能力,它也创造了一种情况,即他们开发的工具的质量可能并不总是符合人类开发者的标准和期望。如果没有适当的保障措施,LLM可能会产生次优的、错误的或潜在的有害解决方案。此外,随着LLMs变得更加自主,它们失去控制的可能性也在增加。如果这些模型在没有适当监管的情况下被广泛使用,可能会出现意想不到的后果,甚至导致人类失去对人工智能系统的控制的情况。

本研究没有深入解决这些控制和安全问题,因此这里的研究有一些局限性。拟议的框架 "LLM As Tool Maker "虽然在测试的场景中很有效,但仍处于早期开发阶段。关键是要注意,系统的实际性能和安全性可能会根据应用任务的复杂性和性质而变化。此外,根据报告,对工具制造商在真实世界条件下创建的工具进行评估和验证是一个需要解决的挑战。

  • メルマガ登録(ver
  • ライター
  • エンジニア_大募集!!
友安 昌幸 (Masayuki Tomoyasu) avatar
JDLA G检定2020#2,E资格2021#1 数据科学家协会 DS检定 日本创新融合学会 DX检定专家 联合公司Amico咨询 CEO

如果您对文章内容有任何改进建议等,请通过 "联系我们 "表格与爱学网编辑部联系。
如果您能通过咨询表与我们联系,我们将非常感激。

联系我们