原文链接 :原文链接
本文对工具学习进行了系统的研究和全面的综述。
首先介绍了工具学习的背景,包括它的认知起源,基础模型的范式转换,以及工具和模型的互补作用。
总结已有的工具学习研究,提出了一个通用的工具学习框架:模型理解用户指令出发,学会将复杂的任务分解为若干个子任务,通过推理动态调整其计划,并通过选择合适的工具有效征服每个子任务。
讨论如何训练模型以提高工具的使用能力,并促进工具学习的泛化。考虑到之前的工作缺乏系统的工具学习评估,文章对18个有代表性的工具进行了实验,并展示了当前基础模型在熟练使用工具方面的潜力。
最后讨论了几个需要对工具学习进行进一步调查的开放问题,例如确保安全可靠的工具使用,支持使用基础模型创建工具,以及解决个性化挑战。
阐述了人类运用工具的历史,阐明运用工具的先决条件之一就是对工具作用和用途的彻底理解以及理解用户意图和执行工具使用计划和推理的能力。
同时预训练大模型的出现,使工具被AI使用成为一种可能。基础大模型能够处理复杂的数据,模仿人类的决策能力,生成广泛的任务输出。
提出了一个通用的工具学习框架,包括控制器(通常使用基础模型建模)、工具集、环境、感知器和人。
工具学习的整个过程从用户指令开始,且需要模型为工具的执行制定可执行的计划。为了用适当的工具架起用户指令的桥梁,模型应该首先学会理解指令背后的用户意图(即意图理解),并理解工具的功能和使用(即工具理解)。模型还应该学会将一个复杂的任务分解成若干个子任务,通过推理动态调整其计划,并使用适当的工具有效地征服每个子任务。关于培训策略,以促进模型的改进工具利用率,文章总结了两种主流方法:从演示中学习和从反馈中学习。探讨了在不同环境下如何构建有效的培训监督。为了便于将学习到的工具使用技能转移到新的工具和情境中,也就是一般化的工具学习,重要的是要设计一个统一的接口,使模型能够以标准化的方式与不同的工具进行交互。
最后讨论了将提出的一般框架应用于现实世界场景的其余重要研究主题,包括
(1)安全性和可信度,其中强调来自对手、治理和可信度的潜在风险。文章认为,在高风险场景中部署工具学习模型之前,需要仔细考虑;
(2)大型复杂系统的工具学习,文章展示了大型复杂系统的独特特征,并讨论了将工具学习应用于这些系统的挑战,例如复杂的知识和功能学习,具有隐私问题的代表性数据采样,以及高效工具学习的严格要求;
(3)工具创造,文章讨论了人工智能也可以创造新工具的可能性,挑战长期以来关于人类独特之处的信念;
(4)个性化工具学习,即模型为用户使用工具提供量身定制的帮助。文章强调了将用户偏好与工具操作相结合的挑战,并介绍了从被动系统到主动系统的转变,以及隐私保护问题;
(5)具身学习,其中工具学习和具身代理的交集使具身工具的数字化体现和操作成为可能;
(6)工具增强中的知识冲突,我们回顾了如何利用工具来增强模型的生成和知识冲突的实际问题,这可能导致不准确和不可靠的模型预测;
(7)其他开放问题,例如将工具使用能力视为机器智能和科学发现工具学习的衡量标准。
首先讨论人类工具使用的认知起源(§2.1),然后通过用户界面的镜头对工具进行分类(§2.2)。然后,我们回顾了最近由基础模型(§2.3)带来的人工智能范式转变及其在工具学习中的意义。在那之后,我们检查在解决问题的专业工具和基础模型各自的角色,并讨论其集成的好处和挑战(§2.4)。
文章在本节讨论了
1)工具使用的神经学基础,尽管在对于工具的执行是基于操作的方法还是基于推理的方法方面仍有争论,但认知科学的总体趋势是将认知理解为一个强调与外部世界互动的主动过程,来自观察交流和实践的反馈对于掌握工具的使用很重要。
2)工具使用所代表的三个智能水平。例如,“intoolligence”(Osiurak & Heinke, 2018)将工具使用行为分为三种模式**:辅助工具的使用**通常是被动的和无意识的(例如,在雨棚走廊行走);任意使用工具需要主动互动(例如,驾驶、使用智能手机);自由使用工具进一步需要理解和选择适合场景的工具(例如,烹饪新菜)。在这个框架中,三种工具使用模式呈现出一种渐进的关系,作者假设实现自由使用工具的关键认知过程是技术推理,它允许某人通过观察他人使用、选择或制造工具而不是大量实践来学习新的动作。
3)从物理工具到概念工具的过渡。除了物理世界中的工具,还可以转向更抽象的工具。以认知工具(Heyes, 2018)为例:它是指促进高阶思维的辅助工具(例如,多步骤批判性分析,创造性解决问题的解决方案的生成)。认知工具可以根据它们提供的功能进行分类(lajoie&derry, 2013)。这些包括(1)支持认知过程(例如,记录中间推理结果);(2)减轻较低水平的认知负荷,为高级思维腾出资源;(3)使学习者能够参与他们无法参与的活动;(4)允许学习者生成和检验假设(例如,为医科学生模拟诊断)。
4)弥合人与机器工具使用之间的差距。
根据这些工具的表达和交互模式对它们进行分类。如图所示,该分类法包含三个层次的交互,从最明显的到最不明显的排列。物理层包括与工具的直接物理交互。图形用户界面(GUI)级别便于用户与工具的可视化表示进行交互。程序级别涉及用户直接使用工具的底层源代码。
**基于物理交互的工具。**我们从最有形的工具类型开始,基于物理交互的工具。顾名思义,这类工具涉及与物理世界的直接交互,包括机器人、传感器和可穿戴设备等可能对环境产生物理影响的设备。
**基于gui的工具。**有些工具允许用户通过交互式界面(即工具的可视化表示,带有预定义的操作)来操作它们。这些工具被定义为基于gui的工具,它们对物理世界没有直接影响。GUI界面通常包括按钮、菜单、文本框和其他允许用户与底层系统交互的图形元素。这些工具广泛应用于各种行业和应用程序,如软件开发、数据分析和设计。
基于编程的工具。用户可以访问的工具的最内层是源代码,为这些基于程序的工具的输入和输出提供了高度的灵活性。基于程序的工具是主要设计用于通过编程接口而不是可视化接口使用的软件工具。
预训练模型的出现改变了自然语言处理领域范式的分离性,加速了NLP任务的统一,产生了预训练-微调范式。
通过让机器以一种更自然、更细致的方式理解人类语言并与之互动,我们可以开启以前不可能实现的协作和解决问题的新可能性。我们预计工具学习将有助于通过共享工具促进不同任务的集成。因此,虽然自然语言接口实现了语言领域内的统一(Hao et al ., 2022),但非语言任务带来的挑战需要一种更先进的方法来利用自然语言和工具学习。通过利用自然语言的力量,我们可以创建能够理解和适应我们周围复杂和动态世界的系统,为创新和发现开辟新的途径。
**对工具的好处。**设计用于简化具体和特定目标的工具为工具学习带来了几个好处:
(1)减轻记忆。尽管基础模型已经表现出了非凡的记忆能力,但它们并不能记住每一条训练数据。此外,在模型生成过程中,基础模型通常使用相对较短的上下文提示,因此并非所有记忆的知识都可以被正确引导。此外,单独的记忆并不支持实时覆盖最新的知识,特别是考虑到来自用户的新请求的潜在无限可能性。此外,基础模型也被批评会产生幻觉知识通过生成看似可信但非事实的内容。鉴于上述因素,有必要用实时工具执行来增加基础模型,以减轻记忆方面的限制。例如,如果基础模型能够学会如何利用它,那么很大一部分记忆负担可以被转移到搜索引擎和(不同模式的)数据库系统上。
(2)增强专业知识。专门的工具被设计用于满足具有基础模型中不可用的功能的特定领域。模型可以调用适当的工具来推广到超出其能力范围的更广泛的任务。
(3)更好的可解释性。基础模型因其决策过程缺乏透明度而受到批评,这在医疗保健或金融等应用中可能是一个重大问题,在这些应用中,可解释性对于做出明智的决策至关重要。相反,工具执行的过程反映了模型如何解决复杂请求的整个过程,这允许更好的可解释性和透明性。用户可以很容易地理解为什么要调用某些工具,以及它们如何对最终输出做出贡献,这可以提高信任并促进人机协作。
(4)提高鲁棒性。基础模型容易受到对抗性攻击,其中对输入的轻微修改可以翻转模型预测。这是因为这些模型严重依赖于训练数据中的统计模式。相反,工具是专门为其预期用例设计的,这可能与输入扰动无关。这使得工具更能抵抗对抗性攻击。
总的来说,将工具合并到基础模型的工作流中可以提高系统的健壮性,并减少恶意攻击的风险。工具和模型之间的这种和谐的相互作用可以增强系统在不可预测的现实环境中的可靠性。
**对基础模型的好处。**基础模型可以为理解、计划、推理和生成提供坚实的基础,这为工具学习带来以下几个好处:
(1)提高决策和推理能力。基础模型在大量的数据上进行训练,使它们能够在广泛的领域中获得世界知识。此外,基础模型也表现出了显著的推理能力,从而使他们能够推断行动的后果并做出明智的决策。
(2)更好的用户体验。受益于基础模型强大的意图理解能力,工具学习可以彻底改变我们与机器交互的方式,并将用户从认知负荷中解放出来,允许他们参与更高层次的思考和决策过程。这反过来又促进了一种无缝的、更自然的基于语言的交互范式,彻底改变了传统的图形用户界面(gui)。用户只需要提供高层次的引导和方向,模型就会无缝理解用户的意图,从而提供更加个性化和精准的响应。
此外,工具学习有可能使复杂工具的使用民主化。在基础模型的帮助下,即使是新手用户也可以轻松快速地开始使用新工具,而不管他们以前的经验或技术专长如何。这不仅降低了新用户的进入门槛,而且为创新和创造创造了丰富的可能性。然而,应该注意的是,人类模型在工具使用中的协作也会引发伦理问题,这将在后面讨论。
讨论工具学习的基本组成、一般过程与训练方法和如何使其可泛化。
工具集、环境、控制器、感知器
如图 用户向控制器发送指令,然后控制器做出决策并在环境中执行工具。感知器接收来自环境和用户的反馈,并将其总结给控制器。
工具集 是不同功能的不同工具的集合,主要以应用程序编程接口(API)来说明如何与工具交互。
**环境 **是工具运行的世界,向感知器提供工具的执行结果。可以真实也可以是模拟环境。两者各有侧重和优缺点。模拟环境无法完全复制现实世界环境复杂性,从而导致过拟合和泛化不良。而真实环境会设计更高成本。
控制器 是框架的大脑,利用基础模型来建模,制定一个可行计划。需要其有强大的规划和推理能力,以及能够理解用户的意图。
感知器 处理用户和环境的反馈并为控制器生成摘要。可能会涉及多模态。
形式上,假设有一个工具集 T \Tau T,控制器可以利用它来完成某些任务。在时间步骤 t t t,环境 ε \varepsilon ε 提供了关于工具执行的反馈。感知者 P P P接收用户反馈 f t f_t ft和环境反馈 e t e_t et,并产生汇总反馈 x t x_t xt。通常,感知器可以通过预定义的规则(例如,连接 f t f_t ft和 e t e_t et)来形成汇总反馈 x t x_t xt,或者用复杂的神经模型来建模。**控制器 C C C生成一个计划 a t a_t at,该计划 a t a_t at从 T \Tau T中选择并执行合适的工具。**该过程可表示为如下概率分布:
p C ( a t ) = p θ C ( a t ∣ x t , H t , q ) , ( 1 ) p_C(a_t)=p_{{\theta}_C(a_t|x_t,H_t,q)},\space\space\space\space(1) pC(at)=pθC(at∣xt,Ht,q), (1)
其中 θ C \theta_{C} θC是 C C C的参数, q q q为用户查询或指令, H t = { ( x s , a s ) } s = 0 t − 1 H_t=\{(x_s,a_s)\}^{t-1}_{s=0} Ht={(xs,as)}s=0t−1为历史反馈和计划,在其最简单的形式中,生成的计划可以简单地作为工具的特定操作。 C C C还可以将其推理过程与动作预测协同,其中可能还包含解释下一步应该解决哪个子任务以及选择哪个工具来解决子任务的推理痕迹。值得注意的是,如果从式(1)中去掉对 x t x_t xt的依赖,得到的概率分布就等同于自回归语言建模。从这个角度看,控制器将基础模型附加到环境和工具集上。此外,我们可以将方程(1)分解为:
p θ C ( a t ∣ x t , H t , q ) = ∑ T i ∈ T p θ C ( a t ∣ T i , x t , H t , q ) × p θ C ( T i ∣ x t , H t , q ) , ( 2 ) p_{θ_C}(a_t | x_t, H_t, q) =\sum _{Ti∈T} p_{θ_C}(a_t | T_i, x_t, H_t, q) × p_{θ_C}(T_i | x_t, H_t, q),\space\space\space\space(2) pθC(at∣xt,Ht,q)=∑Ti∈TpθC(at∣Ti,xt,Ht,q)×pθC(Ti∣xt,Ht,q), (2)
分解表明,计划 a t a_t at的构建涉及两个子任务:根据用户意图选择合适的工具,并决定使用所选工具执行的动作。例如,给定“我想预订下周去北京的航班”这样的指令,控制器 C C C首先推断出用户的目标是预订航班,以北京为目的地,以下周为旅行时间。然后,模型选择航空公司预订系统作为工具。最后输入时间和目的地作为初步计划。在预订的过程中,我们可能会遇到意想不到的情况,比如下周去北京的航班没有了。为了应对这些异常情况,我们可以进一步赋予 C C C推理当前上下文并生成替代计划的能力,我们将在§3.2.2中详细讨论。
生成计划 a t a_t at后,将在 ε \varepsilon ε中执行,并将 ε \varepsilon ε产生的反馈 e t + 1 e_{t+1} et+1传递给感知者。上述过程重复多轮,直到控制器完成任务。
**总体目标是找到一个动作序列 { a t } \{a_t\} {at},最终完成用户指令 q q q指定的任务。**注意,在工具执行之后,控制器可以额外地将执行结果集成到用户的合理响应中(详见§5.6)。
为了准确地完成用户查询 q q q指定的任务,控制器需要理解两个方面:(1)用户的底层意图,这涉及到将自然语言 q q q识别并形式化为高级任务(即意图理解);(2)工具集 T T T,它需要理解其中每个工具的功能和目标(即工具理解)。通过理解这两个方面,控制器可以弥合用户意图和工具集之间的差距,这是连接控制器 C C C、用户和工具集 T T T的先决条件。
·意图理解 控制器需要学习从指令空间到模型认知空间的映射,通过准确识别用户意图,提供更个性化的响应,并提供更好的用户体验。最近在指令调优方面的探索表明,基础模型在理解用户指令方面具有非凡的熟练程度。先前的研究表明,在用人类指令模板化的数据集上对大型语言模型进行微调,可以使模型甚至可以推广到未知任务的指令。有希望的是,这种泛化能力可以通过扩大模型大小和训练指令的数量或多样性来进一步增强。尽管具有令人印象深刻的意图理解能力,但在现实世界的工具学习场景中仍然存在挑战:==(1)理解模糊指令。第一个挑战是处理用户查询中固有的模糊性和模糊性。许多用户查询本质上是不精确的,甚至可能是多义的,要求控制器依赖上下文线索和背景知识来推断用户的意图。一种可能的解决方案是积极地与用户交互,以澄清任何歧义,例如要求用户澄清先前的用户查询。(2)对不同指令的泛化。另一个挑战是让模型泛化到更多样化的用户指令。由于意图空间在理论上是无限的,在训练过程中让基础模型暴露于每个真实世界的意图几乎是不切实际的。==此外,个性化的挑战来自于这样一个事实:每个人都有自己独特的表达意图的方式,这就要求该模型能够适应不同个体的不同意图表达。一种解决方案是合并更多样化的训练数据,这些数据涵盖了广泛的现实世界场景,从而使模型能够学习不同指令的细微差别。另一种解决方案是利用用户反馈并积极地使模型适应个人用户,即个性化工具学习(§5.4)。
·工具理解 基础模型具有强大的**少次学习(few-shot)和零次学习(zero-shot)**能力,可以提示其解开工具的功能并理解如何使用它们。为此,我们可以通过手工设计或检索构建合适的特定任务提示prompts。这些提示应该描述API功能或举例说明它们的用法。
如图所示,对两种提示方法进行了分类:(1)零提示(zero-shot),它描述了API功能、输入/输出格式、可能的参数等。这种方法允许模型理解每个API可以处理的任务;(2)少弹提示(few-shot),为模型提供具体的工具使用演示。通过模仿这些演示中的人类行为,模型可以学习如何利用这些工具。在§4中提供了两种提示方法的实验结果。
提示方法仍然面临着一些挑战。首先,由于提示的有效性在很大程度上取决于模型,较小或能力较差的模型无法很好地理解提示。其次,提示受输入上下文长度的限制。虽然基础模型已经被证明可以通过提示来学习使用简单的工具,但当面临具有长描述的多个复杂工具情况时可能更具挑战性。特别是当工具集大大扩展时,由于上下文长度有限,在提示符内提供所有可能的工具变得不可行。
一个潜在的解决方案是添加一个工具选择的中间阶段,首先检索最适合手头任务的一小部分工具。另一个解决方案是微调,它使用具体的工具使用示例来优化模型,以理解工具。这个过程包括利用从人类工具使用经验中获得的丰富知识。当在实践中部署时,微调模型减少了在输入中合并工具定义的需要,从而缩短了输入长度并加速了模型推断。然而,微调的一个主要限制是,它通常需要大量的人工注释或演示。此外,工具经常更新,并且需要使用更新的示例重新训练经过微调的模型,从而产生额外的成本。关于基于调优的解决方案的更多讨论将留在3.3节中。
当基础模型扩大到一定规模时,推理能力就会出现。特别是,具有数百亿或数千亿参数的基础模型可以在复杂问题解决过程中生成中间推理轨迹,从而显著提高其zero-shot和few-shot。
·引发基础模型推理能力 ** 尽管心理学文献中对推理概念进行了广泛的研究,应用于基础模型的推理概念仍然没有明确定义。一般来说,基础模型文献中的推理能力可以被定义为将复杂问题分解为子问题并逐步解决子问题的能力**。在这里本文与上述保持一致,从问题分解和子问题求解的意义上讨论推理。
朴素的few-shot学习,即为给定任务提供由几个示例组成的提示,涉及到需要复杂推理的问题时,已被证明是失败的。为了解决这个问题,Wei等人(2022c)提出了思维链(CoT)提示。与传统的few-shot不同,CoT在提示中插入了推导每个示例的最终答案所需的推理轨迹。通过这种方式,CoT促使模型在得到最终答案之前在必要的中间步骤上产生他们的“想法”。CoT已被证明可以显著提高各种任务的性能,包括算术推理、常识推理和符号推理。
鉴于基础模型具有显著的推理能力,最近的研究已经成功地尝试将其应用于工具学习的控制器中。结果表明,它们的推理能力使控制器能够有效地将复杂问题分解为若干子问题,并确定每个子问题调用哪个工具。我们将相关研究分为两类:内省推理和外省推理。前者涉及在不与环境 ε \varepsilon ε交互的情况下生成工具使用的静态计划,而后者通过迭代地与 ε \varepsilon ε交互并利用从先前执行中获得的反馈来增量地生成计划。如图所示,环境 ε \varepsilon ε在内省推理中对控制器 C C C是不可见的,但在外省推理中是可见的,从而在四个组件之间形成闭环交互。
·内省推理。直接生成工具使用的多步骤计划,而不知道中间的执行结果。例如,Huang等人研究了基础模型的规划能力,并表明它们能够将高级任务分解为语义上合理的子计划。另一个代表性的工作是程序辅助语言模型(PAL) ,它提示模型为中间推理步骤生成Python代码。PAL使用Python程序解释器作为工具,使模型充当编写详细注释的程序员,并在算术、符号和算法推理方面取得重大改进。值得注意的是,模型程序员的想法也被证明在具体化代理中是成功的,正如ProgPrompt 和Code-as-Policies 所证明的那样,它们提示模型生成具身代理的可执行程序。这些研究表明,尽管模型与环境没有直接的交互,但模型能够为代理生成可执行的程序,并预测计划执行中可能出现的异常。另一个例子是Visual ChatGPT,它将各种视觉基础模型与ChatGPT交织在一起,以实现对图像的理解和生成。在他们的系统中,ChatGPT作为核心控制器并进行顺序决策。在每个步骤中,ChatGPT可能调用视觉模型来修改现有图像或用纯文本响应用户。
然而,由于这些模型不是基于环境,它们可能产生不现实和无意义的计划。为此,SayCan强调代理“被允许”执行的行为,而不是“愿意”执行的行为。在实践中,他们使用一个值函数来估计每个动作成功执行的概率。有了这个功能,代理在物理上更加扎根于环境中。总体而言,**尽管缺乏环境反馈,基础模型在内省推理中表现出显著的有效规划能力。**他们可以预测计划执行中的潜在异常,并相应地调整计划。这种能力不仅使控制器能够生成可执行程序,而且还增强了其规划各种任务的能力。
·外省推理。内省推理不能根据中间执行结果调整计划,更合理的计划方法是考虑环境 ε \varepsilon ε,增量地生成计划(例如,一次一个步骤),随后的计划依赖于先前的执行结果。这使得§3.1中描述的四个组件能够很好地集成并有效地合作以完成复杂的任务,即外省推理。与内省推理相比,外省推理还考虑了来自用户和环境的反馈(上图),因此更适合复杂的任务,例如多步骤QA和具身学习,其中每一步的决策都依赖于前面的上下文。
最近的作品,如Self-Ask,ReAct 和ToolFormer已经证明,**通过提供对搜索引擎api的访问,模型能够在多步骤QA上实现更高的准确性。通过CoT提示或微调(ToolFormer),模型可以学习分解复杂的问题,并利用搜索API找到第一个子问题的答案。**基于响应和问题,他们可以迭代地确定要问的后续问题或给出最终答案。
对于具身学习,虽然内省推理方法已经证明了生成可执行程序和解决潜在执行异常的能力,但与环境的直接交互可以进一步增强模型的规划能力。例如,Inner Monologue 利用了来自环境的多种反馈来源,例如任务是否成功完成以及当前场景信息。这样,模型可以生成更可行的方案,提高模型完成高层次教学的能力。LLM-Planner明确考虑了计划执行过程中可能出现的异常情况,并在执行失败的情况下利用环境反馈来重新生成计划,使模型能够适当地处理异常。此外,ReAct赋予模型在计划期间决定何时停止生成动作令牌的自主权,使他们能够推断当前情况并制定更精细的后续计划。
综上所述,外向推理需要控制器和环境之间的交互,这是一个更复杂的设置。然而,来自用户和环境的实时反馈使模型能够对当前情况有更全面的了解,从而有可能最终实现需要广泛规划的长期目标。
·多步骤多工具场景中的挑战。目前的研究在任务分解方面表现出令人满意的效果。然而,在不同的子任务中使用不同的工具方面缺乏探索。本节中提到的大多数研究都局限于多步骤单工具或单步骤多工具场景。然而,最近出现了针对多步骤多工具场景的研究。其中一个例子是ReAct模型,它集成了维基百科的多个API,并使用基础模型来决定何时使用哪个API。随后,MM-ReAct 将ReAct推广到多模态领域。此外,最近的一些项目,如Auto-GPT4,展示了GPT-4在操纵多种工具和制定长期计划方面的巨大潜力,推动了工具学习的极限。给定一个用户查询,Auto-GPT将采取逐步的操作来自主地完成目标。除了对当前状态进行推理外,Auto-GPT还可以反思过去的行为以改进决策。尽管这些工作构成了在多步骤多工具场景中推进工具学习的重要一步,但仍有一些挑战和未来的方向需要研究。
•理解不同工具之间的相互作用。多步骤多工具场景通常涉及需要更高级别的意图理解和推理能力的复杂任务。为了在这种情况下有效地利用多个工具,模型不仅需要掌握工具的单个功能,还需要掌握它们的交互和依赖关系。模型应该能够按照逻辑顺序对工具进行排序,以便后续工具可以利用前一个工具生成的信息并有效地完成任务。
•从顺序执行到并行执行。工具执行不必按顺序执行。在某些场景中,不相互依赖的子任务可以并行执行,这可能会提高执行效率。例如,给定用户指令“生成两个代码,一个用于绘制矩形,另一个用于绘制圆形”。这两个任务可以分配给两个代理,使代码可以同时生成。确定不同子任务之间的依赖关系,并在并行执行和顺序执行之间有效切换以优化整个过程,是一个值得进一步研究的有前途的方向。
•从单agent解决问题到多agent协作。以前的工作通常假设单个代理(控制器)单独负责整个工具学习过程。然而,在实践中,复杂的任务往往需要多个代理之间的协作,每个代理都具有独特的能力和专业知识。采用多代理协作可以解锁更有效和高效的问题解决方法,需要设计代理之间的通信、协调和协商方法,以确保无缝协作和最佳任务执行。值得注意的是,Park等人最近的研究表明,使用基础模型建模的多个智能体可以在交互场景中模拟人类行为(例如,人际沟通)。这为采用多代理进行工具学习提供了有希望的证据。
我们期待未来开展更多工作,朝着更实际的多步骤多工具方案迈进,努力应对这些挑战。作为先前的探索,我们在需要多个工具(api)来解决§4中的任务时评估基础模型的性能。
来自人类或环境的指导在训练基础模型使用工具方面起着至关重要的作用。与基于提示的方法(依赖于冻结基础模型的上下文学习能力)不同,基于训练的方法通过监督对模型进行优化。类似地,如下图所示,将工具学习的训练策略分为两类:(1)具体工具使用演示,这通常需要人工注释;(2)从反馈中学习,这通常涉及强化学习。最后,考虑到潜在的海量工具的存在,逐个学习它们在实践中是不可行的。因此,我们强调泛化在工具学习中的重要性,并讨论潜在的解决方案(§3.3.3)。
训练模型通过模仿学习来模仿人类专家的行为。行为克隆可以被视为模仿学习的一种简单形式,它专注于以有监督方式的学习策略,通常假设专家的行为是最优或接近最优的。行为克隆的目标是训练模型在给定某些输入或条件下模仿人类专家的行为,当专家的行为可以很容易地记录和用于学习时,通常采用这种方法。
形式上,假设我们有一个大小为N的数据集D,由用户查询q和人类演示注释a∗组成,即D = {(qi, a∗i)}N−1 i=0。从人类演示中学习优化控制器的参数θC,目标如下:θ∗C = arg max θC E(qi,a∗i)∈D TiY t=0 pθC(a∗i,t | xi,t, Hi,t, qi),(3)其中a∗i,t为人工在第t次迭代时处理qi的注释,Ti为ai的总迭代次数,其他变量遵循式(1)中定义的符号。根据a∗的获取方式,演示学习可分为三种流,人工干预逐渐减少:
监督学习。传统上,行为克隆在学习端到端或模块化感知器-控制器模型中得到了广泛的探索,用于自动驾驶汽车和机器人应用。最近,对微调基础模型以监督的方式执行面向工具的任务的兴趣激增。例如,Li等人利用基础模型作为决策网络,其输入是标记化的环境观察、原始目标和行动历史。利用基础模型带来的任务-一般归纳偏差,使用策略网络进行行为克隆可以显著提高域内性能和分布外泛化。
另一个例子是WebGPT ,它通过迭代地优化搜索查询并记录重要信息来与搜索引擎交互。为了实现这一目标,作者首先构建了一个由Bing5备份的搜索界面,然后对GPT-3 进行微调,以克隆人类的网络搜索行为。作为一种在通用领域预训练的语言模型,原始的GPT-3本质上并不固定于有效的浏览器命令。因此,**首先收集人类与浏览器交互的演示,然后学习状态到操作的映射是至关重要的。**经过微调,该模型在操纵搜索引擎进行信息检索方面显示出卓越的能力,甚至超过了人类专家。类似地,WebShop提供了一个基于web的交互环境,代理可以在其中浏览和购买产品。通过行为克隆,经过训练的智能体在给定人类指令的情况下购买正确的产品时表现出非凡的性能。
Semi-supervised半监督学习。通常情况下,由于时间和成本的考虑,人类的行为不容易被记录下来。然而,大规模的未标记数据通常是可以获得的,从中我们可以潜在地构建弱的、有噪声的监督。值得注意的是,最**近的工作表明,我们可以使用一个功能较弱的模型来注释未标记数据上的伪标签,并将它们转换为弱监督的工具使用演示。**例如,使用少量的种子标记数据,Baker等人训练了一个模型来预测《我的世界》视频游戏中每个时间步所采取的动作的伪标签。从这些伪标签中学习,可以训练一个更强大的模型,而不需要在目标环境中推出模型或大规模的高质量人类行为注释。
Self-supervised自监督学习。尽管减少了对人类行为标注的大量要求,但半监督学习仍然需要种子标记数据集来获得伪标签。此外,**种子数据集中的偏差也可能在训练过程中被放大,导致泛化性能较差。**为此,研究人员最近表明,通过一些演示,基础模型可以自学如何以自我监督的方式使用工具。例如,**Toolformer 利用基础模型的上下文学习能力,基于少量人类编写的示例迭代地引导工具使用示例。**这些自动生成的示例被进一步过滤以减少噪声。最终的工具使用数据集包含足够的监督,显著提高了GPT-J的工具使用性能,突出了自监督学习增强工具使用能力的潜力。
收集手动注释的工具使用示例(可能包括人类行为的完整痕迹和最终答案)是耗时且费力的。此外,学习模型可能不能有效地适应新环境,因为它符合记录的人类行为。此外,明确标注环境条件和智能体行为的每一个可能场景是不切实际的。或者,人类从试验和错误中学习,以纠正和纠正他们的工具使用行为。同样,**来自环境和人类的反馈可以使模型理解其行为的后果并调整其行为。来自反馈的监督也可以增强以监督方式训练的代理的能力。**在形式上,从反馈中学习可以描述为从开放探索中优化控制器参数 θ C θ_C θC,查询集 Q = { q i } i : Q = \{q_i\}_i: Q={qi}i:
$ θ^∗_C = argmax_{θ_C} E_{q_i∈Q} E_{{{{ai,t}}^{T_i}{t=0}∈p{θ_C}}} [ R({a_i,t}^{T_i}_ {t=0)}],\space \space \space \space(4) 其中 其中 其中R 是根据反馈序列估计的奖励, 是根据反馈序列估计的奖励, 是根据反馈序列估计的奖励,T_i 表示处理 表示处理 表示处理q_i$所需的迭代次数。
用于工具学习的强化学习(RL)。强化学习是一种常见的解决方案,可以使人工智能体在复杂的决策过程中从环境中学习。工具学习可以被认为是一个强化学习场景,其中行动空间由工具定义,代理学习选择适当的工具并执行正确的行动,以最大化奖励信号。策略模型可以通过基础模型初始化。这样的初始化为策略模型带来了丰富的先验知识,减轻了RL agent学习基本技能的需要。通过奖励函数量化智能体在实现任务目标方面的表现,强化学习已成功用于各种工具学习场景,如机器人抓取和多智能体自动课程。**通过优化损失函数,智能体学会反思环境的当前状态,选择合适的工具,并执行正确的行动,从而获得最高的预期回报。**下文中介绍了两种反馈来源:环境反馈和人类反馈,它们可以被认为是工具学习背景下奖励信号的来源。这两种反馈是互补的。
环境的反馈。控制器与环境交互,并接收有关其行为后果的反馈。然后,该模型根据此反馈更新其策略,以改进其工具使用行为。环境反馈可以分为两种形式:(1)结果反馈,即从环境中返回的最终反馈,表明模型的动作是否成功完成了任务。这种类型的反馈执行由模型生成的规划的全面评估。例如,WebShop 使用手工编码的奖励来评估人类购买的产品和模型购买的产品之间的相似性,这表明控制器执行的操作是否会导致正确的最终产品。模型通过接收行动成功或失败的反馈,迭代更新规划策略,调整决策过程;(2)中间反馈,是指一个动作所引发的环境的状态变化。**通过观察状态的变化,基础模型可以了解到每个动作是否有效和适当,从而使模型更好地调整自己的行为。**这种类型的反馈提供了关于每个工具执行有效性的更详细和及时的信息。以与搜索引擎交互以收集用于问答的信息为例,模型可以通过观察搜索查询的呈现信息来更新其策略,以便更有效地进行信息检索。
人类的反馈。人类可以根据模型生成的计划给予奖励和惩罚,以规范其行为。人类的反馈可以是明确的,这为代表人类偏好的模型性能提供了清晰和直接的见解。例如,对模型生成的动作的质量进行1到5的评分;人类反馈也可以是隐式的,它不是由用户直接指定的,而是可以从用户行为和与模型的交互中派生出来的。示例包括用户的比较、响应时间以及接收模型输出后采取的操作。
虽然人的反馈是准确和稳定的,但它是标签密集型的,具有很高的延迟。为了解决这个问题,提出了从人类反馈中强化学习(RLHF)来调整模型以模仿人类给予奖励,然后使用PPO等强化学习算法来优化策略。RLHF在文本摘要等各个领域都取得了卓越的表现。RLHF还可以提高模型的工具使用能力,即使它已经在足够的监督下进行了人类演示训练。例如,WebGPT利用人类反馈来指导策略模型与人类偏好保持一致,这有助于更好地操纵搜索引擎来回答长格式的问题。
尽管RLHF具有显著的性能,但仍然面临着挑战:(1)任务特异性:需要预先定义特定任务的相应评价标准,并且为一个任务注释的偏好数据难以转移到其他设置中,这限制了RLHF在更广泛的任务范围内的适用性。为此,开发一个适用于各种任务的通用奖励模型至关重要;(2)偏倚:强化学习代理对伪人类奖励模型进行优化,因此会受到人类偏好的上界和偏倚。此外,在RLHF过程中,社会偏见或个人经历可能会被放大,有必要仔细评估任何偏见的习得奖励模型,并采取措施减轻它们。
工具使用的泛化是人类智能的一个关键特征,也是工具学习的一个关键方面。虽然对大量工具使用数据进行监督微调可能是促进泛化的潜在解决方案,但收集足够的有监督的工具使用数据并确保其质量和多样性是耗时的,而且实际上是不可行的。
一般化的工具学习强调了抽象的重要性,这是识别工具的基本特征的过程。抽象包括识别工具的共性和模式,以便模型能够综合和转移它们的知识和技能,使它们能够轻松地使用新的工具。
例如,通过抽象图层、滤镜和颜色调整等基本功能,用户可以将他们使用Adobe Photoshop的知识转移到Adobe Illustrator中,即使这两个图形编辑软件的界面和具体工具名称不同。抽象工具的这些通用特性可以帮助用户在以前的经验基础上快速有效地学习新工具。
泛化的基础:接口统一。为了促进工具之间的知识转移,设计一个统一的接口,使模型能够以一致和标准化的方式操作各种工具是至关重要的,这是可泛化工具学习的基础。通过统一的接口,模型可以在统一的工具协议中更容易地识别和抽象工具的基本特征,而不是纠结于理解各种工具接口的困难。目前,工具的操作是通过预测离散的动作令牌,不同场景下的动作空间不对齐,这阻碍了模型快速适应新的场景和工具。受2.2节中对工具进行分类的启发,我们确定了三种可能的接口统一方式:语义接口、GUI接口和编程接口。
•语义接口。语义接口通过使用特定的文本跨度(动作名称)作为动作触发器来操作,这是实现接口统一的最直观、最自然的方式。例如,ReAct 使用Action:Search作为搜索相关段落的函数的触发器。在机器人操作方面,生成的自然语言(例如,捡起海绵)被映射到特定的动作。尽管语义接口易于实现,但它提出了一些必须解决的挑战。首先,生成的文本和相应的工具操作之间的映射应该单独预先定义,这是一项费力的任务,特别是当工具集迅速扩展时。此外,模型可能无法准确地生成触发预期动作的精确形式,甚至导致错误地触发动作。
•GUI界面。人类主要通过GUI界面(如鼠标和键盘)与数字世界进行交互,该界面已经过广泛优化,以有效地遵循人类的行为。然而,在机器人能够学会灵活地使用GUI界面之前,有必要建立一个虚拟环境,以便将预测的令牌映射到类似人类的鼠标运动和键盘输入。先前的研究已经探索了为智能体提供平台,让它们使用键盘和鼠标操作来完成基于web的任务。然而,这些环境将模型限制为一组有限的预定义鼠标选项和常见的键盘操作(如复制和粘贴)。通过利用基础模型,可以引入关于关键字和鼠标操作的常见组合的先验知识,从而扩展模型可以执行的潜在操作。
•编程接口。这种接口允许模型超越纯粹的自然语言,并使用程序指定其操作。这种统一要求模型熟悉函数调用的语法。最近的代码生成语言模型(CLM),如Incoder和CodeX 提供了这种统一的可能性。编程接口得到了广泛的应用。例如,code -as- policies发现,使用CLM作为机器人控制的主干,机器人可以利用代码语法执行复杂的动作,推广到新的指令,并通过准确的参数值对函数进行精确控制。编程接口为工具学习提供了很好的机会,因为**(1)复杂的工具学习逻辑可以使用编程语言的控制流进行建模;(2)外部api的显式调用可以自然地通过执行程序来实现。**
应该注意的是,接口选择应该与基础模型的能力和限制保持一致。例如,语言基础模型被训练来生成文本,并且可能更适合语义接口。类似地,结合了视觉和文本信息的多模态基础模型可能更适合GUI界面,因为它可以理解并生成类似人类的鼠标移动和键盘输入。另一方面,代码基础模型可能更适合编程接口,因为它经过训练可以理解代码语法和函数调用。
在某些情况下可能面临工具的输出与模型的输入格式不一致的挑战。一种常见的做法是以相同的方式组合模型和工具的功能。例如,Zeng等人通过将其输出转换为自然语言,将各种模态的基础模型链接在一起。这个简单的方法利用提示来组合新的多模式功能,而无需微调。相比之下,另一种解决方案是建立能够感知通用模态的多模态基础模型,基于多模态基础模型可以通过通用接口统一的信念。Gato 是一个具有代表性的多面手多体现智能体,它是在大量智能体经验数据集上训练出来的。Gato可以用不同的化身来感知和行动,比如玩雅达利游戏、给图片配字幕、聊天等。同样,PaLM-E 将不同模式的连续输入纳入PLM。通过对多个具体任务的联合训练,PaLM-E可以在现实世界中做出有根据的决策。
工具学习的泛化策略。一般来说,统一的界面使模型能够更容易、更有效地学习和转移知识,但并不能保证在所有场景下都有最佳的学习结果。一般化的工具学习需要模型进一步适应、细化和专门化他们所学到的知识到特定的任务或领域。在这里讨论了实现这一目标和促进泛化的两种潜在方法。
·元工具学习。元认知(metacognition)是人类智力的一个重要方面,它允许个体在面对不熟悉的情况时反思自己的思维并调整自己的行为。在工具学习的背景下,元认知是指模型反思自己的学习过程并在必要时适应新的工具使用策略的能力。**通过元认知,模型可以识别工具使用策略中常见的基本原则或模式,并将其转移到新的任务或领域。**以网络搜索工具为例,当在源搜索引擎(如必应搜索)上训练的模型转移到目标搜索引擎(如谷歌搜索)时,模型可以利用其元认知意识,根据之前的经验调整其工具使用策略。这可能包括识别工具使用策略中的常见底层模式,例如有效的搜索查询、相关结果和用户反馈,并使用这种元认知意识来更好地与新搜索引擎的算法和用户界面保持一致。
•课程工具学习。另一种提高模型泛化的方法是通过课程学习,从简单的工具开始,逐步将模型引入更复杂的工具,以便它可以建立在其先验知识的基础上,并对工具有更深的理解。例如,我们可以从基本的算法和运算课程开始,有效地教模型使用数学,如加减法,然后逐渐转向更复杂的数学概念,如微积分和线性代数。这种训练策略确保在以一种可管理和有效的方式转移到更复杂的概念之前,将模型引入到工具的简单、基本特性中。此外,课程工具学习允许模型学习如何在简单工具的基础上构建复杂工具。它提供了如何将复杂工具视为简单工具的更新高级版本的理解,以及它的功能如何是几个基本工具的组合。这种对简单工具和复杂工具之间关系的理解有助于将以前学到的知识转移到新的工具上,使模型能够更有效地识别情况之间的异同,并相应地调整其方法。
调查最先进的基础模型在利用工具方面的功效和局限性。
工具简介:
机器翻译。当处理来自多个语言领域的文本时,通用语言模型可能表现出次优的熟练程度。机器翻译可以通过使非翻译专用语言模型更好地理解多语言文本,有效地缓解这一问题。跟随Toolformer使用NLLB 作为翻译工具,选择MLQA多语言问答基准测试平台。给定一个英语语境和一个阿拉伯语问题,要求用英语回答问题。从原始测试数据中随机抽取200个测试实例。对于评价指标,我们选择F1-score。
计算器。跟随Toolformer进行了语言模型使用简单计算器解决数学单词问题的实验。简单的实现一个计算器,支持基本的算术运算(+、−、x、÷)。评估两个数学字题数据集:ASDiv 和MathQA ,并选择准确性作为度量标准。
地图。选择必应地图API进行位置信息检索,协助用户查询路线、驾驶距离、纬度坐标、附近感兴趣的位置等。通过众包手工管理用户查询。
天气。我们选择Weather API(https://www.weatherapi.com)并调查模型是否可以使用该工具回答与天气相关的问题,例如关于任何城市当前天气的问题,预测任何城市两周内的天气,并根据天气信息给出建议。它支持两个api,第一个是GetWeatherToday,它提供一个城市的当前天气状况;另一个被评估的是ForecastWeather,它预测一个城市N天后的天气。返回的详细信息包括温度、风速、紫外线指数、日出、日落时间等。手动整理了100条与天气相关的用户查询。
股票。我们选择Alpha V advantage Stock api用于股票市场查询。目标是获取某支特定股票在某一天或某一个月的开盘价、收盘价、最高价或最低价的具体信息。手动整理了1200对问题答案,并选择准确性作为评估指标。
幻灯片。幻灯片制作传统上是由人类使用人机界面(例如,鼠标和键盘)来完成的。然而,目前的模型不能直接移动鼠标或按电脑键。为了解决这个限制,为模型提供了六个具有高级语义的api。基于开源库python-pptx构建了四个API来控制幻灯片,一个API允许模型根据主题从互联网检索图像,一个API用于提交并向用户显示最终的幻灯片。为了收集数据,本文杜撰了50个不同的职业,对于每个职业,我们假设了2个从业者必须制作幻灯片的案例。最终的数据集由100个幻灯片制作任务组成。通过计算模型生成的API调用正确执行而没有错误的实例的比例来评估模型的性能。
表处理。使用pandas制作了一套表处理api。Python中的DataFrame。通过利用这些工具,模型可以为用户提供更自然和简化的体验,允许他们直接执行数据分析和可视化任务。手动构造一个表处理数据集,其中包含13个表和117个相应的查询。
知识图谱。知识图包含关于现实世界的事实知识,这些知识以RDF三元组的形式存储。三元组可以通过SPARQL(标准协议和RDF查询语言)检索。提供了7个api来模拟人类查询知识图的过程,包括显示给定名称表面表单的候选实体/关系、显示头部实体的主页、显示尾部实体的主页、发送SPARQL查询、显示SPARQL查询的结果以及在SPARQL查询的输出中查找关键字。整理了64个可以通过查询知识图谱来回答的问题。
搜索引擎。必应搜索API,并对模型进行实时问答测试。支持两个api:第一个是Search,它将与top相关的搜索结果返回给模型;另一个是LoadPage,加载搜索结果中索引的第N页的详细信息,并返回详细内容。对RealTimeQA 进行了实验,这是一个动态问答平台,可以查询新事件或信息。具体来说,选择最新版本(20230217版本)的多项选择数据进行评估。给定问题和选择,在确定最终答案之前,该模型将与搜索引擎交互以提取必要的信息。
维基百科。主要是在ReAct上构建维基百科搜索工具,并对API设计进行了轻微修改。该工具由3个api组成:search,它在Wikipedia上搜索一个确切的实体名称,如果实体存在,则返回相应页面的前5句话;否则,显示相关的实体名称;lookup,查找当前页面上的关键字,并返回包含该关键字的下一个句子,类似于人类在网页上使用CTRL+F函数;消歧,它输入一个实体名称并显示所有共享相同名称的实体。专注于HotpotQA 的问题回答,并在开放域设置中进行实验,其中只有问题显示给模型。从数据集中随机抽取200个实例。
在线购物。亚马逊网上购物是一个相对复杂的网络环境,模型需要购买满足用户指令中提到的各种要求的商品。基于WebShop】构建在线购物工具,它涵盖了主流的在线购物操作,包括搜索商品、加载商品的详细信息、选择商品的功能、转到上一页/下一页、决定购买等。使用WebShop提供的数据集,随机抽取100个测试实例,这些测试实例涵盖了各种客户需求的说明以及对商品属性的特定要求。
具体化场景。《ALFWorld》是一款对齐文本和具体化环境游戏,其中智能体需要与房屋中的物体(如冰箱、微波炉、抽屉等)进行交互才能完成任务(例如,把一把干净的抹刀放在抽屉里)。在很大程度上遵循ReACT,并报告有效集上的成功率
烹饪的助理。选择AllRecipe来考察模型是否能找到合适的烹饪配方并提取重要细节。该工具的设计类似于搜索引擎工具。有了这个工具,模型可以执行:(1)找到目标配方,(2)根据观察到的细节回答问题。手动整理了50个查询进行评估。
电影搜索。选择豆瓣电影API进行电影相关信息的搜索。设计了三个api,目的是发现正在播放或即将播放的电影,以及提取有关每部电影的详细信息。策划了60个关于电影的问题,比如推荐一些正在放映或即将上映的电影,以及提供一部电影的简短介绍。
AI绘画。人工智能图像生成模型已经被人类艺术家广泛使用。为了赋予模型使用人工智能图像生成模型创建图像的能力,设计了以下API:一个API使用稳定扩散生成给定提示的图像,其他API是图像分割和图像绘制API,它们用提示描述的新对象替换图像中的目标对象。将25个查询作为初始提示,以及修改该图像的后续查询。
3D模型构建。手动设计一组api来研究三维(3D)建模,这些api利用了复杂的3D渲染引擎Taichi的功能。由于执行此API (3D渲染)十分复杂,只演示了10个策划问题的性能。
化学性质。为了评估专业领域中工具学习的能力,使用化学属性查询,即使用PubChemAPI来解决科学查询。提供四个api,这有助于根据名称或SMILES符号检索化学品的识别号,以及根据其识别号获取化学品的属性。手动策划了100个问题进行评估。
数据库。探索了工具学习在通过自然语言访问数据库数据方面的潜力。基本api包括(i)获取目标数据的结构信息(模式);(ii)将输入的自然语言文本翻译成等同的SQL查询;(iii)将查询改写为可执行的查询;(iv)通过连接数据库查询结果数据。在TPC-H模式下自动策划了50个相对复杂的查询,这些查询具有相对复杂的结构(涉及2-6个表和复合谓词),总共执行时间超过111.5分钟。评估度量是工具学习能够准确输出结果的查询比率。
为了促进未来的研究尝试,上述所有工具实现都集成到BMTools中,BMTools是一个开源存储库,可以使用工具扩展基础模型,也可以作为社区构建和共享工具的平台。使用BMTools,用户可以通过编写Python函数和集成来自其他来源的外部工具(例如,ChatGPT Plugins)轻松构建一个新插件。
为基础模型构建一个工具库对于连接基础模型和工具是至关重要的,我们很高兴看到在这个方向上出现了一些新的工作。LangChain 是第一个尝试将基础模型与工具链接起来的开源项目。在统一的接口下,用户既可以构建自己的任务管道,也可以让基础模型调用api。最近,TaskMatrix。AI 和HuggingGPT将api和任务扩展到更广泛的场景,包括用于可视化任务、本地软件和云服务api的多模态模型。OpenAI还提出了其官方工具ChatGPT Plugins,以授权ChatGPT与其他应用程序。通过简单地提供带有描述的api, ChatGPT可以调用应用程序并完成更复杂的任务。与第三方库不同,ChatGPT插件对安全风险非常谨慎,并建立了严格的插件标准。该库优先考虑最重要的工具,如web浏览器、代码解释器和检索插件。
设置。对以上所有工具进行实验,并选择text- davincic -003和ChatGPT,分别使用§3.2.1中提到的zero-shot prompts和few-shot prompts来评估它们的性能。
•zero-shot提供了关于任务描述的模型指令,以及关于工具中api的信息。一些基本的指导方针也可以添加到说明书中。
•Few-shot额外添加了具体的工具使用示例,作为如何使用给定用户查询的api的提示。提供示例有望提高性能。
将结果与不涉及工具使用的基础模型使用进行比较。没有工具的情况下则完全依赖模型的内部知识来完成给定的任务(例如,机器翻译)。然而没有工具的帮助,许多任务(例如制作幻灯片)是无法完成的,在这些情况下省略了“无工具”配置。
在机器翻译、计算器、搜索引擎、维基百科、网上购物和ALFWorld的实验中,使用现有的数据集进行评估。然而对于其他工具,不存在合适的实验数据集。为了解决这个问题,采用了类似于Wang等人的方法,策划一组用户查询。具体来说是手动编写一些用户查询作为种子示例,并使用ChatGPT的上下文学习能力来生成更多实例。然后人工手动过滤那些低质量的实例。从经验上讲这样生成的示例足够多样化。除非另有说明,否则对于这些手动策划的测试集,使用API调用的跟踪作为评估模型性能的度量。具体来说,如果人们判断所有API调用对于给定任务都是准确的,并且它们产生了合理的结果,则认为该任务已正确完成。
结果。结果呈现在下表中,可以得出结论:(1)在大多数情况下,模型可以通过简单的提示学习如何有效地使用工具,并提高其任务性能。(2)对于模型可以利用其内部知识来解决的任务(如计算器和搜索引擎的情况),使用带有零提示的工具有时会导致性能变差,这意味着次优的工具利用可能会对性能产生负面影响。然而,few-shot结合工具仍然比不结合工具产生更好的性能。这说明工具可以为解决问题带来的方便,只要被有效地使用。**(3)此外,比较ChatGPT和text- davincii -003的性能,我们发现尽管ChatGPT已经利用RLHF进行了微调,但其结果并不比text- davincii -003更好。**我们将其归结为两个原因:首先,欧阳等人提到的对齐税问题,即在RLHF培训过程中,特定任务技能和情境学习能力被削弱;其次,ChatGPT的模型大小虽然没有正式说明,但可能比text-davinci-003小得多,从而使ChatGPT更难处理复杂的场景。
关于不同工具的性能,重要的是要承认这些工具的评估设置本质上是不同的,这使得直接比较变得困难。然而,若将对比 局限于那些手动策划测试集并检查API调用成功率的工具,可以看到在few-shot下,某些工具(如地图,天气,幻灯片,表格,烹饪助手和AI绘画)显示出令人满意的完成率。这些工具通常被认为比其他工具更具挑战性。事实上,根据经验,我们发现ChatGPT和text-davinci-003都可以熟练地利用这些工具,尽管没有直接对它们进行微调。
对于一些工具,如KGs、Wikipedia、在线购物、3D模型构建等,即使使用few-shot,模型性能仍然远远不能令人满意。原因可能是这些工具的使用不能通过几个例子轻松地学会。例如,需要生成可执行代码作为API参数的工具,如KGs工具中的search_by_query API(参见附录A.9),被发现要困难得多。这意味着有必要训练基础模型使用§3.3中提到的工具。我们在附录A中提供了ChatGPT的提示和模型响应,作为所有工具的案例研究。
讨论工具学习的安全性和可信度问题。
攻击。与所有其他人工智能系统一样,一旦工具学习模型在现实中部署,就会存在外部攻击,因此如何防御这些威胁具有重要意义。最近的研究表明,像ChatGPT这样的大型基础模型在硬样本和对抗性样本上更加稳健,这提高了它们在复杂现实世界中的效用。但是,制造误导性甚至有害查询的尝试无疑也将持续存在。此外,由于在海量web数据上进行训练,基础模型在深度学习中面临着长期的训练时间安全问题,如后门攻击和数据中毒攻击。
除了基础模型之外,合并的工具可能成为对手的新攻击目标。例如,**攻击者可以恶意修改手册文档甚至工具本身(例如:攻击新闻API以给出有偏见的报道),从而误导模型得出错误的结果。关键的挑战在于基础模型和工具之间的相互作用,因为一个安全和健壮的系统要求模型不仅要学会使用工具,而且还要拥有仔细检查、纠正和保护它们的能力。**目前,大多数针对外部攻击的研究都集中在确保模型的安全性上。然而,鉴于不断变化的模式转变,安全研究也必须关注保护整个系统的工具。
治理。长期以来,人们一直担心人工智能,尤其是强大的基础模型被滥用。在工具学习的范式下,对基础模型的治理更为迫切。当前的相关问题是应该使用哪些工具,在§4中列出了可以授权基础模型来解决复杂任务的工具。然而,必须考虑是否允许模型掌握人类制造的所有工具。某些工具,如计算器和翻译器,可能被认为是安全的,因为它们不会对个人造成任何伤害。然而,允许模型访问互联网或允许他们在现实世界中做出决定可能是危险的,因为它们可能会造成负面甚至危险的影响,例如传播虚假信息和伤害人类生命。在这方面,研究团体和公司在允许机器掌握某种工具之前需要仔细考虑。
除了潜在的有害工具之外,对工具使用的管理也是一个相关的问题。正如Amodei等人所强调的那样,深度学习中的端到端训练范式并不规范模型如何实现其目标。幸运的是,由于特定于任务的模型的能力限制,这种面向目标的方法并没有导致灾难性的后果,但它值得我们认真考虑。基础模型不仅需要借助工具完成任务,还需要遵循工具使用的规则和约束。
可信度。工具学习的目标在于创建高级智能代理。然而,确定这些代理是否值得信赖是一个复杂的挑战。即使工具学习提供了增强的可解释性和健壮性,核心基础模型仍然被认为是“黑盒”。最近的研究表明,尽管大模型取得了更好的性能,但它们无法预测何时会出错,这使得校准问题尚未解决。有了工具,模型在什么情况下调用工具也是不可预测的。因此,在我们将这些模型应用于自动驾驶和临床试验等高风险场景之前,有必要彻底讨论我们应该在多大程度上允许人工智能参与人类生活。
此外,基础模型的道德性近年来也成为一个有争议的问题。尽管OpenAI在向InstructGPT 和GPT-4 灌输人类价值观和偏好方面做出了值得称赞的努力,但考虑到ChatGPT 和New Bing令人不安的“越狱”反应,这些大型模型是否会温和和顺从仍然值得怀疑。具有讽刺意味的是,曾经围绕自主机器人潜在的鲁莽行为展开的讨论,现在反映在大型语言模型的发展中,从而助长了一种自我实现的预言,进一步降低了这些系统已经受到损害的可信度。当模型可以通过工具积极地向世界学习时,控制它们行为的挑战将变得比以往任何时候都更加艰巨。
与功能有限的工具不同,大型复杂系统(例如关系数据库,制造执行系统Kletti,供应链管理系统Misra等)由许多组件组成(例如,在关系数据库中控制不同功能的500多个按钮)。这种复杂性导致需要更加灵活和复杂的交互和管理方法。因此,在大型复杂系统中应用工具学习存在三个主要挑战。
系统学习。获取和理解大型复杂系统的知识和功能对人类来说是一项劳动密集型的任务。同样,现有的基础模型在记忆和掌握与这些系统相关的技能方面也面临挑战。例如,关系数据库涉及许多内置函数(例如,选择、插入、更新和管理用户数据)、复杂的查询语法(例如,ORM代码、SQL查询)以及执行期间的各种维护问题(例如,连接异常、工作负载争用、资源问题)。为了解决这个问题,我们首先需要用文本材料或者描述组件、功能、执行机制,甚至系统异常情况的源代码来微调基础模型。这个过程加深了模型对系统内在复杂性的理解。接下来,我们必须仔细地设计提示,以帮助基础模型熟练地使用特定的功能(例如,确定调用顺序)并有效地操作该系统。最后,现有的基础模型可能偶尔会产生错误或意外的操作。**我们可以用一个检查层(例如,SMT求解器)来增强这些模型,**它可以确保基础模型准确地生成函数调用,并派生出与工具的合法和合理的交互。
效率的要求。许多情况下,使用基础模型进行工具学习的效率是在实际系统中实现时的关键度量。例如,在实时场景中(如欺诈检测),用户期望在毫秒内快速准确的响应。然而,现有的基础模型需要较长的时间来推理和计划如何调用函数,这在实践中是不可容忍的。因此,在保持高性能的同时,找到有效的方法来加快工具学习的响应是至关重要的。首先,我们可以在将其发送到基础模型之前过滤掉不相关的、冗余的或低质量的输入信息。其次,我们可以在zero-shot中添加提示,以强制基础模型跳过冗余的函数调用和推理(例如,在获得足够好的解决方案后立即结束进程)。第三,我们可以将相关知识缓存在高速存储器中(例如,内存向量数据库),基础模型只在必要时检索相关知识以增强推理过程(例如,用于系统诊断的磁盘状态信息)。
隐私问题。在训练工具学习的基础模型时,需要大量的用户行为数据来模拟思考、计划和决策过程。然而,在现代系统中,很大一部分用户数据具有高度敏感性,需要严格的隐私和安全法规来确保数据的合理利用。为了解决隐私问题,两种可能的解决方案是联邦学习和模型蒸馏。首先,联邦学习允许用户使用本地机器上的相关数据更新模型参数,从而在保护数据隐私的同时训练基础模型(见§5.4),这在特定于行业的场景中特别有用,例如银行业的高并发事务调度。此外,模型蒸馏涉及将原始基础模型压缩成在可比任务上表现出色的较小模型的过程。通过采用这种方法,供应商可以有效地在其系统中保留模型本身和用户数据,从而确保有效的知识获取和数据隐私。
人工智能使用。人类创造工具是为了满足自己的需求,所以这个名称自然符合人类的偏好和方便。==然而,当前的工具学习算法对于模型来说可能不是最优的或有效的。这是因为大多数工具(例如,搜索引擎)是专门为人类使用而设计的,并且模型以不同的方式处理信息。因此,有必要创建专门适合于模型的工具。==可能的解决方案可能包括:(1)模块化,将工具分解成更小、更模块化的单元,使它们对AI模型更具适应性和灵活性。在这方面,模型可以学习以更细粒度和组合的方式使用这些组件;(2)新的输入输出格式:开发专门针对AI模型需求的新的输入输出格式,可以提高AI模型对工具的交互和利用,使模型与工具之间的集成和通信更加无缝。
人工智能创造工具。越来越多的证据表明,创造先进工具的能力不再局限于人类。例如,大型代码模型可以基于语言描述生成可执行程序。这些程序可以被视为帮助完成特定任务的工具。ChatGPT插件22给出了一个很棒的例子,要求GPT-4编写一个TODO插件并将其与ChatGPT集成。除了从头开始编写代码之外,基础模型还可以将现有工具封装为更强大的工具。在图下中,我们展示了一个ChatGPT的示例,它将天气预报API封装到一个计算平均温度的新函数中。所有这些证据都表明,基础模型有可能从单纯的工具使用者转变为工具制造者
人工智能的创造力。除了编码能力之外,其他涌现能力也揭示了更高级工具创建的可能性。然而,基础模型在创造新工具方面是否能表现出真正的创造力仍然是一个悬而未决的问题。这很重要,因为创造新工具的能力是人类区别于动物的一个决定性特征。了解创造力范围,而不是简单地记忆、组合和在预训练期间遇到的人类工具之间进行插值,对于评估它们对新工具开发的潜力至关重要。==此类调查可能涉及开发新的评估指标和基准,以及探索优先考虑创造性解决问题的新技术。==在未来,我们拥有最疯狂的想象,人工智能可以创造全新的工具,比如一种新的语言和火箭架构。
基础模型通常在通用领域进行训练,并根据广泛定义的人类偏好进行校准,优先考虑有益和无害。因此,他们很难处理个人信息,并为有不同工具学习需求的用户提供个性化的帮助。例如,当用户寻求理财建议时,为了提供有用和相关的建议,模型应该首先通过金融工具访问用户的个性化数据,如收入、支出和投资历史。随后,模型可以通过搜索引擎寻找最近的投资趋势和相关新闻。通过利用个性化信息,模型可以提供更个性化的建议,并为财务管理提供更量身定制的方法。
以用户为中心和个性化的自然语言生成近年来受到越来越多的关注。现有的工作涵盖了广泛的任务,例如对话生成,机器翻译。这些方法利用外部用户特定模块,如用户嵌入和用户内存模块,将不同用户的偏好、写作风格和个人信息注入到生成的内容中。然而,这些作品通常是为特定的任务而设计的,并且使用有限的用户信息进行实验。如何将用户信息集成到通用工具学习模型中仍有待探索。我们将在下文中讨论个性化工具学习的主要挑战。
调整用户偏好与工具操作。个性化工具学习强调在工具操作中考虑用户特定信息的重要性。存在两个主要挑战:(1)异构用户信息建模:在现实场景中,个人信息可能来自许多异构源。例如,当使用电子邮件工具时,模型需要从历史会话记录中考虑用户的语言风格,并从用户的社交网络中收集相关信息。其他信息,如浏览历史、购买记录和日常生活中的行为数据,也可以反映用户的个人偏好。这需要将不同结构的用户信息建模为统一的语义空间,使模型能够共同利用这些信息;(2)个性化的工具规划:不同的用户往往对工具的规划和选择有不同的偏好。例如,在完成购买任务时,不同的用户喜欢使用不同的在线购物平台。同样,在完成写作任务时,有些用户喜欢在写作前先搜索足够的参考文献,而另一些用户则喜欢在写作时搜索信息。因此,模型需要根据用户偏好制定个性化的工具执行计划;(3)个性化工具调用:根据用户的偏好自适应地调用工具也是个性化工具学习的一个重要方向。大多数工具在设计时都没有考虑个性化信息,这就要求模型根据用户的偏好为工具生成不同的输入。以购买商品为例,不同的用户对产品的品牌有不同的偏好。在这种情况下,模型需要将用户的首选品牌输入到购买工具中,以确定需要购买的产品。
从被动系统到主动系统。目前,大多数基础模型都被设计为响应式系统,它们响应用户查询,而无需自己启动任何操作。一种模式的转变正在向能够代表用户采取行动的主动系统转变。这种转变为工具学习带来了机遇和挑战。==通过利用用户交互的历史记录,主动系统可以不断提高性能,并根据特定用户定制响应,从而提供更加个性化和无缝的用户体验。然而,主动系统的引入也引起了一些关于其安全性和伦理影响的担忧。==主动系统可以启动具有意外后果的操作,特别是在复杂和动态的环境中。这可能导致级联失败,即一个助手的行为影响其他人,产生难以控制或停止的连锁反应。这就强调了设计具有安全意识的主动系统的重要性,并结合故障安全机制来防止灾难性后果。为了应对这些风险和挑战,主动系统的设计应该具有识别和减轻潜在风险的能力,以及适应和应对意外情况的灵活性。
隐私保护技术。个性化工具学习需要模型从私有用户信息中学习用户偏好,这不可避免地引起了隐私保护问题。一方面,以前的工作表明,训练数据提取攻击可以应用于从基础模型中恢复敏感的个人隐私,这是个性化工具学习的关键挑战。另一方面,计算成本高的模型必须部署在云服务器上,这需要将私有数据上传到云中以实现个性化响应。开发安全可靠的机制来访问和处理用户数据,同时保护用户隐私,这一点至关重要。解决这些挑战将有助于释放个性化工具学习的潜力,实现更有效和定制的工具操作,以满足个人用户的需求。为此,值得探索面向模型的分布式计算框架,如边缘计算和联邦学习,其中云服务器负责托管计算密集型模型,而pc或智能手机等边缘设备处理个性化信息以防止其泄漏。
工具学习的基本框架需要一系列的行动和观察,其中模型可以感知环境的变化,与具身学习的基本概念保持一致。本节将深入研究工具学习和具体化学习之间的相互作用,阐明它们的相同点、不同点以及潜在的交集。
具身学习认为,真正的智力可以通过与环境的互动获得。智能体在虚拟仿真环境中的体现一直是具身学习研究的主要焦点。仿真环境为代理提供多模态反馈,主要是视觉反馈,这有助于在环境动态中执行动作。不同类型的具身环境被提出以促进研究。一些环境允许简单的物体放置,而其他环境支持更高级的物理模拟,例如碰撞。通常分配给智能体的任务包括在模拟环境中探索、导航、问答,或基于人类指令的更具交互性的具体化任务。
虽然具身学习强调在模拟环境中使用物理交互,但工具学习并不局限于特定的环境,而是侧重于使用扩展语言模型功能的接口。这两种范式之间的交集可能会导致更先进的人工智能模型的发展,这些模型能够在复杂和动态的环境中学习和适应。这里我们讨论两个可能的方向。
工具学习实现数码的具体化。工具学习拓宽了具身学习研究的范围。具身学习的核心是智能体与其环境之间的动态交互。从这个意义上说,模型通过工具与世界进行交互。尽管模型可能没有身体,但它也可以被视为一种化身。我们把这种形式的化身称为数字化身。为了充分理解数字体现的概念,我们可以设想一个智能体利用各种api来浏览网络,搜索相关的和最新的信息,并构建一个个性化的知识库。此外,在严格的安全约束下,代理可以使用电子邮件接口等工具与其他代理进行交互,从而以安全可控的方式促进通信和协作。这种方法使代理能够表现出一定程度的自主性和灵活性,类似于类人行为。
数字化身作为智能体智能行为的测试平台。首先,与模拟环境相比,数字化身提供了一种更容易获得和实用的具身学习方法。数字化身的易于部署和使用使其成为研究智能代理行为的研究人员的一个有吸引力的选择。其次,值得注意的是,数字化身所面临的挑战往往围绕着对基于语言的输入的日益重视。因此,这就要求智能体进行更高级的推理和决策操作,从而促进更高层次认知技能的发展。第三,数字化身表现出显著的可扩展性,因为与创建额外的模拟环境互动平台相比,数字工具可以相对容易地开发。这个特点决定了数字化身能够快速扩展,并可以促进为代理操作创建日益复杂的环境和任务。
学习使用具体化的工具。传统的具身学习直接从环境中学习,其中的动作通常是原子的,并且仅限于推、放和拖等基本任务,这与人类解决问题的能力的复杂性相比不足。为了缩小模拟到真实迁移之间的差距并提高代理性能,必须在模拟环境中加入具体化的工具。例如,通过引入锤子和刀具等物体,我们可以评估智能体选择合适工具切割纸张的能力。尽管这些工具有潜在的好处,==但到目前为止,由于模拟的复杂性,还没有研究系统地探索在模拟环境中使用模拟工具。==然而,随着物理引擎计算能力的快速增长,这样的研究方向正变得越来越实用。一个起点可以是利用具有更精致界面和更逼真的物理引擎支持的3D模型资产。
另一个值得研究的途径是工具的自动生成。考虑到在工具学习中,模型可以生成函数来定义API以供其后续使用,如果嵌入的代理能够从头生成资产或在模拟环境中组合现有资产,则其智商将进一步提高。
工具可以作为补充资源来增强基础模型以增强其生成,这使得模型能够有效地合并特定于领域或最新的知识。该领域的研究主要集中在使用外部知识来源(如非结构化的原始文本和特定于领域的api)增强模型。下面首先简要介绍一下使用工具扩充基础模型的前期工作。
用于增强的最具代表性的工具是文本检索器。早期的努力是通过从本地存储库中检索知识来增强语言生成。一些工作建议使用冻结知识检索器检索知识。例如,kNN-LM 通过线性插值两个模型的下一个词分布,将预训练语言模型(PLM)和k近邻模型结合起来,实现了语言建模的低复杂度。还有以端到端方式训练检索器和PLM,在知识密集型NLP任务中获得卓越的性能。后来的作品已经超越了本地存储库,利用整个网络作为知识来源,这允许改进时间泛化和更高的事实准确性。研究人员进一步证明,plm可以像人类一样积极地与搜索引擎互动,而不是视为被动的代理。例如,BlenderBot是一个对话代理,它在生成对话响应时主动决定何时以及如何调用搜索引擎。LaMDA是另一个对话代理,它通过搜索引擎、语言翻译器和计算器来增强其生成。最近,有人提出了背诵增强模型,其中首先通过从PLM中抽样来背诵相关段落,然后用于生成最终答案。直觉是基础模型也可以被看作是知识来源(即,模型知识)。
除了检索工具之外,研究人员还探索了使用其他工具来执行特定的子任务,然后将执行结果集成到基础模型中。例如,Cobbe等人训练PLM使用计算器来执行基本的算术运算。考虑到plm通常只在文本数据上进行预训练,因此在理解和与物理世界交互方面受到限制,Liu等人试图弥合这一差距,并使用物理模拟引擎(MuJoCo)使plm的推理立足于现实世界。实验表明,对PLMs进行物理模拟可以显著提高PLMs的物理理解和推理能力。Chen等、Gao等人建议用Python解释器增强plm。**具体来说,给定一个复杂的任务,plm首先理解它并生成程序作为中间思想。在此之后,程序的执行将被卸载给Python解释器。**该方法在数学和符号推理任务中表现出优异的性能。Nye等人使用scratchpad增强plm,允许它们在进入最终答案之前将中间任务解决过程发送到缓冲区中。该方法显著提高了PLMs执行复杂离散计算的能力。
知识冲突。在实践中,基础模型可以通过各种知识来源进行扩充,包括从训练数据中记忆的模型知识和从工具执行中获得的扩充知识。然而,对在医疗援助和法律咨询等领域中模型生成和规划的准确性和可靠性,不同的知识来源可能不可避免地包含冲突。下面,我们首先介绍不同类型的知识冲突,然后讨论潜在的解决方案。
•模型知识和增强知识之间的冲突。当模型知识和工具增加的知识之间存在差异时,冲突就产生了。这种冲突源于三个主要原因:(1)模型知识可能会过时,因为大多数基础模型不经常更新它们的参数。相比之下,大多数工具提供的实时响应不包括在预训练数据中;(2)与常见的人工智能数据集相比,预训练数据通常较少被整理,并且可能包含错误的知识,例如人类的误解和错误的信念。如果再加上维基百科等可靠来源的回应,这种错误的知识就会导致冲突;(3)工具的执行结果也可能是误导和有偏见的,正如§5.1中提到的,仔细区分一个知识来源是否值得信赖是至关重要的。
•来自不同工具的增强知识之间的冲突。在实践中,控制器可以从多个工具中检索知识,以获得更全面和精确的知识。然而,由于以下几个原因,不同工具返回的信息可能会产生冲突:**(1)不同工具的可信度差异很大,这意味着并非所有工具在所有领域都具有同等的可靠性或权威性。例如,在科学研究的背景下,使用Google Scholar可能比不太可信的来源产生更可靠的结果;(2)不同的工具可能会有偏差,从而影响它们提供的信息。例如,新闻聚合器可能优先考虑耸人听闻的标题而不是准确的报道,从而导致对事件的偏见;(3)即使是具有相同功能的工具,也可能由于算法和实现的不同而产生不同的响应。**例如,由于内部工作方式的不同,对于相同的输入,Bing Translator和Google Translator可能会返回不同的序列。
知识冲突的潜在解决方案。由于前面提到的冲突可能导致模型预测和计划中缺乏可解释性,因此指导模型正确且可靠地集成工具响应是至关重要的。开放域QA的研究表明,像T5这样的小规模模型在对特定数据集进行微调后,可能过于依赖自己的知识。相比之下,像ChatGPT这样更高级的基础模型可以更好地处理这些问题。在下面两图中,我们通过测试冲突发生时的行为,对ChatGPT(2023年3月23日版本)进行了案例研究。我们发现ChatGPT能够在给定检索信息的情况下纠正自己的信念,并能够识别来自不同来源的知识冲突。近期研究也试图引导模型更多地依赖增强知识来进行忠实的预测。然而,这些工作假设增强反应来自单一可靠的来源,这在更复杂的情况下可能并不总是如此。
我们认为,模型应该有能力区分和验证各种来源的可靠性。为了实现这一目标,我们建议以下研究方向:(1)冲突检测:模型应首先检测不同来源之间的潜在冲突,并对其进行标记以供进一步研究;(2)冲突解决:在发现冲突后进行验证和选择可靠的来源也很重要。同时,模型还应该通过解释考虑了哪些知识来源以及如何将其扩展到最终响应中来解释它们的生成
在内部能力和外部工具之间取得平衡。工具学习的基础模型的未来发展提出了一个有趣的问题*:这些模型的功能应该主要内部化,还是应该更多地依赖外部工具?*基础模型的最新进展显示了这两种截然不同的趋势,提出了关于它们的含义和潜在权衡的问题。我们已经讨论了基础模型的工具学习能力,提出了开发模块化架构的可能性,这种架构可以与各种外部工具无缝集成,以增强它们的能力。这种模块化方法可以促进更灵活和可定制的人工智能系统,允许快速扩展模型功能以解决各种任务。
相反,基础模型越来越多地显示出内化和执行许多AI任务的能力,这些任务以前需要单独的工具。例如,基础模型的新兴多语言能力可以减少外部翻译api的必要性。这种向具有多种功能的统一基础模型发展的趋势可能会简化开发过程,并使更高效、自包含的AI系统能够在没有额外工具的情况下处理不同的任务。悬而未决的问题是确定内部化能力和外部工具依赖之间的最佳平衡,以及未来的模型将位于模块化和统一架构之间的范围的何处。
工具使用作为衡量机器智能的标准。长期以来,有效使用工具的能力一直被认为是人类智力的标志。我们认为,工具学习性能可以作为衡量机器智能的下一代标准,与传统的评估指标相比有一定的优势。工具使用评估要求人工智能系统在记忆上使用其获得的知识来完成特定任务,这与现实世界的应用和实用智能的概念更好地保持一致。因此,评估工具使用性能更接近于人类对智能的主观感知。研究人员可以更好地评估人工智能系统在协助人类决策、与人类合作解决问题以及为更广泛的现实应用做出贡献方面的进展。
工具使用中的人-模型协作的道德。将人力与人工智能系统结合使用,可以产生更强大、更准确的知识。然而,这种方法也可能与被广泛接受的伦理原则相冲突,即“人类应该被视为目的本身,而不仅仅是达到目的的手段”。雇用人类来增强基础模型的能力可以被视为贬低人类尊严和将人类专业知识商品化,从而破坏了个人的内在价值。为了解决这些伦理问题,社区必须建立指导方针和保障措施,在将人类劳动与基础模型相结合时优先考虑人类尊严和能动性。这可能涉及为可以委托给人类的任务类型设定明确的界限,确保公平的薪酬和工作条件,以及提高人工智能系统开发的透明度。此外,促进人工智能研究人员、伦理学家、政策制定者和其他利益相关者之间的合作,对于全面了解人类模型合作的伦理影响,并制定保护人权和尊严的有效法规至关重要。
基础模型访问物理工具的安全问题。基础模型访问物理工具(如无人机、机器人和配备传感器的设备)并与之交互的前景,为各种应用(包括自动驾驶、农业和智能家居系统)带来了巨大的希望。此外,通过利用来自物理工具的数据,模型可以为个人、政府机构和其他利益相关者提供准确的建议,从而在各个部门产生显著的效益。然而,这引起了重要的安全问题,必须在广泛实施之前彻底解决。确保工具使用的可信度至关重要,因为这些人工智能系统所采取的任何错误或恶意行为都可能产生严重后果,从财产损失、经济损失到威胁。为了减轻这些风险,研究人员必须专注于开发能够安全地与物理工具交互的强大可靠的人工智能系统。这可能涉及开发新的安全机制,如不确定性估计、故障安全策略和对人工智能生成的行为的持续监测。
科学发现的工具学习。近年来,科学领域的人工智能备受关注,在各种科学场景中显示出巨大的潜力,例如用于证明元数学定理的超树证明搜索,结构生物学中的蛋白质结构预测以及核物理学中的磁执行器线圈控制。总的来说,人工智能系统在从科学数据中捕获规则和模式并为人类研究人员提供提示方面已被证明是有效的。然而,在缺乏专业的科学知识和推理能力训练的情况下,人工智能能够解决的科学问题是有限的。工具学习为这个问题带来了新的解决方案。具体来说,人工智能系统有望操纵科学工具,在科学发现中发挥更重要的作用,并解决多学科问题(如数学、控制论、材料)。例如,MATLAB是为算法开发、数据可视化/分析和数值计算而设计的。有了MATLAB,人工智能系统可以分析原材料、设计算法,并通过模拟来验证假设。除了软件层面,人工智能系统还可以操纵合成机器人等实际平台,并独立进行合成实验。
然而,实现上述想法并不容易。我们已经提到了使用物理工具的安全问题,这也是科学工具学习的一个主要挑战,因为许多科学问题需要在实际情况中进行验证,如果由人工智能来决定,这个过程可能会带来危险。同时,基础模型通常使用自然语言语料库或自然图像进行训练,而科学数据通常更具异质性、数值性和结构化。如何融合从纯文本中学习到的一般智能和科学发现所需的专业知识是值得探索的。最近,Boiko等人展示了这一方向的潜力,并构建了一个使用基础模型来设计、计划和执行科学实验(例如催化交叉耦合反应)的系统。
本文研究了基于基础模型的工具学习范式。首先概括了人类历史上工具使用的认知起源,并从用户界面的角度对工具进行了分类。然后回顾了基础模型带来的人工智能范式转变,并讨论了工具和基础模型的互补作用。对现有的工具学习探索进行了全面的文献回顾,并从制定一个通用的工具学习框架开始。然后,强调了核心研究问题,例如用适当的工具桥接用户意图,通过利用基础模型的推理能力来更好地规划,工具学习的训练策略,以及如何促进工具学习的泛化。最后讨论了重要的研究课题,包括安全与可信的工具学习、大型复杂系统的工具学习、人工智能工具创建、个性化工具学习、具体化工具学习、工具增强中的知识冲突问题等。总的来说,本文是对工具学习的系统研究。