❝原文链接:https://arxiv.org/pdf/2402.02716.pdf
摘要
随着大型语言模型(LLMs)展现出显著的智能,利用LLM作为自主代理的规划模块的进展引起了更多关注。这篇综述提供了首个系统性视角,涵盖了旨在提高规划能力的基于LLM的代理的工作。我们提供了现有LLM-代理规划工作的分类,这些工作可以归类为任务分解、计划选择、外部模块、反思和记忆。对每个方向进行了全面分析,并讨论了该研究领域的进一步挑战。
1.引言
自主代理已被认可为能够通过感知环境、规划和执行动作来完成特定任务的智能实体。规划作为代理最关键的能力之一,需要复杂的理解、推理和决策过程。尽管规划的概念抽象,但规划任务的一般表述可以描述如下。给定时间步t,环境表示为E,动作空间为,任务目标为,步骤t的动作为,规划过程可以表示为动作序列的生成:
。其中和分别代表LLM的参数和任务的提示。传统工作主要依赖于符号方法或基于强化学习的方法,如规划领域定义语言(PDDL)或策略学习。然而,这些传统方法有几个局限性。符号方法需要将灵活的自然语言描述的问题转换为符号建模,这可能需要人类专家的努力。通常,这种方法缺乏错误容忍度,即使只有几个错误也会导致失败。强化学习方法通常与深度模型结合使用,作为策略网络或奖励模型。而强化学习算法通常需要大量的样本(与环境的互动)来学习有效的策略,这在收集数据耗时或成本高昂的场景中可能是不切实际或代价高昂的。近年来,大型语言模型(LLMs)的出现标志着范式的转变。LLMs在各个领域取得了显著的成功,展示了在推理、工具使用、规划和指令遵循方面的显著智能。LLMs的惊人智能为将LLMs作为代理的认知核心提供了可能性,从而有潜力提高规划能力。已经开发了许多方法来利用LLMs的潜力进行代理规划。虽然现有的综述试图总结LLMs的技术,如决策制定、推理、工具学习,以及自主代理,但它们通常缺乏对文献中规划能力的详细分析。在这篇综述中,我们分析了最新的研究工作,并讨论了优势和局限性,旨在提供一个系统性的视角来看待基于LLM的代理的规划能力。现有方法进一步归类为五个代表性方向,每个方向都进行了全面分析。此外,我们在四个基准上评估了一些代表性方法。据我们所知,这是首次全面分析基于LLM的代理的规划能力的工作。本文的后续部分组织如下。在第2节中,我们将工作归类为五个主流方向,并分析它们关于规划能力的想法。第3至7节提供了每个方向的详细讨论和分析。最后,第9节总结了这篇综述,并提供了对该领域未来方向的洞察。2 分类
随着对基于LLM的代理规划能力的研究呈现出繁荣景象,提出了各种方法来利用规划能力的上限。为了更好地理解现有先进工作,我们挑选了一些代表性和有影响力的工作,分析了它们的动机和核心思想。为了提供更好的理解,我们在表1中展示了分析。根据表格,我们提出了一个新的系统分类,将现有工作分为五个重要类别,涵盖了任务分解、多计划选择、外部模块辅助规划、反思和精炼以及记忆增强规划,如图1所示。这里我们简要总结这五个方向如下。任务分解。现实生活中的任务通常是复杂和多步骤的,给规划带来了严重的困难。这种方法采用了分而治之的思想,将复杂任务分解为几个子任务,然后依次为每个子任务进行规划。过程可以表述如下:
。
多计划选择。这种方法关注于引导LLM“思考”更多,为任务生成各种替代计划。然后采用与任务相关的搜索算法来选择一个计划执行。过程可以表述如下:
。其中代表搜索策略,如一些树搜索算法。外部规划器辅助规划。这种方法旨在利用外部规划器提升规划过程,旨在解决生成计划的效率和可行性问题,而LLM主要扮演任务形式化的角色。过程可以表述如下:
其中表示外部规划器模块,代表形式化的信息。反思和精炼。这种方法强调通过反思和精炼来提高规划能力。它鼓励LLM反思失败,然后精炼计划。过程可以表述如下:
记忆增强规划。这种方法通过额外的记忆模块来增强规划,其中存储了有价值的信息,如常识知识、过去经验、特定领域知识等。在规划时检索这些信息,作为辅助信号。过程可以表述如下:
其中M代表记忆模块。这五个方向相互关联而不是相互排斥,通常涉及同时采用多种技术。在后续章节中,我们将深入探讨关于LLM-代理规划的五个研究方向,阐明它们的动机,提出解决方案,并解决固有局限性。3 任务分解
在现实世界的场景中,环境通常以复杂性和可变性为特征,因此通过一步规划过程解决复杂任务是一个巨大的挑战。这种简化复杂任务的能力是人类的一个显著能力,体现在将一个任务分解为几个更简单的子任务上,这类似于众所周知的“分而治之”算法策略。任务分解通常涉及两个关键步骤:首先,将复杂任务分解为子目标,称为“分解”步骤;其次,为子目标进行规划,称为“子计划步骤”。目前该领域中的任务分解方法通常分为两类:分解优先和交错分解,如图2所示。
3.1 分解优先方法
分解优先方法首先将任务分解为子目标,然后依次为每个子目标进行规划,如图2(a)所示。代表性方法包括CoT [2022]、ReAct [2022]、HuggingGPT [2023]。
3.2 交错分解方法
交错分解涉及交错的任务分解和子任务规划,其中每个分解只在当前状态揭示一个或两个子任务,如图2(b)所示。这一类别的代表性方法包括Chain-of-Thought (CoT)系列 [Wei et al., 2022; Kojima et al., 2022]、ReAct [Yao et al., 2022]、PAL [Gao et al., 2023]、Program-of-Thought (PoT) [Chen et al., 2022]、Visual ChatGPT [Wu et al., 2023]等。
3.3 讨论
对于分解优先方法,其优势在于创建了子任务与原始任务之间更强的相关性,降低了任务遗忘和幻觉的风险。然而,由于子任务在一开始就被预先确定,因此需要额外的调整机制,否则某个步骤的错误将导致失败,这将在第6节中讨论。另一方面,交错分解和子计划根据环境反馈动态调整分解,提高了容错性。然而,对于复杂的任务,过长的轨迹可能导致LLM产生幻觉,在后续的子任务和子计划中偏离原始目标。尽管任务分解显著增强了LLM-代理解决复杂任务的能力,但挑战仍然存在。第一个挑战是任务分解引入的额外开销。将任务分解为多个子任务需要更多的推理和生成,产生了额外的时间和计算成本。另一方面,对于被分解成数十个子任务的高度复杂任务,规划受到LLM上下文长度的限制,导致规划轨迹的遗忘。
4 多计划选择
由于任务的复杂性和LLM的固有不确定性,LLM代理为给定任务生成的计划可能是多样化的。即使LLM拥有强大的推理能力,LLM生成的单一计划可能是次优的,甚至是不可行的。一个更自然的方法是比较选择,包括多计划生成和最优计划选择两个主要步骤。
4.1 多计划生成
多计划生成涉及生成一系列计划路径,以构成候选计划集。主流方法考虑在生成模型的解码过程中利用不确定性。自我一致性[Wang et al., 2022b]采用了一个简单的直觉:复杂问题的解决方案很少是唯一的。与CoT不同,CoT生成单一路径,自我一致性通过解码过程中的采样策略(如温度采样、top-k采样)获得多个不同的推理路径。思维树(ToT)[Yao et al., 2023]提出了两种生成计划(即思维)的策略:采样和提议。采样策略与自我一致性一致,LLM在解码过程中会采样多个计划。提议策略明确指示LLM通过提示中的少数示例生成各种计划。思维图(GoT)[Besta et al., 2023]通过添加思维转换,扩展了ToT,支持任意思维聚合。LLM-MCTS [Zhao et al., 2023b]和RAP [Hao et al., 2023]利用LLM作为蒙特卡洛树搜索(MCTS)的启发式策略函数,通过多次调用获得多个潜在动作。
4.2 最优计划选择
为了在候选计划中选择最优计划,采用了多种策略作为启发式搜索算法。自我一致性[Wang et al., 2022b]应用了简单的多数投票策略,将获得最多票数的计划视为最优选择。得益于树结构,思维树(ToT)[Yao et al., 2023]支持树搜索算法,如传统的BFS和DFS。在选择扩展节点时,它使用LLM评估多个动作并选择最优的一个。与ToT类似,LLMMCTS [Zhao et al., 2023b]和RAP [Hao et al., 2023]也采用树结构来协助多计划搜索。与ToT不同的是,它们采用蒙特卡洛树搜索(MCTS)算法进行搜索。LLM A* [Xiao and Wang, 2023]利用人工智能中的经典A*算法来协助LLM进行搜索。从当前位置到目标位置的切比雪夫距离作为选择最优路径的启发式成本函数。
4.3 讨论
多计划选择的可扩展性显著优势在于,它在广阔的搜索空间中提供了更广泛的潜在解决方案探索。然而,这种优势伴随着固有的权衡。增加的计算需求,特别是对于具有大量标记计数或计算的模型,构成了实际挑战。这种成本考虑在资源限制是重要因素的场景中尤为关键,例如在线服务。此外,依赖LLM评估计划引入了新的挑战。由于LLM在任务排名方面的性能仍在审查中,需要进一步验证和微调其在这一特定背景下的能力。LLM的随机性质为选择过程增加了随机性,可能影响所选计划的一致性和可靠性。
5 外部规划器辅助规划
尽管大型语言模型(LLMs)展示了强大的推理和任务分解能力,但在面对具有复杂约束的环境时,例如数学问题解决或生成可接受的动作,仍然面临挑战。为了解决这些挑战,一些方法将LLM与外部规划器集成。这些方法可以根据引入的规划器分为符号规划器和神经规划器。
5.1 符号规划器
符号规划器几十年来一直是自动规划领域的基础组成部分。这些方法基于成熟的符号化模型,如PDDL模型,采用符号推理来识别从初始状态到期望目标状态的最优路径。LLM+P [Liu et al., 2023a]通过结合基于PDDL的符号规划器来增强LLM的规划能力。利用LLM的语义理解和编码能力,作者将问题组织成文本语言提示输入LLM。这促使LLM将环境中的动作和指定任务组织成PDDL语言的格式。随后,在获得形式化描述后,作者使用Fast-Downward 1求解器进行规划过程。在LLM+P的基础上,LLM-DP [Dagan et al., 2023]专门设计用于动态交互环境。在接收到环境反馈后,LLM处理信息,将其形式化为PDDL语言,然后使用BFS [Lipovetzky et al., 2014]求解器生成计划。LLM+PDDL [Guan et al., 2023]也利用PDDL语言来形式化任务,并增加了一个手动验证的步骤,以检查LLM生成的PDDL模型中可能存在的问题。在规划过程中,作者提出使用LLM生成的计划作为局部搜索规划器(如LPG [Gerevini and Serina, 2002])的初始启发式解决方案,以加速搜索过程。LLM+ASP [Yang et al., 2023b]将LLM描述的自然语言问题转化为原子事实,然后将任务转化为ASP问题。随后,使用ASP求解器CLINGO来生成计划。
5.2 神经规划器
神经规划器是通过强化学习或模仿学习技术训练的深度模型,展示了在特定领域内的有效规划能力。例如,DRRN [He et al., 2015]通过强化学习将规划过程建模为马尔可夫决策过程,训练一个策略网络以获得深度决策模型。决策变换器(DT)[Chen et al., 2021a]赋予变换器模型克隆人类决策行为的能力,使用规划数据。经过良好训练的神经规划器在其各自领域内展现出卓越的规划能力,并由于其较小的参数大小,展示了优越的规划效率。然而,当面对复杂且不常见的问题时,这些小模型由于泛化能力不足而表现不佳。因此,一些工作探索将LLM与轻量级神经规划器结合,以进一步增强规划能力。CALM [Yao et al., 2020a]提出了一种早期方法,将语言模型与基于RL的神经规划器结合。一个语言模型处理文本环境信息,基于环境信息生成一组候选动作作为先验。然后,DRRN策略网络被用来重新排列这些候选动作,最终选择最优动作。SwiftSage [Lin et al., 2023]利用认知心理学中的双过程理论,将规划过程分为慢思考和快思考。慢思考过程涉及复杂的推理和理性思考,而快思考类似于通过长期训练发展出的本能反应。作者使用一个通过模仿学习训练的DT模型作为快速思考模型,用于快速生成计划。当计划执行过程中出现错误,表明问题更复杂时,代理切换到慢思考过程,其中LLM基于当前状态进行推理和规划。这种快速和慢思考的结合在效率方面被证明是非常有效的。
5.3 讨论
对于那些利用额外规划器辅助的策略,LLM主要扮演支持角色。其主要功能涉及解析文本反馈并提供额外的推理信息以协助规划,特别是在解决复杂问题时。具体来说,LLM在代码生成能力方面的增强为处理更通用的符号人工智能任务提供了潜力。实际上,传统符号人工智能系统的一个重要缺点在于构建符号模型的复杂性和对人类专家的重度依赖,而LLM加速了这一过程,促进了更快、更优的符号模型的建立。符号系统带来的优势包括理论完整性、稳定性和可解释性。统计人工智能与LLM的结合有望成为未来人工智能发展的主要趋势。
6 反思和精炼
反思和精炼是规划过程中不可或缺的组成部分。它们增强了LLM-代理规划的容错和错误纠正能力。由于现有的幻觉问题和对复杂问题的推理能力不足,LLM-代理在规划过程中可能会犯错误并陷入“思维循环”。反思和总结失败有助于代理纠正错误并在后续尝试中打破这种循环。
Self-refine [Madaan et al., 2023] 利用一个迭代的过程,包括生成、反馈和精炼。在每次生成后,LLM为计划生成反馈,便于根据反馈进行调整。Reflexion [Shinn et al., 2023] 在ReAct的基础上扩展,通过加入评估器来评估轨迹。LLM在错误检测后生成自我反思,帮助纠正错误。CRITIC [Gou et al., 2023] 使用外部工具,如知识库和搜索引擎,来验证LLM生成的动作。然后利用外部知识进行自我纠正,显著减少了事实错误。InteRecAgent [Huang et al., 2023b] 使用一种名为ReChain的机制进行自我纠正。LLM用于评估交互推荐代理生成的响应和工具使用计划,总结错误反馈,并决定是否重新开始规划。LEMA [An et al., 2023] 首先收集错误的规划样本,然后使用更强大的GPT-4进行纠正。这些纠正后的样本随后用于微调LLM-代理,从而在各种规模的LLaMA模型上实现了显著的性能提升。特别是,自我反思策略与强化学习的原则相似,其中代理扮演决策者的角色,如策略网络。环境反馈触发策略网络的更新。然而,与深度强化学习通过修改模型参数实现更新不同,在LLM代理中,这种更新是通过LLM自身的自我反思实现的,最终以文本形式的反馈呈现。这些文本反馈可以作为长期和短期记忆,通过提示影响代理后续的规划输出。然而,目前这种文本形式的更新收敛性缺乏保证,表明无法证明持续的反思最终能够引导LLM代理达到指定目标。
7 记忆增强规划
对于代理来说,记忆是增强规划能力和成长潜力的关键途径。关于LLM-代理中的记忆机制,目前有两种主要方法通过记忆来增强规划能力:基于RAG的记忆和具身记忆。
7.1 基于RAG的记忆
检索增强生成(RAG)[Lewis et al., 2020; Mao et al., 2020; Cai et al., 2022] 技术被提出以辅助文本生成,它能够增强LLM的最新知识,如New Bing2和Google Bard3。对于LLM代理,过去的经历可以存储在记忆中,并在需要时检索。这些方法的核心思想是在任务规划期间从记忆中检索与任务相关的经历。在这些方法中,记忆通常存储在额外的存储中,形式多样,如文本[Park et al., 2023; Liu et al., 2023b; Packer et al., 2023; Wang et al., 2023c; Zhong et al., 2023],表格形式[Zhang et al., 2023a],知识图谱[Pan et al., 2024]等。Generative Agents [Park et al., 2023] 以文本形式存储类似人类代理的日常经历,并根据当前情况的相关性和新颖性复合得分检索记忆。类似地,MemoryBank [Zhong et al., 2023],TiM [Liu et al., 2023b] 和 RecMind [Wang et al., 2023c] 使用文本编码模型将每个记忆编码为向量,并建立索引结构,如FAISS库[Johnson et al., 2019]。在检索过程中,当前状态的描述用作查询,以从记忆池中检索记忆。这三者的区别在于记忆更新的方式。MemGPT [Packer et al., 2023] 利用计算机架构中的多级存储概念,将LLM的上下文抽象为RAM,并将额外的存储结构视为磁盘。LLM可以自发决定是检索历史记忆还是将当前上下文保存到存储中。REMEMBER [Zhang et al., 2023a] 以Q值表的形式存储历史记忆,其中每条记录是(环境,任务,动作,Q值)元组。在检索过程中,正负记忆都被检索出来,以便LLM根据环境和任务的相似性生成计划。
7.2 具身记忆
具身记忆涉及使用代理的历史经验样本对LLM进行微调,将记忆嵌入模型参数中。通常,这些经验样本是从代理与环境的互动中收集的,可能包括关于环境的常识知识、与任务相关的先验知识和成功或失败的经历。虽然训练具有数十亿参数的语言模型的成本很高,但通过参数高效的微调(PEFT)技术来降低成本并加速训练,例如LoRA,QLoRA,P-tuning等。CALM [Yao et al., 2020b] 使用从文本世界环境中收集的地面真实动作轨迹,通过下一个标记预测任务对GPT-2进行微调,使其能够记住与规划相关的信息,并在规划任务上泛化得很好。类似地,TDT [Wang et al., 2022a] 使用收集的马尔可夫决策过程数据对Text Decision Transformer (TDT)进行微调。它在更具挑战性的ScienceWorld [Wang et al., 2022a] 任务上取得了更好的成功率。AgentTuning [Zeng et al., 2023] 将来自各种任务的计划轨迹组织成对话形式,以微调LLaMA模型,显示出在未见过的规划任务上显著的性能提升。
7.3 讨论
基于RAG的方法和基于微调的记忆方法增强了LLM-代理的规划能力,每种方法都有其独特的优势和局限性。基于RAG的方法提供了实时、低成本的外部记忆更新,主要是以自然语言文本的形式,但依赖于检索算法的准确性。微调提供了更大的记忆容量,通过参数修改,但记忆更新成本高,并且在保留细粒度细节方面存在困难。记忆增强的LLM-代理在规划中表现出增强的成长和容错能力,但记忆生成严重依赖于LLM的生成能力。通过自我生成的记忆来提高较弱的LLM-代理仍然是一个有待探索的挑战领域。
8 评估
评估代理的规划能力是研究领域的关键问题。在这里,我们调查了几种主流的基准测试方法,将它们分类如下。交互式游戏环境:游戏环境可能根据代理的动作提供实时的多模态反馈,包括文本和视觉反馈。目前最广泛使用的游戏体验环境是Minecraft 4,其中代理需要收集材料来制作工具以获得更多奖励。代理创建的工具数量通常用作评估指标。另一个流行的类别是文本交互式环境,如ALFWorld [Shridhar et al., 2020],ScienceWorld [Wang et al., 2022a]等,其中代理位于自然语言描述的环境中,动作和位置有限。通常使用成功率或获得的奖励作为评估指标。与Minecraft相比,这些文本交互式环境通常更简单,反馈更直接,可行动作更少。交互式检索环境:交互式检索环境模拟了人类在现实生活中进行信息检索和推理的过程。在这些环境中,代理通常被允许与搜索引擎和其他网络服务互动,通过搜索关键词或执行点击、前进和后退操作来获取更多信息,从而获得问题的答案或完成任务。常用的检索环境包括基于Wikipedia引擎的问答任务[Yao et al., 2022](如HotPotQA [Yang et al., 2018]和Fever [Thorne et al., 2018])以及查找特定信息的网络浏览任务,包括WebShop,Mind2Web [Deng et al., 2023]和WebArena [Zhou et al., 2023]。任务成功率通常用作指标。交互式编程环境:交互式编程环境模拟了程序员与计算机之间的互动,测试代理在解决与计算机相关的问题时的规划能力。在这些环境中,代理需要与计算机互动,通过编写代码或指令来解决问题。他们会收到各种反馈,包括编译和运行时错误消息,以及执行结果。流行的交互式编程环境涉及操作系统、数据库等问题,如Agent Bench [Liu et al., 2023c],MiniWoB++ [Kim and others, 2023]。大多数现有的交互环境缺乏细粒度评估,性能主要通过最终的成功率来评估。此外,与现实世界场景中通常有多种完成任务的路径不同,大多数模拟环境中由于注释成本高,通常只有一条“黄金”路径。
实验。我们在四个基准上进行了实验,以验证代表性工作的性能。由于预算有限,我们实现了六种基于提示的方法,涵盖了任务分解、多路径选择和反思。至于基准,我们采用了ALFWorld、ScienceWorld、HotPotQA和FEVER,涉及交互式游戏和问答基准。由于ALFWorld和ScienceWorld涉及更大的动作空间,零样本方法,即ZeroShot-CoT,由于不了解动作空间而不适用。SayCan通过将输出动作锚定到动作空间的值函数来改进CoT,这在QA任务中不适用,因为只有两个动作:SEARCH[KEYWORD]和LOOKUP[KEYWORD]。我们将值函数设置为文本嵌入模型bgesmall-en-v1.5 [Xiao and others, 2023]。我们为CoT-SC分别获得了3个动作和5个答案。在Reflexion中,重试次数设置为1。我们使用OpenAI的text-davinci-003 API作为LLM。(i) 性能随成本增加而提高。由于CoTSC、ReAct和Reflexion涉及多个计划、额外的思考和反思,它们的成本高于它们的骨干方法。直观地说,更多的标记代表更详细的思考,从而提高了性能。(ii) 对于复杂的任务,建议使用少数示例。尽管“让我们一步一步思考”的神奇指令可以导致更多的推理,但ZeroShot-CoT在两个QA基准中表现出严重的性能下降,这表明LLM需要示例来进一步理解任务。(iii) 反思在提高成功率方面发挥了关键作用,特别是对于复杂的任务。尽管Reflexion消耗的标记大约是ReAct的两倍,但在复杂任务中的改进是有希望的,例如ALFWorld和ScienceWorld,这表明LLM具有错误纠正能力。
9 结论和未来方向
自从LLM显示出智能的萌芽以来,人们越来越关注使用LLM来增强代理的规划能力。主要方向在图1中总结,第3至7节详细介绍并分析了各种方法。我们还对四个基准进行了实验,比较了几种代表性方法的有效性,并表明性能随成本的增加而提高。尽管这些工作在规划能力方面取得了增强,但仍存在一些重大挑战。
幻觉。在规划过程中,LLM经常遭受幻觉,导致不合理的计划,对任务提示不忠实,或无法遵循复杂的指令。例如,计划可能包括与环境中不存在的物品互动的动作。尽管通过精心设计的提示工程可以缓解这些问题,但它们反映了LLM的根本缺陷。
生成计划的可行性。LLM本质上是基于统计学习的,通过大量数据优化下一个词的概率。与符号人工智能相比,这种方法在处理LLM训练期间遇到的不太常见的约束时,很难遵守复杂的约束。因此,LLM生成的计划可能缺乏可行性,没有考虑充分的前提条件。将LLM与符号规划模型连接起来,而不改变LLM本身,是一个有前景的未来方向。
生成计划的效率。生成高效计划是规划中的关键问题。然而,在现有的LLM代理中,规划是基于LLM输出的生成计划进行贪婪选择的,没有考虑生成计划的效率。因此,未来的开发可能需要引入额外的效率评估模块,与LLM协同工作,以实现更高效的计划。
多模态环境反馈。LLM最初是为处理文本输入而设计的,但现实世界的环境反馈通常是多模态的,包括图像、音频等,这些很难用自然语言描述。因此,LLM代理在处理这类场景时面临限制。未来的考虑可能涉及整合多模态大型模型的发展,并重新审视相关规划策略。
细粒度评估。正如第8节所述,现有的基准大多依赖于任务的最终完成状态,缺乏细粒度的逐步评估。此外,环境反馈通常是规则化的、简单的,与现实世界场景相去甚远。一个潜在的未来方向是利用像LLM这样的高智能模型来设计更现实的评估环境。




