摘要
大语言模型 (LLMs) 在语言智能领域取得了重大进展,尤其在多项复杂推理任务上展现出了卓越的实证性能。理论上的证明也表明了它们在语言处理中的高级认知能力和涌现推理能力。在处理复杂推理任务时,大语言模型 (LLMs) 的关键在于它们采用了引人注目的思维链 (CoT) 推理技术,这种技术要求它们在推导答案的过程中构建中间步骤。CoT 推理不仅在提升推理性能上表现出色,也在增强可解释性、可控性和灵活性方面有显著贡献。鉴于这些优势,近期的研究将 CoT 推理方法应用于自主语言智能体的开发,使这些智能体能够熟练地遵循语言指令,在不同环境中执行任务。这篇综述文章全面探讨了这一领域的关键研究方向,包括:(i) CoT 技术的基础原理,重点解释其有效性的原因;(ii) CoT 的范式转变;及 (iii) 使用 CoT 方法增强的语言智能体的新兴趋势。未来研究的方向包括探索智能体的泛化能力、效率、定制化、规模扩展和安全问题。我们希望通过这篇文章,使读者全面了解 CoT 推理和语言智能体这些研究领域,并理解它们之间的联系。本文适合各个层次的读者,无论是希望全面了解 CoT 推理和语言智能体的新手,还是对这些领域的基础原理感兴趣、想参与最新讨论的资深研究者。相关论文的存储库可在 https://github.com/Zoeyyao27/CoT-Igniting-Agent 找到。
1 引言
语言智能关乎理解自然语言所表达概念并进行推理的能力(Sternberg et al., 1982; Ryan & Lopez, 2001; Ramsden et al., 2011; Luwel et al., 2013)。随着技术规模的不断扩大,大语言模型(LLMs)在实现接近人类水平的语言智能方面取得了突破性进展,这一点不仅在复杂推理任务的出色表现中得到验证(Wei et al., 2022),还体现在关于其涌现推理能力的理论证明上(Prystawski & Goodman, 2023; Wang & Wang, 2023; Bi et al., 2023)。
推理,作为语言智能研究的核心领域,被视为一种多步骤过程。在这个过程中,我们从各个独立的证据中抽取推理,并最终形成更高层次的抽象概念,这些概念对于作出高级预测至关重要(Morency et al., 2022; Yu et al., 2023a; Huang & Chang, 2023)。最新研究表明,相较于直接给出答案,通过引导大语言模型逐步推理可以显著提升其性能(Nye et al., 2022; Wei et al., 2023b)。这种通过逐步推理步骤来解决问题的方法,被称为链式思考提示(Wei et al., 2023b)。
链式思考提示技术的优化引起了广泛关注,并促使 CoT 框架发生了重大变革。这些变化主要体现在三个方面:(i)提示模式的变化,从手动设计的示例学习转变为自动生成提示(Zhang et al., 2023c; Zhou et al., 2023f; Yang et al., 2023a);(ii)推理格式的变化,从非结构化的自然语言转变为结构化形式(Chen et al., 2022; Ziqi & Lu, 2023; Yao et al., 2023a; c);(iii)应用场景的变化,从单一语言环境扩展到多语言环境(Shi et al., 2023),从单一模态转向多模态方法(Zhang et al., 2023d),以及从专注于复杂推理任务转向普适任务的应用(Wang et al., 2022; Li et al., 2022; Wang et al., 2023g; He et al., 2023)。
CoT 推理是大型语言模型(LLMs)(Wei et al., 2022)中一种典型的新兴能力。它巧妙地把复杂问题分解成一系列更小、更易处理的子问题,并通过逐步解决这些子问题来系统地找到答案(见图 2)。CoT 推理利用了在预训练期间发展出的推理能力(Xie et al., 2022; Wang et al.,2023a),能够巧妙地找出推理过程中关键的基础知识,并将它们的关系无缝地结合起来,从而形成一系列清晰、连贯的推理步骤(Prystawski & Goodman, 2023; Wang & Wang, 2023)。在解决这些子问题时,还可以利用知识检索和验证工具(Gou et al., 2023a; Qin et al., 2023b)来进一步提升推理过程。通过将 CoT 推理扩展为一个涵盖感知、记忆和推理的综合框架,我们开发出了由大型语言模型驱动的语言智能体,它们能够精准地遵循语言指令,在真实或模拟环境中执行任务(Rawles et al., 2023; Zhang & Zhang, 2023)(见图 1)。这些语言智能体分为两种类型:一种是自主智能体(Adept, 2022; Richards, 2023; Hong et al., 2023; Nakajima, 2023),另一种是交流型智能体(Park et al., 2023; Wang et al., 2023c; Zhu et al., 2023; Hong et al., 2023)。
在这篇论文中,我们将探讨几个重点研究领域:(i)深入理解 CoT 技术的基本机制,特别是分析 CoT 在何种情况下以及为何会有效;(ii)识别并分析 CoT 领域内正在发生的范式转变;(iii)研究由 CoT 技术驱动的语言智能体的新兴趋势。文章的结构被设计为逐步深入,首先介绍 CoT 推理的基本特征及其使用所带来的好处,然后深入探讨 CoT 的内部机制,阐释其有效性的具体条件和原因。接下来,我们会对范式的转变进行分类,关注不同的提示技巧、推理形式和应用场景。之后,我们将重点探讨由 CoT 技术支持的语言智能体的发展。最后,我们将讨论目前遇到的挑战和未来的发展机遇。
许多相关论文专注于大型语言模型(LLMs)(Zhao et al., 2023c)、CoT 推理(Lu et al., 2023; Qiao et al., 2023; Chu et al., 2023; Yu et al., 2023b)和自主智能体(Wang et al., 2023b; Xi et al., 2023)的不同方面。与之相比,我们的论文不仅仅是对现有知识的总结,而是力图全面探索 CoT 推理的基础机制,并深入了解这一领域正在经历的重大变化。此外,我们还将追踪从大型语言模型的 CoT 推理到最新的自主语言智能体的发展,旨在揭示这些关键研究领域之间的密切联系。本文适合包括对 CoT 推理和语言智能体初学者以及希望深入了解这些领域基础机制和最新进展的资深研究者的广泛读者。
主要结论
在我们的了解范围内,这是首次全面探索连锁思考(CoT)技术的基本机理、CoT 的范式转变以及 CoT 与智能体之间的复杂互动。主要结论如下:
-
当大语言模型(LLM)至少具有 200 亿参数,并且其内嵌的知识片段与待解决的任务相关且彼此紧密相连时,CoT 才能显示出其有效性(详见第3.1 节)。
-
CoT 的作用在于帮助识别对推理至关重要的基础知识元素,并通过构建中间推理步骤将这些元素无缝串联(详见第3.2 节)。
-
CoT 技术经历了重大的范式转变,这包括提示模式、推理格式和应用场景的改变(详见第4 节)。
-
CoT 在推动大语言模型赋能智能体的进化过程中起到了催化剂作用,特别是在提升智能体在理解语言指令和在现实及模拟环境中执行动作方面的能力,尤其体现在感知、记忆和推理能力的提升上(详见第5 节)。
-
尽管大语言模型、CoT 推理和语言智能体的发展突飞猛进,但仍面临众多挑战,比如向未知领域的泛化、在重复交互中的效率问题、语言智能体的个性化定制、规模扩展,以及确保语言智能体的安全性(详见第6 节)。
2CoT 的基本原理
本节将深入讨论 CoT 推理的基础要素。首先,我们将 CoT 推理与传统的直接推理进行了明显区分。其次,我们对 CoT 中的关键组件进行了定义。最后,我们描述了采用 CoT 的优势。
图 2:CoT 推理与直接推理的对比。CoT 指的是生成一系列中间推理步骤以解决问题或得出答案的过程(参见 Wei et al. 2023b)。这种方法通常比直接一次性尝试解决整个问题的直接推理更为有效。
2.1 定义
连锁思考(CoT)是指生成一系列中间推理步骤来解决问题或得出答案的过程(参见 Wei et al. 2023b),其形式为<输入→rightarrow推理链(理由)→rightarrow输出>的映射。这种方法通常比传统的直接推理更有效,后者尝试一次性解决整个问题。例如,在标准分类、多选题和问答问题中,通常会利用直接推理,即<输入→rightarrow输出>的映射形式。
为了更好地理解 CoT,我们对其关键组件进行了标准化定义,如图2所示。具体而言,假设推理数据集的分布为Dmathcal{D},我们用s=(x,y)∼Ds=(x,y)simmathcal{D}表示在Dmathcal{D}上的采样,其中xx和yy分别代表问题(输入)和答案(输出),它们均以文本序列的形式出现。我们使用∣x∣|x|表示序列xx的长度,pθp_{theta}代表以θtheta为参数的预训练语言模型。这些定义的详细信息如下:
指令。
指令通常是简短的句子,用于引导大语言模型以期望的格式生成答案。它们指导大语言模型在推理过程中逐步思考。我们将指令表示为pmathsf{p},根据任务的需求设定为不同的文本序列。
理论依据。
在讨论连续思考过程时,我们把这些过程中的每一步解释和推导统称为“理由”。这些理由可能涉及具体的解决方案、过程中的推理步骤,或者与问题有关的任何外部知识。简单来说,如果这个理由是大语言模型自己生成的,我们就用一个特殊的指令来引导模型产生这个理由。而如果理由是人工编写的,那么这个指令就可以省略,理由就是根据问题直接写出来的。
范例。
在少样本学习方法中,范例通常是一些我们希望模型学习的输入输出对的例子,包含了问题、理由和答案。这些范例就像是在实际生成答案之前给模型的一堂课,展示了怎样从问题到答案的过程。通常情况下,我们会把这些范例放在问题前面,让模型先学习它们。比如说,如果我们有 nn 个范例,就会把这些范例连成一串,形成一个完整的学习材料。
零样本-CoT。
零样本-CoT 的方法不需要提前给模型范例作为示例。这种方法主要是通过一些特殊的指令来引导模型,让它能够一步一步地思考并找到答案。举个例子,Kojima 等人在 2023 年的研究中首先用一个像“让我们逐步思考”这样的指令让模型生成一个理由,然后再用一个“答案是”这样的指令来引导模型给出最终的答案。
少样本-CoT。
少样本-CoT 方法则是先给模型一些已经包含了问题、理由和答案的范例,这样模型就可以在这些范例的基础上生成新的答案。在这种情况下,模型是在整个问题和范例的上下文中一步步找到答案的。
2.2 连续思考的好处
连续思考技术带来了许多好处,它不仅提高了推理的准确性,还使得推理过程更加可解释、可控和灵活。下面我们将详细介绍这些好处。
改善的推理性能
CoT 使大语言模型 (LLM) 在推理过程中能够逐步深入。它通过将复杂的多步骤问题拆解为更易管理的中间阶段,有效减少了忽略关键细节的风险。此外,CoT 还能确保额外计算资源能够有效分配至那些需要更深层次推理的问题上。已有诸多研究证实了 CoT 在包括算术推理、常识推理和符号推理在内的多个领域的有效性(Wei et al., 2023b; Kojima et al., 2023; Wang et al., 2023f)。
提高的可解释性
CoT 提供了一种解释大语言模型 (LLM) 决策过程的方式。它通过将复杂的推理任务分解为一连串相互关联的思考环节,使我们能更容易理解 LLM 做出某个决策或结论的逻辑和推理过程。这种方法不仅有助于揭示模型是如何得出特定答案的,还能为发现和修正推理过程中的偏差提供重要见解。然而,要完全揭示支撑答案的模型计算过程,仍是一个尚待解决的挑战(Wei et al., 2023b)。
更强的可控制性
通过引导大语言模型 (LLM) 输出一系列相互关联的思考链,用户可以更有效地影响 LLM 的认知过程。许多研究(Yao et al., 2023a; Ling et al., 2023)专注于识别和修正那些推理路径可能出错或需要额外信息的关键思考环节。这种增强的可控制性使得得出的答案更加精准和深思熟虑。
更大的灵活性
通过简单地在足够大的现成大语言模型 (LLM) 的输入问题末尾添加指令,就能轻松启动 CoT 推理,适用于零样本-CoT 或少样本-CoT 场景(Wei et al., 2023b)。CoT 的应用灵活多变,不仅限于推理任务,还可扩展到包括传统自然语言处理 (NLP)、科学应用和基于智能体的系统等多个领域。
CoT 的基础机制
本节将探讨 CoT 的基本机制,包括决定其有效性的一般条件。
3.1 CoT 有效的场景
虽然 CoT 展示了许多优势,但它并不适用于所有情境 (Kojima et al., 2023; Wei et al., 2023b; Zhang et al., 2023d)。接下来,我们将从工程和理论两个方面介绍 CoT 在哪些情况下有效,并总结一些通用条件,以指导 CoT 推理的有效应用。
∙bullet 在工程实践方面,Wei et al. (2023b) 认为,在以下三种条件下,CoT 推理特别有帮助:(i) 使用的是大语言模型;(ii) 面对的任务具有挑战性,需要多步骤的推理过程;(iii) 随着模型规模的增大,简单的直接提示方式并不能显著提高性能。特别值得一提的是,Tay et al. (2022) 的研究进一步证明,即使是预训练在各种去噪功能上、拥有 200 亿参数的大语言模型,也能有效地进行 CoT 推理。需要注意的是,最近有研究开始尝试对较小的语言模型进行特定任务的 CoT 推理微调(例如 Magister et al., 2022; Yue et al., 2023)。在这里,我们主要讨论的是大语言模型本身在无需针对 CoT 风格的训练数据进行额外任务特定微调的情况下,如何实现有效的 CoT 推理——即比直接推理有更好的表现。否则,使用较小的大语言模型进行 CoT 推理可能会遇到困难(例如 Wei et al., 2022),可能因为大语言模型缺乏足够的支持性知识而导致错误的推理(例如 Zhang et al., 2023d),或者推理能力不足(例如 Magister et al., 2022)。此外,CoT 推理在简单的单步任务中,如匹配、序列标记(Qin et al., 2023a)和单项选择题(Chen et al., 2023a)等,效果也不太理想。
∙bullet 从理论角度来看,Prystawski & Goodman (2023) 证明了,在训练数据中包含了相互强烈影响的局部变量群聚时,CoT 推理尤其有效。这说明大语言模型必须具备与任务紧密相关的知识,才能有效支持 CoT 推理。这类知识我们称之为“原子知识”。
因为 CoT 推理常常是通过上下文学习(例如 Zero-Shot-CoT 和 Few-Shot-CoT)来激发的,所以也有研究从上下文学习的视角来探讨 CoT 何时有效。例如,Zhang et al. (2023c) 发现,在用多样化的例子提示时,CoT 推理更为有效。Wang et al. (2023a) 则发现,推理过程中的逻辑和步骤与查询问题紧密相关且排序正确,是 CoT 提示有效的关键。
除了提示方式,将推理材料和必要知识引入大语言模型的训练语料中,也显著提升了大语言模型的 CoT 推理能力(Yu et al., 2023b)。最近的研究表明,使用代码数据进行预训练(例如 Chung et al., 2022)或用 CoT 风格的数据进行微调(例如指令调整,Yue et al., 2023)对于有效的 CoT 推理非常有益。这意味着,在相同的大语言模型中可以提升 CoT 推理的效果,或者在较小的模型中引入 CoT 推理的能力。
综上所述,CoT 推理在以下两个主要条件下表现出色:首先,使用至少具备 200 亿参数的大语言模型;其次,模型内的参数知识包含与任务相关、相互关联紧密的知识片段。
3.2 为什么 CoT 方法有效
近期的研究通过实证和理论两种途径,深入探索了 CoT 方法之所以行之有效的根本原因。
∙bullet 实证研究方面,Wei et al. (2023b) 认为,CoT 推理的成功不仅仅是单一现象,而是涉及了多种涌现能力的综合体现。这些能力包括语义理解、符号映射、主题连贯性、算数能力和准确性。特别地,Zhang et al. (2023c) 发现,即使示例推理中存在错误,也不会对性能产生显著影响。Wang et al. (2023a) 的研究也显示出相似的结果,即使示例中的推理步骤不正确,大语言模型仍能生成连贯的推理过程,并保持高达 80-90% 的性能水平。这表明,大语言模型在预先训练之后,已经具备了内在的推理能力(Zhang et al., 2023c; Wang & Wang, 2023)。CoT 提示通过规定特定的输出格式,引导模型按步骤、有序地进行推理,与查询问题紧密相关(Wang et al., 2023a)。换言之,CoT 技术的作用是促使模型进行推理,而不是从头教授它如何进行推理(Zhang et al., 2023c)。
∙bullet 在理论研究方面,贝叶斯推理是从理论角度探究 CoT 有效性的常用方法(Prystawski & Goodman, 2023; Wang & Wang, 2023)。Prystawski & Goodman (2023) 的研究证明了,当训练数据在变量之间的关系上表现出一定的局部结构时,CoT 方法是有效的。对于大语言模型来说,这意味着模型中的参数化知识涵盖了与目标问题相关的知识片段,并且这些知识片段之间存在紧密的相互联系。Bi et al. (2023) 通过对代码数据的实证研究,证实了数据的局部结构特征对提升 CoT 推理能力极为重要。Prystawski & Goodman (2023) 和 Bi et al. (2023) 的发现强有力地表明,CoT 方法有助于识别用于推理的基础知识片段,并通过中间推理步骤将这些片段联系起来。类似地,Wang & Wang (2023) 利用知识图谱进行分析,发现以 CoT 形式组织已知事实——即将事实串成“链条”——能显著提高推理的效果。这样,大语言模型能够准确地从已知事实推导出新的事实,以回答特定的问题,而无需明确编码推理规则。
CoT 在大语言模型中的四个范式转变
图 3: 七项推理任务的性能对比。“直接提示”是指传统的少样本提示方法,通过问题和答案的格式化,模型直接提供答案。“无自我一致性的最佳 CoT”、“有自我一致性的最佳 CoT”和“综合最佳 CoT”分别代表了截至 2023 年 10 月的最高准确率(“自我一致性”指的是 Wang et al. 2023f 的研究)。前两者使用的是 text-davinci-002 作为大语言模型,而最后一个则根据不同任务选择不同模型(详见表 1)。为了公平比较,这四种方法的性能都是基于同一大语言模型 text-davinci-002。
在明确 CoT 在何种条件下有效之后,我们进一步深入探讨了 CoT 如何提升大语言模型的推理能力。我们总结了截至 2023 年 10 月,CoT 在七项代表性推理任务中的最佳表现,并将其与未使用 CoT 的表现进行对比,结果展示在图 3。这七项任务包括:(i) 算术推理,如 GSM8K(Cobbe et al., 2021)、AQuA(Ling et al., 2017)和 SVAMP(Patel et al., 2021);(ii) 常识推理,如 CSQA(Talmor et al., 2019)和 Strategy QA(Geva et al., 2021);(iii) 符号推理,如 Last Letter Concatenation(Wei et al., 2023b)和 Coin Flip(Wei et al., 2023b)。
从图 3 可以清晰看出,CoT 显著提升了大语言模型在这七项复杂推理任务中的表现。尤其值得注意的是,在算术和符号推理领域,Wei et al.(2023b)提出的简易 CoT 格式 Manual-CoT,相比于直接提示,大幅提升了整体准确率,这一点在常识推理领域同样适用。
尽管在常识推理任务中,Manual-CoT(Wei et al., 2023b)和 Zero-Shot-CoT(Kojima et al., 2023)的 CoT 性能有所不足,但当与更大规模的 PaLM(540B)模型结合时,CoT 能够显著增强常识推理能力。特别是,Zero-Shot-CoT 还指出,通过 CoT 生成的推理过程通常逻辑正确或仅包含易于人类理解的错误。这意味着,CoT 在提升常识推理方面发挥了作用,即使这种提升并未在任务指标中直接体现。虽然 Manual-CoT 在常识推理上未能显著提升性能,但通过自我一致性答案聚合(Wang et al., 2023f)和自动示例构建(Shum et al., 2023)等推理技术的优化,CoT 展现出在各种任务中取得显著成果的潜力。
此外,为了方便读者参考,并清晰展示 CoT 如何在七个不同数据集上取得卓越表现,我们在表 1 中列出了实现最佳表现的最新模型及其使用的大语言模型引擎。
表 1: 七项推理任务中的最佳 CoT* 性能(SC: 指 Wang et al. (2023f) 提出的自我一致性方法)。
类别 | 数据集 | 模型 | 最高准确率 | 大语言模型 |
---|---|---|---|---|
算术推理 | GSM8K | CSV (周等人,2023b) | 97.00 | GPT-4 代码解释器 |
AQuA | 自然程序 (凌等人,2023) | 70.34 | Chatgpt | |
SVAMP | PoT (陈等人,2022) + SC | 89.10 | Text-davinci-002 | |
常识推理 | CSQA | 手动链式推理 (魏等人,2023b) + SC | 95.10 | PaLM 2 |
策略 QA | 手动链式推理 (魏等人,2023b) + SC | 90.40 | PaLM 2 | |
符号推理 | 最后字母串联 | 自然程序 (凌等人,2023) | 92.98 | Chatgpt |
硬币翻转 | 自动链式推理 (张等人,2023c) | 99.90 | Text-davinci-002 |
总体来看,与魏等人(2023b)的传统提示方法相比,最新的链式推理(CoT)技术在推理过程的各个环节都得到了显著增强。这些进步包括多模态感知(张等人,2023d; 姚等人,2023c; 黄等人,2023b; 罗斯等人,2023)、自动化提示(张等人,2023c; 刁等人,2023)、推理验证(翁等人,2022; 莱特曼等人,2023; 凌等人,2023)以及基于一致性的抽样(王等人,2023f; 2022)。
随着对链式推理的关注不断增加,研究人员正不断尝试挖掘这一技术在提升大语言模型推理能力方面的全部潜力。本节我们将带领读者深入探索链式推理领域,沿着图 4 所示的链式推理研究全貌,深入了解在三个关键方向上的最新进展:(i) 提示模式;(ii) 推理格式;以及 (iii) 应用场景。
4.1 提示模式
提示模式主要分为两类:指令生成 和 示例生成。指令生成着重于寻找最优指令,以引导大语言模型进行逐步推理,而非直接回答问题,从而最大化其零样本能力。而示例生成则聚焦于为少样本链式推理(Few-Shot-CoT)找到最佳的输入 – 输出示例对。这些示例与测试输入一起用于引导大语言模型,帮助它预测相应的输出。
4.1.1 指令生成
指令生成主要分为两种:手动和自动,区别在于它们的生成过程。
早期,人们主要是手动制定指令提示。最早也最传统的方法是 Kojima 等人 (2023) 提出的 Zero-Shot-CoT。这种方法通过在每个答案前加上一个简单的提示:“让我们一步一步地思考”,展示了大语言模型 (LLMs) 能够进行零样本推理。Zero-Shot-CoT 在许多推理任务上的表现超过了传统的零样本大语言模型,无需依赖少数精心设计的示例,开启了 Zero-Shot-CoT 新时代。
Wang 等人 (2023d) 推出了 Plan-and-Solve (PS) 提示法,以解决 Zero-Shot-CoT 推理中遗漏的步骤。这种方法包括两个阶段:首先,通过提示模板“先了解问题,制定解决方案。然后逐步执行计划,解决问题”来引导大语言模型,生成推理过程和答案;其次,通过特定的答案提示(如:“因此,答案(用阿拉伯数字表示)是”)来提取答案。
然而,手动设计指令并非总能达到预期效果,用户常需尝试多种提示来获得所需结果。为应对这一挑战,Zhou 等人 (2023f) 提出了自动提示工程师 (APE) 方法,旨在自动化生成和选择大语言模型的指令。APE 将指令生成视为一种自然语言程序合成,通过在大语言模型提出的指令候选池中搜索来优化这一过程。APE 首先指导大语言模型用手工模板生成候选指令,然后选择基于输入输出示例评分最高的指令。这种方法大大减少了人工干预,生成了高质量的指令。
Yang 等人 (2023a) 提出了 Optimization by PROmpting (OPRO) 方法,这是一种简单但高效的方法,利用大语言模型作为优化器。OPRO 首先用自然语言描述优化问题和优化轨迹,包括之前的解决方案及其优化分数。然后,制定并评估新解决方案的性能和质量。在随后的优化步骤中,将这些解决方案经过细致评估后纳入提示。通过这样的迭代过程,解决方案逐渐完善,质量不断提升。
OPRO 最初用于解决两个经典的优化问题:线性回归问题和旅行商问题。研究表明,OPRO 优化的提示在 GSM8K 和 Big-Bench Hard 等任务上的表现超越了人类设计的提示。这表明,OPRO 在解决常见优化问题和通过大语言模型进行自然语言优化任务方面显示出了高效性,能够不断生成并改善解决方案。
4.1.2 范例生成
范例生成的方法类似于指令生成,分为手动和自动两种方式。
在少样本 – 思维链 (Few-Shot-CoT) 推理中,Wei et al. (2023b) 提出了一种方法,通过多个输入 – 输出对激发大语言模型 (LL 大语言模型 (LLM) 输出推理过程和最终答案。我们将这种方法称为手动思维链 (Manual-CoT),它遵循传统的手动范例生成方式。不同于一般的上下文学习,手动思维链要求除了目标输出外,还需向模型提供额外的逻辑推理步骤。
Diao et al. (2023) 在此基础上进一步发展,他们优化了范例的选取,并引入了“主动式提示”(Active-Prompt)。这种方法结合了手动和自动范例生成,通过基于不确定性的学习方法从特定任务的问题池中筛选出最具挑战性的问题。然后,模型多次尝试解答这些问题,并根据不确定性指标(如意见不一、熵值、方差、自信度)选择问题,手动标注推理过程,并将其用于进一步的推理。
为了避免手工制作每一个特定任务的推理链,Zhang et al. (2023c) 提出了自动思维链 (Auto-CoT) 方法。该方法通过自动生成推理链来构建示例,保持问题样本的多样性。具体来说,它包括两个阶段:首先是问题聚类,将问题分成几个类别;其次是示例采样,从每个类别中选取代表性问题并自动生成其推理链。
Shum et al. (2023) 提出了自动化思维链 (Automate-CoT) 策略,自动化了增强和选择用于思维链提示的理由链的过程。这个过程包括三个步骤:首先是扩展语言模型以生成多个候选思维链,然后基于与正确答案的一致性来筛选这些链条,最后使用降低方差的策略梯度方法挑选出最有助于推理的思维链。
4.2 推理格式
推理格式的改进主要涉及三个方面:CoT 结构化、推理汇总和 CoT 验证。CoT 结构化是指将连续的思维链转化为树状、图状或表格等多种认知结构,从而引入结构化的思维提示。推理汇总则关注于通过汇总大语言模型 (LLM) 的 CoT 推理结果来提高其准确性。CoT 验证强调引入验证机制,以检验和修正思维链的推理过程。这三个方面将在后续章节中详细介绍。
4.2.1 思维链条 (CoT) 的发展
图 5 展示了五种代表性的思维链条 (CoT) 发展形式。我们将根据这幅图,逐步深入探讨 CoT 的发展变化。
图 5:CoT 的发展。我们按时间顺序呈现五种主要的 CoT 形式:(i) 思维链条 (CoT),(ii) 思维程序 (Program-of-Thoughts, PoT)(由 Chen et al. 在 2022 年提出),(iii) 思维表格 (Table-of-Thoughts, Tab-CoT)(由 Ziqi 和 Lu 在 2023 年提出),(iv) 思维树 (Tree-of-Thoughts, ToT)(由 Yao et al. 在 2023a 年提出),(v) 思维图 (Graph-of-Thoughts-Rationale, GoT-Rationale)(由 Besta et al. 在 2023 年提出)。
Chen et al. 在 2022 年引入了思维程序 (PoT),用以解决复杂的数值推理任务。PoT 结合了语言模型和程序语言,生成可在程序解释器上执行的声明,从而把复杂计算与推理、语言理解分开处理。
Ziqi 和 Lu 在 2023 年探讨了大语言模型 (LLM) 的结构化推理能力。他们提出了表格化思维链条 (Tab-CoT),采用填表方法模拟 CoT。Tab-CoT 设计了一种“∣| 步骤 ∣| 子问题 ∣| 过程 ∣| 结果 ∣|”的格式,指导 LLM 生成表格并在推理过程中填写。这种方法最终从表格中提取答案,展示了在多维度推理任务中,无论是零样本还是少样本情况下的强大能力,涵盖了行与列的各个方面。
Yao et al. 在 2023a 年提出了思维树 (ToT),它将 CoT 分解成独立的思维单元,并以树状结构组织这些单元。ToT 让 LLM 能够探索用于解题的连贯思维单元,考虑不同的选择并评估其决策。通过结合多种方法,ToT 不仅能够预测下一步该做什么,还能追溯以前的决策进行纠正。研究显示,ToT 在提升语言模型解决问题的能力方面取得了显著成就,尤其在需要复杂策划和搜索过程的任务中表现突出。
Besta et al. 在 2023 年基于 ToT 的基础上,将树状结构发展为图状结构,提出了思维图 (Graph-of-Thoughts-Rationale, GoT-Rationale)(为与 Yao et al. 在 2023c 年提出的 GoT 区别,这里称为 GoT-rationale)。GoT-rationale 将语言模型的思维生成过程视为一个图。GoT 的系统架构包含多个交互模块:(i) 提示器,准备给 LLM 的提示并生成响应;(ii) 解析器,提取 LLM 响应中的信息,供其他模块使用;(iii) 评分器,验证并评价 LLM 回答的质量和任务相关性;(iv) 控制器,包含两个部分:操作图 (Graph of Operations, GoO) 和推理状态图 (Graph Reasoning State, GRS)。GoO 是一个静态结构,定义了特定任务的图解构方式,包括应用于 LLM 思维的转换顺序及其依赖关系。GRS 则是一个动态结构,跟踪记录 LLM 推理过程的状态,包括其思维历史及状态。研究表明,GoT 在处理排序、集合操作、关键词统计和文档合并等任务时,超越了现有的最先进技术。
Lee & Kim (2023) 提出了“思维递归”(Recursion of Thought, RoT) 方法,它让语言模型能够循环生成多个解决问题的上下文环境。在 RoT 中,大语言模型 (LLMs) 会输出特殊的标记,如 GO、THINK 和 STOP,这些标记启动与上下文相关的操作。THINK 标记意味着模型需要解决一个子问题,进而引发一个递归过程,为该子问题创建新的上下文环境。这种创新方式使模型可以有效地处理那些解决方案超出最大上下文限制的问题,通过创建和管理多个层叠的上下文环境来实现。
与之前专注于将结构信息融入思维链推理的研究不同,Ning et al. (2023) 提出了“思维骨架”(Skeleton-of-Thought, SoT) 方法,旨在加快思维链推理的过程。SoT 分为两个阶段:(i) 骨架阶段:SoT 指导大语言模型 (LLMs) 输出答案的简洁骨架,通过特制的提示模板,并从响应中提取关键要点;(ii) 要点扩展阶段:SoT 引导大语言模型依据每个要点制定的扩展模板并行扩充内容,最终将所有要点整合,形成最终答案。
4.2.2 推理聚合
Wang et al. (2023f) 创新地引入了一种称为自我一致性的解码策略,以替代传统的贪婪解码方法。在自我一致性的思维链中,首先按照手工思维链 (Manual-CoT)(Wei et al., 2023b)的方式引导语言模型,然后从模型的解码器中采样出多样的推理路径。自我一致性思维链通过多数投票来确定最一致的答案,这种方法被证明能显著提升思维链的性能。
Wang et al. (2022) 进一步发展了一个名为理由增强集成的统一框架,其目的是聚合来自语言模型生成的多种理由,以减少结果的脆弱性。作者探讨了三种不同的理由增强集成方法,这些方法在引入输入或输出空间的随机性方面有所不同:(i) 自我一致性 (Wang et al., 2023f):这种集成是基于对多个语言模型输出结果的采样;(ii) 提示顺序集成:此集成过程基于输入示例的顺序;(iii) 输入理由集成:这种集成方式是基于从大语言模型 (LLMs) 中采样多个输入示例的理由。作者发现,无论输入或提示怎样变化,改善任务性能的最佳方法是在输出空间中采样理由。
4.2.3 CoT 验证
CoT 验证最初是通过多轮问题互动来实现模型自我校验,目的是让模型能自行确认其回答的准确性。随后,研究者开始利用外部工具,比如信息检索系统、计算器或程序执行等手段来验证信息。这一部分将探讨 CoT 验证中的多种方法和策略,这些方法和策略对提升模型可靠性和回答准确度起到了关键作用。
Weng 团队(2022)首次提出并验证了,大语言模型可以利用 CoT 得出的结论来自我校验原始问题。这种自我验证包括两个阶段:首先是向前推理,挑选多条可能的推理路径;接着是向后验证,通过隐藏原始条件并预测其结果,对每个候选答案打分。最终选出得分最高的答案。
Lightman 团队(2023)的研究重点是训练奖励模型。他们比较了应用于 MATH 数据集(Hendrycks 团队,2021b)的大语言模型在两种奖励模型上的表现:一种是结果监督奖励模型,另一种是过程监督奖励模型。结果显示,过程监督明显优于结果监督。结果监督是自动进行的,因为 MATH 数据集中的答案可以自动检查。而过程监督则需要人工标注者来评估模型生成解决方案中每个步骤的正确性。研究团队还发布了 PRM800K,这是一个含有 80 万个步骤级别的人类反馈标签的完整数据集,用于训练他们的高效奖励模型。
Ling 团队(2023)提出了一种新的验证方法,称为“自然程序”。这种方法将推理过程分解为独立的步骤,每一步都附带必要的最小前提集。他们使用了一个两阶段的序列生成策略——“一致性 – 多数投票”,来检验演绎推理过程。这个策略首先对推理链进行演绎验证,然后通过多数投票选出验证通过的候选链,从而得出最终答案。
基于自洽 CoT 的研究(Wang 团队,2023f),Zhao 团队(2023b)设计了一种称为 Verify-and-Edit 的框架,用于提升 CoT 生成的推理链的真实性和准确性。这个框架首先对一致性低于平均水平的预测进行进一步处理。接着,他们用特别设计的提示问题来检验预测结果的真实性。框架还会从可靠的系统(如 Wikipedia、Google)中获取外部知识,并利用这些知识来修正生成的推理。最后,框架基于修正后的推理重新生成预测。
同样,Gou 团队(2023a)引入了一种名为 CRITIC 的框架,该框架允许大语言模型通过与工具交互的方式来验证并改进自己的输出。CRITIC 把多种外部工具转化为文本到文本的功能(例如,搜索引擎、代码解释器),以便将这些工具集成到大语言模型中。通过特别设计的提示模板,这个框架从初始输出开始,并与相应的外部工具交互,以评估文本的某些方面。在验证过程中根据反馈修订输出。
Zou 团队(2023)提出了名为 AuRoRA 的系统,这是一种配备任务自适应 CoT 提示的增强推理和精炼系统。AuRoRA 特点在于其能够自适应任务需求和自动化处理过程。它从多个来源提取相关知识,减少了信息不准确的问题。不同来源的知识(如 Wikipedia)被结合、双重检查和精炼,以提高可靠性。系统通过使用高质量的提取知识来修订初始 CoT,从而提高答案的准确性和逻辑性。
为了提高推理性能,学者们提出了使用多个 AI 智能体进行辩论的方法,而不是仅依赖单一的大语言模型 (LLM) 根据其之前的输出进行改进(Du et al., 2023)。Liang et al. (2023) 发现了一个思维退化问题,即当大语言模型对自己的解决方案产生了信心后,即使其最初的立场是错误的,它也很难通过反思产生新的思考。这个问题可以通过多智能体辩论 (MAD) 框架来解决,在这个框架中,多个 AI 智能体展示他们的论点,由一位裁判管理辩论过程,以得出最终解决方案。Du et al. (2023) 还展示了利用多个大语言模型实例进行多轮辩论,以达成一致的最终答案的方法。这种方法不仅提高了生成内容的准确性,还减少了错误答案和错误想象的出现。
∙bullet 大语言模型能否有效进行思维链验证 (CoT verification) 呢?尽管上述方法被提出以提升推理性能和可靠性,但它们的作用和有效性仍受到质疑。近期研究尝试探讨大语言模型在推理任务中的自我验证能力(Valmeekam et al., 2023; Huang et al., 2023a; Stechly et al., 2023)。Huang et al. (2023a) 发现,尽管使用基于事实的指导、外部工具或环境反馈的神谕可以促进自我纠正,但在现实应用中获得高质量的外部反馈非常困难。没有这些神谕的帮助,大语言模型仅依赖内在能力纠正错误时会遇到挑战,这就是我们所说的“不完美验证”。在这种情况下,大语言模型可能会错误地标记不存在的违规行为,并在验证过程中出现错误时错误地纠正推理过程,有时甚至会忽略正确的解决方案(Valmeekam et al., 2023)。这种现象引发了对大语言模型在准确评估自己推理过程正确性方面内在能力的担忧。显然,要有效进行思维链验证,关键在于利用外部高质量的反馈。例如,将搜索引擎和计算器等工具整合到验证过程中已被证明是有益的(Chen et al., 2022; 2023d; Olausson et al., 2023; Pan et al., 2023)。
4.3 应用场景
随着大语言模型推理能力增强的最新技术的发展,思维链技术在应用场景上展现出更大的影响。这些场景的变化包括从单一语言任务扩展到多语言任务,从单一模态扩展到多模态,以及从复杂推理任务扩展到通用任务。
4.3.1 从单语言到多语言场景
Shi et al. (2023) 将思维链技术扩展到多语言领域,并引入了多语言小学数学 (MGSM) 基准测试,以评估大语言模型在多语言环境中的推理能力。这一基准包括 250 个翻译成十种不同语言的小学数学题。此外,研究人员还提出了“多语言思维链”概念,即使用多种语言的示例来提示大语言模型,并结合使用英语的中间推理步骤。这种方法不仅具有竞争力,有时甚至表现更佳。多语言思维链表明,使用英语作为多语言推理研究的基准可能是一种有效的策略。
4.3.2 从单一文本到多种形式的信息融合
在思维链 (CoT) 的研究中,信息的展示和处理可以分为两种类型:一种是输入多种形式的信息,另一种则是输出多种形式的信息。具体来说,我们可以通过图 6 来看到这两种多样信息的融合方式。
图 6: 多样信息融合在 CoT 中的应用。简单来说,CoT 的多样信息融合分为两类:(i) 输入端:包括文本、图片 (张等人研究,2023d)、标题 (黄等人研究,2023b) 和图形 (姚等人研究,2023c) 等不同形式的信息被加入模型;(ii) 输出端:例如文本和图片 (罗斯等人研究,2023) 等多种形式的信息被模型产生。
张等人的研究 (2023d) 首次尝试将多种信息形式融合到 CoT 的输入端,这使得 CoT 不仅仅局限于文字信息。他们提出了一种结合多种信息形式的 CoT,称为 MM-CoT。与传统的大语言模型不同,MM-CoT 更侧重于通过具体实例调整模型,使其能够处理语言(文本)和视觉(图像)两种信息。MM-CoT 分为两个阶段:首先生成解释性的理由,然后进行答案推断。在这个过程中,MM-CoT 通过一种称为“门控融合”的技术,将文字和图像信息有效结合起来。研究表明,加入图像信息可以帮助大语言模型更好地生成推理路径,减少错误信息的产生,从而提高整体性能。
继张等人 (2023d) 的研究后,姚等人 (2023c) 将图形结构融入 CoT 的输入端,并提出了一个两阶段的处理流程,称为“思维图输入”(GoT-Input)。与仅将思维过程建模为图形结构的 GoT-Rationale (贝斯塔等人,2023) 不同,GoT-Input 更注重于利用从 CoT 的理由中提取的思维图来增强模型的推理能力。在第一阶段,模型基于输入问题和从输入中提取的主 – 谓 – 宾三元组来构建思维图,并生成理由。在第二阶段,模型利用问题、已生成的理由以及基于输入文本新构建的思维图来产生答案。GoT 使用不同的编码器处理文本、图形和图像信息,并通过图神经网络 (GNN) 增强演绎推理能力,最后通过门控融合技术综合这些特征,生成最终答案。GoT 通过模拟人类思维的非线性特征,证明了其在增强大语言模型的演绎推理能力方面的有效性。
在黄等人 (2023b) 的研究中,介绍了一种名为 KOSMOS-1 的多模态语言模型,能够处理多种不同的信息形式。他们探索了使用 KOSMOS-1 进行多模态思维链提示的方法。在初始阶段,面对一幅图像,研究者使用“详细介绍这幅图片:”的提示语来生成图像的详细描述作为基础理由。然后,模型结合这些理由和特定任务的提示语来产生最终结果。
与上述输入多模态 CoT 不同,视觉思维链 (VCoT) (罗斯等人,2023) 则是在输出端引入多模态信息。VCoT 首先为视觉元素生成标题,并识别多点聚焦点以维持输入序列的一致性。之后,它采用递归方法来生成包含图像和图像标题的多模态填充内容。这种方法结合了以新颖性为驱动的递归填充和以一致性为导向的视觉增强,以此来增强多步骤推理过程的可理解性和逻辑连贯性。这些策略最终有助于提高下游任务的表现,使得模型在处理复杂问题时更具解释性和逻辑性。
4.3.3 从复杂推理任务到通用任务
CoT(连锁思维)的运用已经从数学、常识和逻辑推理等领域扩展到了自然语言处理的各个方面。
Wang 等人 (2023g) 将 CoT 应用到了摘要制作领域,推出了 SumCoT(摘要连锁思维)技术。这一技术旨在引导大语言模型(LLMs)逐步生成摘要,使得能够将原文中的细节更加精确地融入摘要之中。SumCoT 首先让 LLMs 根据设计好的引导性问题,从原文中提取关键新闻要素。接着,将这些要素与原文中的其他细节结合起来,形成全面、内容丰富的摘要。
Li 等人 (2023f) 提出了一种用于开放领域问答(ODQA)的自我提示 LLMs 方法。这个方法分为两个阶段:第一阶段,让模型通过提示来自动生成问答对及其上下文段落和解释,以形成一个伪 ODQA 数据集。第二阶段,模型会动态地从一个示例池中选取几个示例,用于提供上下文信息,帮助理解和回答特定的问题。
He 等人 (2023) 探讨了 CoT 在机器翻译中的应用,并提出了多方面提示和选择(MAPS)策略。该策略借鉴了人类翻译时的方法,将翻译过程分解为多个步骤,先让 LLM 确定待翻译句子的主题和关键词,然后寻找相似的例句。通过这样的方式,LLM 能生成更准确的翻译。
除了这些传统的 NLP 任务外,很多研究也在积极探索将 CoT 推理应用到科学领域和自动化智能体的开发中。
Singhal 等人 (2022) 提出了 MultiMedQA,这是一个融合了六个现有开放式问答数据集和一个新的名为 HealthSearchQA 的医疗问题在线搜索自由响应数据集的基准。基于此基准,作者进一步提出了指令提示调整技术,将 Flan-PaLM 更好地适应医疗领域,创建了 Med-PaLM。具体来说,作者首先使用软提示作为多个医疗数据集共用的初始前缀,然后加入与特定任务相关的手动示例或指令,以及目标问题。在遵循 CoT 推理格式的基础上,Med-PaLM 在回答消费者医疗问题方面的表现,与专业医生提供的答案相媲美,从而证明了指令提示调整技术的有效性。这项研究展示了将大语言模型应用于医疗领域的潜力与挑战。
Bran 等人 (2023) 将 CoT 应用到化学领域,推出了一个名为 ChemCrow 的化学智能体。ChemCrow 旨在应对从有机合成、药物发现到材料设计等多种挑战。在结构化的 CoT 推理框架下运行,ChemCrow 首先组建了一个包含各种化学相关软件和工具的工具包。接着,ChemCrow 中的 LLM 在 CoT 推理原则的引导下,开始了一个自动化和迭代的思维链过程,从评估任务当前状态、考虑与最终目标的一致性、规划下一步操作和工具选择,到最终解决问题。通过整合了 18 种专家设计的工具,LLM 在化学相关任务的表现得到了显著提升。ChemCrow 通过整合 CoT 推理,展示了其在独立规划和执行多样化化学任务,如合成驱虫剂、有机催化剂,甚至发现新的发色团等方面的能力,有效地证明了其在自动化化学任务中的应用潜力。
5 向语言智能体迈进
随着先进技术的不断发展,链式思考(Chain of Thought,简称 CoT)推理在人工智能(AI)领域产生了显著影响,特别是在现实生活中自主智能体的发展方面。构建能在特定环境中学习和行动的智能自主智能体,一直是人工智能的长远目标(参见 Searle 1969 年、Wooldridge 与 Jennings 1995 年、Maes 1995 年、Hendler 1999 年、Wang 等人 2023 年 b、Xi 等人 2023 年、Zhou 等人 2023 年 d 的研究)。基于此前的快速进展,CoT 推理方法已应用于感知、记忆和推理等领域,助力语言智能体在越来越复杂的环境中实现交互。这些能力是开发自主智能体的基础,它们通过人与智能体、智能体与智能体之间的合作,帮助解决复杂的任务。
因此,利用 CoT 技术增强的基于大语言模型(LLM)的语言智能体,在工程(例如 Li 等人 2023 年 a、Mehta 等人 2023 年、Qian 等人 2023 年)、自然科学(如 Bran 等人 2023 年、Kang 与 Kim 2023 年、Boiko 等人 2023 年)和社会科学(如 Aher 等人 2023 年、Akata 等人 2023 年、Ma 等人 2023 年、Dan 等人 2023 年)等众多研究领域中崭露头角。这些语言智能体能够根据语言指令在现实或模拟环境中执行操作。图 7 展示了智能体在自主控制(参见 Rawles 等人 2023 年、Jiang 等人 2022 年)、研究(参见 Bran 等人 2023 年、Boiko 等人 2023 年)、编程(参见 Bairi 等人 2023 年)和交互(参见 Park 等人 2023 年)领域的代表性应用场景。我们将在后续章节中详细讨论这些智能体的技术哲学。
图 7:自主控制、研究、编程和交互的代表性智能体示意图。这些插图改编自 Rawles 等人(2023 年)、Jiang 等人(2022 年)、Bran 等人(2023 年)、Boiko 等人(2023 年)、Bairi 等人(2023 年)以及 Park 等人(2023 年)的研究。
表 2:代表性智能体的技术比较。具体来说,我们将记忆模块分为短期记忆和长期记忆两大类。根据第 5.2.2 节的定义,短期记忆具有动态特性,可通过提示进行读写。最常见的短期记忆形式是聊天记录。而长期记忆则是静态的,一般储存在数据库中,可以通过树搜索、文本搜索和向量检索等多种方法进行检索。在外部工具模块中,我们将工具分为三种类型:网络搜索(Web)、代码解释器(Code)以及其他工具(Other)。这些工具的使用细节将在第 5.1.3 节中进一步介绍。
智能体 | 类别 | 内存处理 | 研究方法 | 应用领域 | 与环境的互动 | 辅助工具 | |||||
操作方式 | 短期记忆 | 长期记忆 | 交互模式 | 模型类型 | 网络应用 | 编程应用 | 其他应用 | ||||
CAMEL (Li et al., 2023a) | 交流型 | 基于提示 | √ | – | 基于提示的方法 | AI 社会及编程 | 文本交互 | GPT-3.5-Turbo | – | – | – |
生成智能体 (Park et al., 2023) | 交流型 | 树形搜索策略 | √ | √ | 基于提示的方法 | AI 社会 | 文本交互 | GPT-3.5-Turbo | – | – | – |
Voyager (Wang et al., 2023c) | 交流型 | 树形搜索策略 | √ | √ | 基于提示的方法 | “我的世界”游戏 | 文本交互 | GPT-4 | – | – | – |
GITM (Zhu et al., 2023) | 交流型 | 树形搜索策略 | √ | √ | 基于提示的方法 | “我的世界”游戏 | 文本交互 | GPT-3.5-Turbo | – | – | – |
MetaGPT (Hong et al., 2023) | 交流型 | 文本检索技术 | √ | √ | 基于提示的方法 | AI 社会及编程 | 文本交互 | GPT-4 | √ | √ | √ |
ChatDev (Qian et al., 2023) | 交流型 | 文本概述技术 | √ | √ | 基于提示的方法 | 软件工程 | 文本交互 | GPT-3.5-Turbo | – | √ | – |
MAD (Liang et al., 2023) | 交流型 | 基于提示 | √ | – | 基于提示的方法 | 推理与逻辑 | 文本交互 | GPT-3.5-Turbo | – | – | – |
多智能体辩论 (Du et al., 2023) | 交流型 | 基于提示 | √ | – | 基于提示的方法 | 推理与逻辑 | 文本交互 | GPT-3.5-Turbo | – | – | – |
FORD (Xiong et al., 2023a) | 交流型 | 基于提示 | √ | – | 基于提示的方法 | 推理与逻辑 | 文本交互 | GPT-4 | – | – | – |
AutoGPT (Richards, 2023) | 自主型 | 向量搜索技术 | √ | √ | 基于提示的方法 | 任务管理 | 文本交互 | GPT-4 | √ | √ | √ |
语音智能体 | DALL-e | ||||||||||
图像智能体 | ElevenLabs | ||||||||||
BabyAGI (Nakajima, 2023) | 自主型 | 向量搜索技术 | √ | √ | 基于提示的方法 | 任务管理 | 文本交互 | GPT-4 | – | – | – |
AgentGPT (Reworkd, 2023) | 自主型 | 向量搜索技术 | √ | √ | 基于提示的方法 | 任务管理 | 文本交互 | GPT-4 | √ | √ | √ |
Auto-UI (Zhang & Zhang, 2023) | 自主型 | 基于提示 | √ | – | 微调方法 | 用户界面控制 | 文本交互 | FLAN-Alpaca | – | – | – |
图像智能体 | BLIP-2 | ||||||||||
AITW (Rawles et al., 2023) | 自主运行 | 提问模式 | √ | – | 提问策略 | 用户界面控制 | 文本 | PaLM 2 | – | – | – |
DCACQ (Mehta et al., 2023) | 自主运行 | 提问模式 | √ | – | 微调方法 | 工程领域 | 文本 | BART | – | – | – |
ChemCrow (Bran et al., 2023) | 自主运行 | 提问模式 | √ | – | 提问策略 | 化学领域 | 文本 | GPT-4 | √ | √ | √ |
Chatmof (Kang & Kim, 2023) | 自主运行 | 文本搜索 | – | √ | 提问策略 | 材料科学领域 | 文本 | GPT-4 | √ | √ | √ |
IASSE (Boiko et al., 2023) | 自主运行 | 向量搜索 | – | √ | 提问策略 | 科学实验领域 | 文本 | GPT-4 | √ | √ | √ |
TE (Aher et al., 2023) | 交流型 | 提问模式 | √ | – | 提问策略 | 社会科学领域 | 文本 | GPT-4 | – | – | – |
CodePlan (Bairi et al., 2023) | 自主运行 | 树形搜索 | √ | √ | 提问策略 | 编程领域 | 文本 | GPT-4 | – | √ | – |
VIMA (Jiang et al., 2022) | 交流型 | 提问模式 | √ | – | 微调方法 | 机器人操控领域 | 文本 | T5 | – | – | – |
Image | ViT | ||||||||||
React (Yao et al., 2022) | 交流型 | 文本检索 | √ | √ | 微调方法 | 决策制定领域 | 文本 | PaLM-8B | √ | – | – |
Reflexion (Shinn et al., 2023) | 交流型 | 文本检索 | √ | √ | 提问策略 | 决策制定领域 | 文本 | GPT-4 | √ | – | – |
ToRA (Gou et al., 2023b) | 自主运行 | 提问模式 | √ | – | 提问策略 | 数学推理领域 | 文本 | GPT-4 | – | √ | – |
Toolformer (Schick et al., 2023) | 自主运行 | 文本检索 | √ | √ | 微调方法 | 数学推理领域 | 文本 | GPT-J | √ | √ | √ |
Fireact (Chen et al., 2023a) | 自主运行 | 提问模式 | √ | – | 微调方法 | 问答领域 | 文本 | GPT-3.5 | √ | – | – |
∙bullet 语言智能体与强化学习 (RL) 智能体相比有哪些新的特点呢?在人工智能领域,打造能够普遍适用的智能体一直是一个长期的目标。在早期,研究者主要通过强化学习技术来研究智能体(Wilkins, 2014; Mnih et al., 2015)。简单来说,RL 智能体就是通过不断与环境互动,通过奖励和惩罚来学习如何做出决策的系统。这些智能体会被奖励正确的决策,同时对错误的决策给予惩罚,目的是减少错误,提高决策的准确性。RL 智能体的一大特点就是能够通过不断与环境的互动来提升自己(Bai et al., 2023a)。但它们也有局限性,比如过度依赖专家数据和特定任务的奖励机制,这使得它们在面对新任务或领域时难以适应(Kim et al., 2023a)。而且,RL 智能体的内部运作机制对外界通常不够透明和易于理解(Lundberg & Lee, 2017; Yang et al., 2018)。
相比之下,语言智能体通过使用大语言模型 (LLM) 中的常识性先验知识来突破这些限制。这些先验知识减少了对人工标注和试错学习的依赖,使得语言智能体能够更容易地适应新任务或环境,并通过链式推理 (CoT) 提高了其解释性(Yao et al., 2022; Shah et al., 2023)。不过,语言智能体在调整自身参数以适应环境变化方面还存在挑战,因为它们主要是通过提示或对大语言模型进行成本高昂的微调来适应环境。近期的研究如 Retroformer(Yao et al., 2023b)尝试将类似 RL 的策略融入语言智能体中,以增强其能力,但这些研究的重点仍主要集中在语言推理任务上。将来如何有效结合 RL 智能体和语言智能体的优点,以创造出在复杂环境中表现出色且易于理解的新型智能体结构,是一个值得关注的方向。对于 RL 智能体和语言智能体的各自优缺点,可以参考表 3 获取更多信息。
表 3: RL 智能体与语言智能体的比较。
方面 | RL 智能体 | 语言智能体 |
知识获取 | 主要依赖强化学习技术。 | 利用大语言模型中的常识性先验。 |
训练过程 | 通过与环境互动并接收奖励或惩罚来训练。 | 适应新任务或环境时减少对人工标注的依赖,主要通过提示来实现。 |
自我提升 | 通过不断与环境互动来提高自身能力。 | 在适应环境变化时调整参数方面面临挑战,主要通过提示或对模型进行昂贵的微调。 |
限制 | 过度依赖专家数据和特定任务的奖励机制,效果通常限于单一任务。 | 面临动态调整参数的挑战,重点在语言推理任务,可能在更广泛任务上缺乏适应性。 |
透明度 | 工作机制通常不够透明和易于理解。 | 通常能提供更好的解释性,但在参数调整的透明度方面存在挑战。 |
泛化能力 | 对新任务或领域的适应能力有限。 | 能够轻松适应新任务或环境,减少对特定任务训练的依赖。主要关注于语言相关任务。 |
未来目标 | 力求弥合 RL 智能体和语言智能体之间的差距,发展出更加多功能和适应性强的架构。 |
此外,本文还将介绍语言智能体的基本概念,并探讨如何在这些智能体中有效利用链式推理 (CoT)。
5.1 通用框架
在现有研究中,关于语言智能体的框架设计呈现出显著的多样性。我们回顾了近期研究中的一些代表性架构,并综合概述了语言智能体的一个全面概念框架。
Wang 等人 (2023b) 设计了一个四模块的智能体框架,分别为:(i) 定义智能体角色的配置模块,(ii) 回顾过去行为的记忆模块,(iii) 规划未来动作的规划模块,以及 (iv) 将智能体决策转化为具体行动的行动模块。
Xi 等人 (2023) 提出了一个由三部分组成的概念性智能体框架:(i) 负责记忆、思维和决策的“大脑”,(ii) 感知并处理外部环境的多模态信息的“感知”,以及 (iii) 利用工具实施操作并影响周边环境的“行动”。
Zhou 等人 (2023d) 呈现了一个针对语言智能体的功能特化框架,支持诸如规划、记忆、工具使用、多智能体通信和细致的符号控制等重要功能。
Sumers 等人 (2023) 提出了一个名为 CoALA 的语言智能体概念架构。CoALA 按三个关键维度安排智能体:(i) 分为工作记忆和长期记忆的信息存储,(ii) 分为内部和外部行动的行动空间,以及 (iii) 以规划和执行互动循环形式的决策过程。
虽然各研究团队设计了不同的架构,但最近的技术研究(例如 Yao 等人 2022; 2023b; Park 等人 2023; Zhu 等人 2023)普遍遵循一种模式,即利用大语言模型 (LLMs) 模拟智能体的感知、记忆和推理过程。这些研究的基本出发点是,大语言模型已经在某种程度上积累了世界知识(Gurnee & Tegmark 2023),并且可以通过逐步的连贯思维 (CoT) 提示来激发这些知识。
图 8: 语言智能体的通用框架。语言智能体能够根据语言指令,在现实或模拟环境中执行行动。
因此,我们基于技术实践总结了一种语言智能体的通用概念框架,如图 8 所展示。在这个框架中,智能体根据用户的指令(即目标)在环境中进行多步骤交互,以完成任务,过程中可能会使用各种工具。虽然我们主要关注单个智能体的情况,但在多智能体环境中,智能体们也可以进行合作或竞争。在深入探讨技术细节之前,我们首先简要介绍语言智能体的基本概念,包括智能体自身、其所处的环境以及工具的使用等。
5.1.1 语言智能体的核心模型
语言智能体可以基于单模态大语言模型(LLM)或多模态大语言模型构建。完成一个任务通常涉及多个交互步骤。整个过程称为一个“情节”,由一系列“轮次”构成。为了完成任务,智能体需要提前规划、做出决策,并在每个轮次中执行相应动作。这一规划、决策和执行动作的过程,可能体现出大语言模型在现实或虚拟环境中的推理能力,这些环境是大语言模型在预训练阶段未曾接触过的。在这些环境中,大语言模型必须理解世界知识并采取行动。我们将展示,连续话术(CoT)如何帮助弥补环境感知和大语言模型固有能力之间的差距。
这类智能体拓展了语言模型在特定领域的应用,如应用操作、网络搜索和网购。语言智能体主要分为两类:自主智能体和交流智能体。自主智能体的典型例子包括 AutoGPT(Richards, 2023)、BabyAGI(Nakajima, 2023)和 AgentGPT(Reworkd, 2023)。而交流智能体则是具备人类行为特征的个性化和社交化智能体,它们能够进行交流(参见 Park 等人,2023; Wang 等人,2023c; Zhu 等人,2023)、合作(参见 Hong 等人,2023; Qian 等人,2023)和辩论(参见 Liang 等人,2023; Du 等人,2023; Xiong 等人,2023a)。这些智能体通常被部署在沉浸式环境中。
5.1.2 环境互动
语言智能体的核心特性之一是与环境的交流、互动和适应。这些环境包括操作系统、第三方应用程序、网页和虚拟环境。大语言模型处理这些环境的方式主要分为两类:环境解析和多模态感知,具体取决于大语言模型是否能处理多模态输入。环境解析指的是利用外部工具,如光学字符识别(OCR)和图标检测器(参见 Zhang 等人,2021; Sunkara 等人,2022),将环境转化为文本元素(例如 HTML 布局),作为大语言模型的输入。相比之下,多模态感知,也被称为基于第一原理的思考(参见 Zhang & Zhang,2023),是指使用多模态大语言模型来同时处理不同模态的输入。构建多模态大语言模型的一种常见方式是使用简单的投影矩阵,将预训练的大型视觉模型(例如,CLIP(Radford 等人,2021)和 BLIP-2(Li 等人,2023c))整合到大语言模型中(参见 Liu 等人,2023b; Zhang 等人,2023a)。最近的研究还探索了将不同模态的输入建模到同一向量空间中,从而实现任意模态到任意模态的表示学习(参见 Huang 等人,2023b; Wu 等人,2023; Moon 等人,2023)以及交错的多模态表示学习(参见 Li 等人,2023b; Zhao 等人,2023a)。
5.1.3 工具使用
在大语言模型的应用中,使用工具可以视为其能力的一种扩展。这不仅补充了推理所需的参数知识,还使模型能够更有效地与各种环境互动(Qin et al., 2023b)。这些工具包括知识库、搜索引擎、代码解释器、在线模型、应用程序、数据库等,有时甚至包括为特定任务量身定制的工具。这些工具的使用有助于突破通用 API 的限制(Li et al., 2023d; Schick et al., 2023; Cai et al., 2023; Zhou et al., 2023d; Team, 2023)。
工具使用主要有三个目的:
- 实际操作执行。大语言模型不仅能预测接续:
下一步行动,还能在实际环境中执行这些行动。这包括通过网页上的 JavaScript 元素来执行代码或查询(Zhou et al., 2023c),利用代码解释器或编译器运行程序(Gur et al., 2023; Ni et al., 2023; Dídac et al., 2023; Ruan et al., 2023a; Gou et al., 2023b),以及与可调用 API 形式的在线专家模型进行互动(Shen et al., 2023; Patil et al., 2023; Ge et al., 2023)。根据任务需求和计算能力,这些操作可以灵活调整工具集。
- 获取外部知识。使用搜索引擎和专家候选人获取的最新知识,已被证明是解决事实性问题的有效方法(Trivedi et al., 2022; Yao et al., 2022)。通过这种方式,大语言模型不仅扩展了自身的知识范围,还能适应复杂环境和庞大的应用生态系统,确保所获取的信息是最新的,减少产生错误信息的风险(Wang et al., [续:
2023b](#bib.bib132))。
- 推理与验证。在推理过程中,大语言模型可能会犯错。提供准确、及时知识的工具有助于纠正这些错误,并帮助形成更精确的回应。这些工具提供的证据可以用来修正初始输出,实现自我纠错(Gou et al., 2023a)。代码大语言模型还可以通过程序执行器的结果进行进一步验证(Ni et al., 2023)。为了探索更深入或多样化的解决方案,可以部署包括深度优先或广度优先在内的多工具和多步骤计划及检索策略(Liu et al., 2023e; Qin et al., 2023b)。
5.2 链式推理增强智能体能力
语言智能体通过与外部环境的互动循环进行交互(Sumers et al., 2023)。这种互动可通过三种方式实现,即感知、记忆和推理(图 1)。链式推理(CoT)方法能够从这三个方面增强智能体的能力。
5.2.1 以连续思考来理解感知
将智能体的感知过程设计成逐步解读的连续思考链,已被发现可以有效提高其行动的成功率,并加深对周围环境或情境的理解。特别地,Rawles 等人(2023)的研究表明,应用连续思考(CoT)模板,如“答案:让我们一步步来思考。我看到 <屏幕标题>
,接下来我需要……”,能大幅提高行动预测的准确度。例如,图 1 展示了一个例子,在谷歌应用中看到无关搜索结果时,连续思考的提示是“让我们一步步来思考。我在谷歌应用中看到了无关的搜索结果”。同时,Zhang 等人(2023d)和 Huang 等人(2023b)通过使用外部工具来获取图像的标题,作为补充信息,来提升对多模态环境的感知。这些标题被放置在 <屏幕标题>
中,以优化输入提示的组织。
除了单向解释感知之外,语言智能体在整合环境反馈时也能获得巨大的益处,尤其是在多回合交互的环境下,其中环境可能会发生变化(Chen 等人,2023d; Olausson 等人,2023; Jignasu 等人,2023)。有效地融合这些反馈,需要智能体掌握一种关键技术:在环境反馈的基础上进行自我修正(Xu 等人,2023d; Zhou 等人,2023a; Yao 等人,2023b; Zhao 等人,2023d)。自我修正意味着智能体需要在复杂的操作序列中进行实践,包括执行代码、操作过程和控制机器人等。这些操作可能会出现执行失败,并产生错误信息。在这种情况下,智能体不仅要理解这些环境线索,还需要主动参与到反复的错误修正过程中,直至实现预期目标。因此,智能体在这些动态环境中的表现成为了评估其自我修正能力的直接标准。这种能力反映了智能体有效地吸收和应对环境反馈的水平。有效地整合这些反馈不仅提高了智能体的解释能力,也提升了其整体功能性,使之在先进的语言智能体领域发挥关键作用。
∙bullet 在通用人工智能的追求中,多模态感知是否成为未来的关键?多模态感知是实现通用人工智能的一个重要步骤。目前,受到语言模型强大推理能力的影响,主流的做法是采用以语言为核心的感知方式 (图 9(a))。一般来说,不同的编码器被用来处理各种模态的输入,如图像。然后,这些编码通过特殊的技术,比如交叉注意力机制或额外的适配器,与现有的语言模型结合,实现多模态输入与语言模型的有效融合 (Alayrac et al., 2022; Liu et al., 2023a; 等)。作为一种新的尝试,Rust et al. (2023) 提出了一种以图像为中心的方法 (图 9(b)),通过将文本转换为图像,实现了不同语言之间基于视觉相似性的信息转换。最近,为了更好地融合不同模态的输入并方便模型的扩展,研究人员也探索了一种统一的方法 (图 9(c))。例如,在处理视觉和语言的模态时,不再使用单独的图像编码器,而是将图像块当作标记直接融入到变换器模型的嵌入层中,实现图像和语言数据的无缝结合 (Huang et al., 2023b; Bavishi et al., 2023)。
图 9: 多模态感知方法,包括 (a) 以语言为中心的方法;(b) 以图像为中心的方法;(c) 统一方法。
尽管在智能体感知领域,已经提出了包括以语言为中心、以图像为中心和统一方法等多种感知方式,但要确定最适合的方法仍然是一个挑战。这主要是因为在智能体与环境互动中涉及到更多样化和复杂的模态,比如听觉、触觉和大脑信号。此外,这些模态的数据规模往往不平衡,增加了感知过程的复杂性。同时,多模态数据的类型和格式多样化也给计算效率和模型的可扩展性带来了挑战。为了克服这些难题,研究创新方法对于未来有效且高效的感知框架的发展至关重要。
5.2.2 作为“连续任务”的记忆
一个语言智能体通常具备长期记忆和短期记忆的功能 (Sumers et al., 2023; Wang et al., 2023e)。
短期记忆
短期记忆主要储存近期的信息,可以根据不同情境灵活调整(也称为工作记忆,见 Sumers et al. (2023))。这种记忆具有强烈的时效性,为智能体提供了紧密相关的最新上下文。例如,在处理多步骤任务、行动历史链 (Zhang & Zhang, 2023) 或多跳问答中的最后几个问题时,短期记忆能提供直接支持并与当前状态紧密相关。尽管短期记忆对整体环境的影响有限,但它在特定时间点提供的具体信息使其成为智能体不可或缺的一部分。由于其明显的时间特性,短期记忆不会引起储存方面的问题。
长期记忆。
长期记忆使智能体能够在不同的情景中长期保留和回想固定信息(Weng, 2023)。不同于短期记忆,长期记忆更像是对整个世界的宏观和抽象理解,这对任务来说更加通用。它包括存储生产系统的程序记忆、关于世界的事实的语义记忆,以及记录智能体过去行为序列的情景记忆(Sumers et al., 2023)。比如,面对一个目标“点赞最新的帖子”,在不同的环境状态下,我们观察到两种完成目标的行动方式:(i)[打开 Instagram,浏览主页,查看最新帖子,给它点赞] 和(ii)[回到首页,打开 Instagram,浏览主页,查看帖子,给最新的帖子点赞]。我们发现,这些基础动作(如打开 Instagram,浏览主页等)构成了完成这个目标的长期记忆,即一系列固定的记忆步骤。
长期记忆既可以基于参数化的知识存储,也可以基于非参数化的。它们可能是语言智能体可训练参数的一部分,也可能是作为外部知识保存,通过检索系统使用。例如,之前情节中的早期步骤是基于智能体参数的长期记忆,而产生的行动方案则是参数化的长期记忆。
∙bullet 迈向高效的记忆操作。当智能体与环境互动时,将记忆建模为线性自然语言序列会变得不够高效,因为序列会越来越长。此外,大语言模型(LLM)的上下文窗口长度是有限的。为了实现更高效的记忆操作,近期的研究探索了两种方法:(i)树状搜索和(ii)向量检索。
(i) 树状搜索。记忆可以以树状结构存储,并通过在树上搜索来获取信息。例如,MemWalker(Chen et al., 2023b)允许智能体通过迭代式提示访问文本记忆。智能体首先把长篇上下文处理成一个包含摘要节点的树。接收到查询请求后,它会在这棵树上寻找相关信息,并在收集到足够信息后作出回应。同样地,GITM(Zhu et al., 2023)提出了一个分解器,它能把目标递归分解成子目标树,帮助模型更明确地在记忆中捕捉目标与计划间的关系。Park et al. (2023) 则提出了“反思树”来组织交流智能体的记忆,通过定期以抽象的方式反思现有记忆,形成了一种层次结构:“树的叶节点代表基本观察,而非叶节点则代表随着树高度上升变得更抽象和高级的思考”。
(ii) 向量检索。另一种方法是通过向量存储来处理记忆(Hu et al., 2023; Zhou et al., 2023e)。向量数据库已成为存储、管理和检索高维数据(如文本、图像、视频等)的重要工具,也适用于语言智能体的长期记忆。例如,Agentsims(Lin et al., 2023)使用向量数据库来高效地存储和检索长期记忆。具体而言,它将日常记忆以嵌入的形式存储在这个数据库中。当智能体遇到新情况需要回忆过去的记忆时,长期记忆系统就能巧妙地检索出相关信息,确保智能体行为的连贯性。
5.2.3 将推理视为任务链对话
受到启发于大语言模型(LLMs)逐步推理能力的成功,任务链对话(CoT)也被用于促使智能体通过规划或决策进行推理。更为关键的是,为语言智能体设计的 CoT 方法需精心规划,以便处理动作执行和状态监测。
将思考、行动和观察交替结合起来,能有效连接推理与行动之间的鸿沟(参考 Yao et al., 2022; Khattab et al., 2022; Shinn et al., 2023)。研究发现,利用大语言模型交替生成 CoT 跟踪和特定任务行动,可以实现推理与行动的相互促进。推理的过程帮助模型规划行动并处理异常情况,而行动则让大语言模型与外部资源(如知识库或环境)对接,收集更多信息以支撑知识(见 Xu et al., 2023b)。此外,还有研究将推理过程与外部观测分离,以减少 CoT 多步骤过程中的 token 消耗。
类似地,AgentBench(Liu et al., 2023c)要求语言智能体通过“思考”和“行动”步骤来完成任务。Zhang & Zhang(2023)提出了一种行动链技术,通过利用一系列先前的行动历史和未来的行动计划,帮助智能体决定下一步的行动。这种方法将决策问题转化为了任务链对话推理问题。
∙bullet 如何扩展智能体的能力?目前,主流研究集中在使用任务链对话提示方法来激发大语言模型在与环境互动中的推理能力。基本的假设是,大语言模型已经具备作为语言智能体执行我们关注任务的先验知识,而任务链对话提示方法能有效激发这些知识。这些提示技术因其灵活性和便利性而受到青睐,因为根据任务需求和特性设计和调整提示相对容易。然而,大语言模型对提示的敏感性以及缺乏从提示中学习领域知识的证据表明,仅仅依赖提示方法可能不足以使模型泛化到新领域。为了扩大语言智能体的能力范围,目前越来越多的研究开始关注于对大语言模型进行针对性微调,以构建更有效的智能体。例如,Chen et al.(2023a)提出,在目标任务和数据格式已知,且能够收集到足够数据的情况下(比如,可能通过 GPT-4 自动实现),应重新考虑对语言模型的微调。研究结果表明,微调不仅能提高模型的泛化能力和鲁棒性,还能提升其性能。Gou et al.(2023b)则收集了包含自然语言任务链对话和工具集成程序的交错工具使用数据。之后,他们训练了一个集成了这些高质量注释的工具推理智能体,在多种数学推理任务上取得了显著的性能提升。
6 挑战
尽管大语言模型、任务链对话推理和语言智能体领域取得了快速发展,但在向未见领域泛化、提高冗余互动中的效率、开发可定制智能体、扩大语言智能体规模、确保语言智能体安全以及能力评估等方面,仍然存在许多值得深入探索的挑战。
6.1 对未知领域的普适性
在工程(Li et al., 2023a; Mehta et al., 2023; Qian et al., 2023)、自然科学(Bran et al., 2023; Kang & Kim, 2023; Boiko et al., 2023)和社会科学(Aher et al., 2023; Akata et al., 2023; Ma et al., 2023; Dan et al., 2023)等领域中,语言处理技术已经发挥了重要作用。然而,这些技术在适应特定的、特别是以前未见过的领域时面临着重大挑战。这个挑战主要包括两个方面:一是找出高效获取特定领域知识的方法,例如采用基于对话树 (CoT) 的提示方法。这里的限制在于预训练时所能获取的知识范围有限,缺乏与现实世界的深入互动。二是如何有效地使这些语言模型适应多样且未知的领域。鉴于不同任务间所需的行动策略差异巨大(如无人机控制与网页浏览),使模型的知识与特定任务要求相匹配,依然是一个巨大挑战。这些问题突显了当前研究的一个关键缺口,即如何增强语言模型对新领域的适应能力,并使其能从环境中学习,这需要富有创新的解决方案来同时解决知识获取和任务适应性的问题。
在适应新领域方面,提示和微调是调整预训练语言模型的常用技术。但是,关于何时以及如何利用提示(例如,确定提示模式和推理格式)和微调(例如,指令微调)技术来帮助语言模型适应未知领域,这方面的研究还相对不足。对此进行深入研究,将有助于在更多领域中推广语言处理技术的应用,使其更加多样化和具有影响力。
6.2 提高处理冗余互动的效率
完成一个任务通常需要与环境进行复杂的多步骤互动。这一过程产生的大量重复日志对完成任务至关重要(Zhang & Zhang, 2023)。但是,由于计算资源的限制,许多研究只能处理有限数量的日志步骤(Park et al., 2023)。尽管最近的技术进步使大型语言模型能够处理更长的上下文(Xiong et al., 2023b),但基于这些日志进行推理的速度仍然受到自回归模型本身处理速度慢的限制。在多智能体交互环境中,这个问题更加明显,因为众多智能体会产生大量的互动日志。
为了解决这个问题,一种可能的方案是引入记忆机制,用于存储并从这些日志中提取知识。然而,关键的挑战在于如何有效地从日志中识别重要信息,并提取出相关的内容。解决这个问题对于提升复杂多智能体场景下推理过程的效率至关重要。
6.3 定制化语言助手
大语言模型 (LLMs) 通常首先通过在大规模文本库上预训练,获得基础语言能力和常规知识。接下来,它们通过更深层次的调整(如指令调整和基于人类反馈的强化学习)来满足人类用户的特定偏好。鉴于用户有着不同的需求和特点,开发可以个性化定制的大语言模型助手变得尤为重要。
现有的相关研究主要集中在三种方法:(i) 可定制的提示方式,通常包括角色或工具的特定设定。例如,CAMEL (Li et al., 2023a) 研究通过为大语言模型提供格式化的人机配对档案,模拟不同互联网用户群体或职业的工作流程。MetaAgents (Li et al., 2023e) 则是让语言助手在特定的社会环境中扮演特定角色。ExpertPrompting (Xu et al., 2023a) 提出了一种基于专家身份档案的提示方法,帮助大语言模型解决特定问题。RoCo (Mandi et al., 2023) 为机器人配备了大语言模型角色,让它们能够代表自己进行对话并规划实际任务。另外,已经宣布的可定制化 ChatGPT 同样能遵循特定指令、融合额外知识和多种技能;22https://openai.com/blog/introducing-gpts。(ii) 可定制训练。通过在语言模型中进行梯度更新,可以进一步确保其定制化。例如,Auto-UI (Zhang & Zhang, 2023) 专门针对安卓 UI 控制领域进行训练,作为自主智能体展现出稳定性能。对于交流型智能体,Character-LLM (Shao et al., 2023) 则是通过人物档案和详细场景的训练,使大语言模型能够模仿诸如贝多芬这样的知名人物;(iii) 可定制模型编辑。除了训练外,编辑是另一种改变语言智能体存储知识的方式,它可以提升定制助手的准确性和可靠性。ROME (Meng et al., 2022a) 和 MEMIT (Meng et al., 2022b) 采用了“定位并编辑”的方法来纠正错误知识。Transformer-Patcher (Huang et al., 2023c) 则通过实时序列编辑技术,进一步降低了错误重复出现的几率。除了确保事实知识的正确性外,PersonalityEdit (Mao et al., 2023) 还能改变模型的响应方式,使其与大五人格特质相匹配。
尽管最近在这一领域取得了进展,但开发可定制化语言助手仍面临三个主要挑战。首先,目前的研究主要集中在特定领域的实用方法上,很少考虑到用户个性化的具体需求。其次,语言助手的定制化需要轻量级、高效且低资源消耗的方式,尤其是在面向用户级别定制时。与大规模通用训练相比,定制化追求的是使用更少的数据、部分参数或仅限于精心设计的提示的有效方法。最后,需要在定制化与信息安全之间找到平衡点。用户的个人信息(如年龄、性别和医疗记录)可能会被智能体获取,从而带来隐私泄露的风险。
6.4 扩展语言智能体的规模
多智能体系统展现了各种社会现象 (Park et al., 2023; Wang et al., 2023c; Zhu et al., 2023)。受到这些现象的启发,研究者开始尝试扩大语言智能体的数量 (Li et al., 2023a),目标是建立一个大型的语言模型社会。然而,在模拟多智能体间的通信时,计算成本仍是一个主要障碍 (Xi et al., 2023)。在未来的探索中,扩展智能体规模揭示了两个关键领域的吸引力。首先,人们对于在通信过程中智能体可能展现出的新能力产生了浓厚的兴趣。其次,理解扩展带来的影响,如个性变化和社会现象,对于增强语言智能体解决越来越复杂的挑战至关重要。此外,这种理解也是观察、检测和缓解可能有害行为风险的关键,确保这些智能体安全并有益地发展,为社会带来更好的改变。
6.5 语言智能体的安全
设想不久的将来,智能智能体将与人类及其他智能体无缝协作,简化日常任务并适应多样化的环境。这种便利同时也带来了一个重大挑战:确保这些智能体在长期、多轮次互动中的安全。例如,用于网页操作的用户界面智能体 (Zhou et al., 2023c) 和移动设备控制智能体 (Zhang & Zhang, 2023) 可能会引起隐私泄露和权限滥用问题。Shaikh et al. (2022) 强调了 Zero-Shot-CoT 推理中的偏见和毒性问题,这可能导致模型产生有害或不希望的输出,进而对语言智能体产生负面影响。有效应对这一安全挑战需要多方面的方法。首先,探索更加稳健和可控的模型架构,并深入了解其背后的机制,这显示出巨大的潜力。深入研究智能体的行为并提高其响应的可靠性在这一过程中至关重要。其次,针对大语言模型 (LLM) 定制的攻击快速发展,这要求重新评估传统的防御技术。
关于 LLM 安全的现有研究主要集中在内容安全上,例如 LLM 生成内容的攻击性、公平性和偏见 (Zhang et al., 2023b)。由于语言智能体在不同环境中进行多轮次互动,可能伴随操作工具的使用,因此可能在系统层面出现新的安全风险 (Xu et al., 2023c; Sato et al., 2023),这些风险包括指令输入、环境感知、推理过程以及工具使用等方面。我们总结了智能体安全风险的三个关键特点,包括:(i) 新型攻击方式,如通过环境注入进行操作攻击 (Liu et al., 2023d)、工具滥用 (Fu et al., 2023)、越狱 (Deng et al., 2023; Wei et al., 2023a) 和隐私泄露 (Kim et al., 2023b); (ii) 智能体与人类、其他智能体、以及环境互动时的新型攻击面; (iii) 环境的复杂性增加,如操作系统、第三方应用程序、网页和虚拟环境等。
然而,对于语言智能体的安全性研究还远远不够。语言智能体安全的定义尚未形成共识。专门针对语言智能体设计的新型攻击方法带来了独特的挑战。因此,必须开发创新的防御策略来减轻这些复杂攻击带来的安全风险,尤其是在复杂环境中。构建基准资源、加强内部安全措施以及加固针对外部威胁的防御,对于确保智能智能体安全地融入我们的日常生活至关重要。
6.6 评价语言智能体的方法
自然语言处理领域的早期研究重点是测试模型在某些特定功能上的表现,如机器翻译、问答回答和内容摘要(Chang et al., 2023)。这些测试通常以特定的数据集为基础,但这种方式往往无法全面反映模型的整体能力。进入大语言模型(LLMs)的时代后,人们发布了一些更全面的基准测试数据集,例如 MMLU(Hendrycks et al., 2021a)、BIG-Bench(Srivastava et al.,2022)和 AGI Eval(Zhong et al., 2023)。这些数据集主要关注大语言模型在理解和推理方面的能力。然而,它们大多是基于单次互动的评估,这就难以衡量大语言模型在不同环境下的规划和决策能力。
随着对环境导向型评估方法的兴趣日增,评价处于互动环境中的语言智能体的能力面临挑战。比如,在一些特定任务中,判断任务是否成功往往因任务而异,且不易明确。例如,在系统控制问题上(Rawles et al., 2023),完成用户指令的方法可能多种多样,但很难将所有可能的解决方案都标记为正确答案。因此,基于模拟的评估方法(Wang et al., 2023e; Yang et al., 2023b; Ruan et al., 2023b)开始受到关注。这种方法通过执行反馈或外部评价来判断任务是否完成。但是,在某些环境中,执行反馈可能难以获取,而且外部评价可能会带来模型偏见(Wang et al., 2023e)。
除了考量任务的完成率,如第6.5节所讨论的,考虑安全风险同样重要。此外,语言智能体可能会在不同环境中,尤其是在多智能体社区中发展和演变,如何追踪和评估它们的属性也是一大挑战。
7 总结
在过去一年多的时间里,链式推理(CoT)技术极大地提升了大语言模型(LLMs)的推理能力。这些技术不仅应用于自然语言处理(NLP)中的推理任务,还扩展到了帮助发展语言智能体的领域。这些智能体展现了理解语言指令和在多元环境中采取行动的能力。本研究详细回顾了从 CoT 推理到语言智能体自动化的演变过程,并深入探讨了关键的研究议题。这些议题包括研究支撑 CoT 技术的基本原理、理解 CoT 导致的范式转变,以及探索 CoT 技术促成的语言智能体的出现。此外,本研究还勾勒出几个未来研究的有希望的方向,包括与泛化、效率、定制化、规模化和安全性相关的问题。