论文名称:Exploring Autonomous Agents through the Lens of Large Language Models: A Review
摘要
大型语言模型(LLMs)正在改变人工智能,使自主代理能够在各个领域执行各种任务。这些代理擅长类似人类的文本理解和生成,有潜力彻底改变从客户服务到医疗保健等各个领域。然而,它们面临着多模态、人类价值对齐、幻觉和评估等挑战。诸如提示、推理、工具利用和上下文学习等技术正在被探索以增强它们的能力。评估平台如AgentBench、WebArena和ToolLLM提供了在复杂场景中评估这些代理的强大方法。这些进展正在推动更具弹性和能力的自主代理的发展,预计将成为我们数字生活中不可或缺的一部分,协助完成从电子邮件回复到疾病诊断等任务。以LLMs为先导的人工智能的未来是光明的。
目录
- 介绍 3
- 大型语言模型和基于LLM的自主代理背景 5
- Transformer架构 5
- 大型语言模型的演变 5
- 利用大型语言模型构建自主代理 9
- 关于记忆的一切 9
- 从LLM到自主代理 11
- 推理和行动的艺术 13
- 提示就是你所需的一切 18
- 评估自主代理 24
- 传统评估框架 24
- AgentBench:一个全面的评估框架 25
- AgentBench中LLMs的表现 25
- 提升代理性能 26
- 与传统评估框架的比较 26
- WebArena:自主代理的新领域 26
- 基准任务和评估 27
- 与传统方法的比较 27
- ToolLLM:促进大型语言模型掌握16000多个真实世界API 28
- 数据构建、模型训练和评估 28
- ToolLLaMA的性能 29
- 与传统方法的比较 29
- 基于LLM的自主代理的主观评估 29
- 实施约束 30
- 多模态:LLM-Based自主代理的双刃剑 30
- LLM-Based自主代理的人类对齐 31
- 幻觉之谜 32
- 代理生态系统的复杂性 33
- 结论 34
介绍
从古至今,自动化的追求一直是人类努力的恒定目标,受到对提高生产力和效率的渴望的驱动。自主代理的起源根植于早期对能够在物理世界中有意识行动的自主系统的概念化[2]。这一范式在从认知科学到经济学的一系列领域中找到了应用。自主代理的发展取得了显著进展,大型语言模型(LLMs)的出现标志着我们追求模拟人类认知的人工智能的一个关键时刻[1]。自动化对社会的涟漪效应是深远的。它催生了新颖的工作方法论的出现,并重塑了社会结构。然而,必须承认“自动化鸿沟”的存在。事实是,并非所有任务都适合自动化,在这种情况下,人类干预仍然是推动创新发展的不可或缺的动力[4]。自动化的曙光彻底改变了工作景观。尽管它提高了生产力,但也边缘化了受教育程度较低的工人,并增加了资本所有者获得的垄断租金。有趣的是,即使是经济金字塔顶端的职业,如金融经理、医生和高级执行官,也包含相当比例的活动容易受到自动化的影响[5]。尽管自动化推动了经济增长,但同时也扩大了财富不平等的鸿沟。自动化的成果并非公平分配,而且所产生的财富往往流向社会的上层阶层[6]。这引发了关于自动化对社会的影响以及确保财富公平分配的政策干预的讨论。大型语言模型与自主代理的融合为增强模拟能力提供了一个有前途的前沿[7]。LLMs拥有丰富的网络知识,显示出近乎人类水平智能的非凡潜力[1]。这引发了对基于LLM的自主代理潜力的研究激增[3]。
LLMs在广泛的互联网数据上训练,涵盖了大量人类知识。这反映了语义网使互联网数据可机器读取的目标[8],从而形成了一个适合机器处理的数据网络。人类与LLMs之间的互动动态至关重要。我们查询或提示这些模型的方式可以显著塑造回复。这引起了提示调整策略的关注,这是一种通过精心选择和调整提示或种子文本来引导模型生成文本的技术,以增强LLM性能[9][10]。LLMs的学习过程,通过与数据的互动驱动,为解读人类认知提供了一条途径[12][11]。跨越人工智能和认知神经科学领域的研究人员正在探索这些计算模型是否可以作为人类大脑语言处理的代理。LLMs的出现为通用自主代理的世界提供了一个窗口[13]。这些由LLMs驱动的代理展示了在各种应用中的强大泛化能力,作为自主通用任务助手运作。LLMs和多模态模型的整合不仅增强了代理的能力,还赋予了它类似硅生命体的外观[14]。对于与复杂环境互动的机器人的具体任务,仅文本的LLMs通常会由于与机器人视觉感知的不兼容性而遇到挑战。然而,LLMs和多模态模型融合到各种机器人任务中提供了一个全面的解决方案[14][15]。
释放LLMs在自主代理中的潜力 本综述旨在探讨将大型语言模型(LLMs)整合到自主代理中的过程,这是一个变革性过程,使得智能代理能够执行几十年来被认为无法实现的任务。例如,DeepMind的AlphaGo通过自我对弈和从自身错误中学习,磨练了其在围棋游戏中的熟练程度[16]。类似地,DeepMind的另一杰作AlphaFold展示了其在预测蛋白质折叠方面的高超准确性,从而解决了生物学中长期存在的重大挑战[17]。基于LLMs的代理及其有效运作 本综述的范围包括建立在LLMs基础上的代理,使用LangChain[19]和AutoGPT[20]等技术,这需要精确的协议以实现有效运作。虽然这些技术已经展示了在构建自动化研究助手方面的潜力,但也遇到了诸如AutoGPT中的提示调整问题和LangChain中更高效的令牌消耗需求等障碍。本综述还探讨了在代理构建中使用不同类型的LLMs所面临的限制和挑战,以及它们所呈现的可能性。例如,LLaMA[22]是一个开源LLM,在代理构建中找到了应用。相反,封闭源模型也已被用于类似目的。开源LLMs的前景值得关注,因为它们使工具访问民主化,促进透明度,并激发创新。类比于操作系统,Linux的开源设计通常被认为在性能方面比其同行Windows和Mac更有效率。这表明,利用其设计和社区支持,开源LLMs最终可能会胜过封闭源对手。LLMs与自主代理的融合在人工智能领域开启了一个新时代。尽管仍存在挑战,但持续的进步和对开源模型的日益倾向预示着这项技术的光明未来。
大型语言模型和基于LLM的自主代理背景
Transformer架构
三种不同类型的变压器架构支撑着LLMs和它们的基础变压器架构:
编码器-解码器: 这是开创性的变压器架构,其中编码器处理输入序列以生成隐藏表示,解码器然后使用这些表示来生成所需的输出序列。T5[23]和BART[24]是采用这种架构的显著模型。
仅编码器: 当任务仅需要对输入序列进行编码时,就会采用这种架构,消除了解码器的需要。输入序列被编码为固定长度表示,然后用作分类器或回归器的输入进行预测。BERT[25]、DistilBERT[26]和RoBERTa[27]是采用这种架构的模型。
仅解码器: 这种架构仅包含一个解码器,训练解码器根据前面的标记预测序列中的后续标记。仅解码器和编码器-解码器架构之间的关键区别在于前者缺乏明确的编码器来总结输入信息。
图1展示了Transformer模型的架构。变压器在许多方面优于循环神经网络(RNNs)。RNNs按顺序处理数据[28],导致处理时间较慢且在处理较长数据序列时能力有限。相比之下,变压器一次处理整个句子而不是逐词处理,实现了并行计算,缩短了训练时间。此外,变压器建立在自注意力的概念上,使模型能够根据单词间的相关性为句子中的不同单词分配重要性。
大型语言模型的演变
LLMs的演变和发展 可追溯到早期的自然语言处理和机器学习研究。然而,它们的快速演变是由深度学习技术的出现和Transformer架构的引入所引发的。使用变压器架构开发LLMs显著提高了自然语言任务的性能,与之前一代的RNNs相比,导致再生能力激增。
图1:Transformer架构(基于[86])
由OpenAI开发的GPT-4[29]是目前最先进的LLMs之一。它展示了出色的能力,包括复杂的推理理解、高级编码能力以及在多个学术考试中的熟练表现。LLaMa[22]是他们AI模型阵容中的一个开创性成果。它旨在为一系列最先进的应用提供动力。LLaMa 2的训练数据广泛且多样,标志着与其前身相比的重大进步。由Google开发的T5[23]是一种编码器-解码器模型,旨在灵活性,并可针对各种任务进行微调。由Facebook开发的BART[24]是一种去噪序列到序列预训练模型,旨在进行自然语言生成、翻译和理解。RoBERTa[27]是BERT的一个变种,采用了不同的预训练方法,在几个基准测试中表现优于BERT。每个模型都有其优势和局限性。例如,尽管GPT-4展示了令人印象深刻的能力,但其响应速度较慢,推理时间更长,促使开发人员转向较旧的GPT-3.5模型。同样,虽然LLaMa 2拥有广泛且多样的训练数据,但其可用性受限以防止滥用。尽管T5、BART和RoBERTa表现出色,但它们也并非没有局限性。例如,与分布内测试示例相比,T5在分布外测试示例上表现不佳。而BART在处理长序列方面存在限制,最大序列长度为512。RoBERTa尽管在性能增强方面表现出色,但由于计算成本、私有数据集大小的差异以及超参数选择的显著影响,它在不同方法之间进行细致比较方面存在挑战。
自主代理和大型语言模型(LLMs)的融合是一个快速发展的领域,其中每个LLM可以被视为生态系统中的一个代理,共同合作完成各种任务。这些基于LLMs的自主代理的架构可以分解为记忆,使代理能够记住过去的行动并将自己置于动态环境中;规划,其中代理将高级指令或目标分解为可管理的任务,编排其执行,评估结果,并对
大型视觉模型(LVMs)在自主代理中的整合是一个快速发展的研究领域。配备了对图像有深刻理解的自主视觉代理可以利用LVMs的冗余参数来识别图像的范围,并在其固有的特征检测不足时应用超参数化。胡等人[39]揭示了AVIS,一个用于视觉问答的自主框架,旨在寻找信息。AVIS利用大型语言模型(LLM)动态制定使用外部工具的策略,并审查它们的输出,从而获取回答提出的问题所需的基本知识。王等人[40]提供了关于计算机视觉领域中大型视觉模型和视觉提示工程方法的综合调查。它深入探讨了视觉提示工程的最新突破,并展示了视觉领域中具有影响力的大型模型。周等人[41]探讨了视觉语言模型(VLMs)在自动驾驶(AD)和智能交通系统(ITS)中的应用。它强调了这些模型的卓越性能以及它们利用大型语言模型(LLMs)的能力。
大型语音模型(LSMs)是大型语言模型(LLMs)的一个专门类别,它们是在大量语音数据上训练的。张等人提出了通用语音模型(USM)[42],这是一个统一模型,能够在100多种语言中执行自动语音识别(ASR)。USM通过在包含300多种语言的庞大未标记多语言数据集上预训练模型的编码器,并随后在较小的标记数据集上进行微调来开发。作者采用多语言预训练、随机投影量化和语音-文本模态匹配来实现在多语言ASR和语音到文本翻译任务中的领先性能。值得注意的是,尽管使用的标记训练集只有原来的七分之一大小,但USM在许多语言的领域内和领域外语音识别任务中表现出与Whisper模型相媲美或更好的性能。注入LSM的自主代理已成为学术界和工业界研究的焦点,导致了涉及基于LLM的自主代理的研究激增。大型语言和语音模型(LLaSM)可以遵循语音和语言指令,为人类提供一种更加用户友好和自然的方式与人工智能进行交互。Fathullah等人[44]调查了将大型语言模型(LLMs)与语音识别能力相结合的增强。他们通过将紧凑的音频编码器与LLM集成,将其转变为自动语音识别(ASR)系统。他们在多语言LibriSpeech(MLS)数据集上的实验表明,将conformer编码器与开源LLaMA-7B模型集成使其能够比单语基线表现提高18%,并进行多语言语音识别,尽管该模型主要是在英文文本上进行训练的。这些研究强调了LSMs在增强自主代理能力方面的潜力,特别是在噪声过滤和稳健训练过程方面。
大型语言模型(LLMs)与自主代理的融合是一个快速发展的研究领域,特别是在可解释性领域。赵等人[?**]提出了一种从传统学习模型转变的范式,引入了经验学习(ExpeL)代理,这些代理可以从经验中学习,而无需进行参数更新。同时,安久姆肖埃等人[36]强调了AI和自主代理中可解释性的重要性,主张推动目标驱动的可解释AI,以促进对日益复杂的AI系统的信任和理解。克劳斯等人[37]强调了需要能够从代理经验中学习的新方法论,以增强其性能和有效性。此外,巴鲁阿等人[38]推出了一个将AutoML、XAI和合成数据生成相结合的系统,为用户提供了在利用机器学习强大功能时无缝体验的机会。该论文还介绍了基于LLM的合成数据生成,以提高模型性能、可靠性和互操作性。
利用大型语言模型构建自主代理
关于记忆的一切
大型语言模型(LLMs)采用多样化的记忆架构,主要用于存储模型的参数和中间计算激活。值得注意的是,在基于Transformer的LLMs中,每个请求的键-值缓存内存可能是巨大的,并且在大小上动态波动。为了有效管理这一点,一些系统采用了受操作系统中普遍存在的经典虚拟内存和分页方法启发的技术。
在设计记忆系统时,工程师经常从自然界汲取灵感。神经网络是生物系统启发计算机算法的一个突出例子,最初在数学上被概念化为一个由简单神经元组成的系统,能够执行简单的逻辑操作[45]。认知心理学提供了基础框架,例如巴德利的多组分工作记忆模型,这些框架对于理解人类记忆至关重要[46]。某些LLMs采用了受操作系统启发的记忆管理技术。例如,PagedAttention[47]是一种受操作系统中经典虚拟内存和分页技术启发的注意力算法,用于管理LLMs中的键-值缓存内存。
LLMs中的记忆复杂性是其设计的结果。在基于Transformer的LLMs中,由于transformers中的自注意机制计算输入中所有标记之间的成对交互,所以随着输入序列长度的增加,记忆需求呈二次增长。
在LLM记忆管理领域,记忆通常以层次结构组织。例如,在MemGPT模型[48]中,上下文窗口被视为受限制的记忆资源,并且为LLMs设计了类似于传统操作系统中使用的记忆层次结构。这种层次结构旨在为复杂任务和协作场景中的微妙上下文推理提供更大的连续性。在典型计算机上,记忆层次结构包括三个级别。较高级别速度更快但稀缺,而较低级别速度较慢但丰富。
大型语言模型(LLMs)采用多样化的记忆架构,主要用于存储模型的参数和中间计算激活。值得注意的是,在基于Transformer的LLMs中,每个请求的键-值缓存内存可能是巨大的,并且在大小上动态波动。所有LLMs的基本构建模块都紧随这一模式,其中各层与不同排列集成。
-
循环层:这些层保留来自先前输入的信息,有助于处理序列和时间依赖关系。值得注意的例子包括长短期记忆(LSTM)和门控循环单元(GRU)。
-
前馈层:这些层对输入数据执行非线性变换,从而提取显著特征和模式。
-
嵌入层:这些层将单词或标记转录为密集向量,封装语义关系。
-
注意层:这些层选择性地集中于输入的相关部分,从而提高任务性能和上下文理解。它们根据其重要性为不同标记分配权重,使LLMs能够捕获文本中的长距离依赖关系和关系[49]。
新颖的LLM架构能够保留对话上下文以进行连贯对话,根据用户偏好定制响应,并跟踪基于知识的任务的事实信息[50]。
对LLMs的实证研究通常集中在它们处理和理解自然语言的能力上。它们将自由文本输入转换为数字数组,称为嵌入,这些嵌入是原始文本的低维数值表示,旨在捕获潜在的语言上下文。进一步的研究表明,大型语言模型(LLMs)在从广泛文本语料库中获取语言模式和表示方面表现出色。所采用的编码结构显著影响性能和泛化能力。多头注意力和深度Transformer架构的整合在实现众多自然语言处理任务的尖端成果方面发挥了关键作用[51][52]。
不同的LLMs可能采用不同的编码策略。例如,基于Transformer的模型在编码时严重依赖于多头注意力。BERT、GPT-3、T5和BARD等模型利用具有不同配置的多头注意力。另一方面,LLaMA将循环层(LSTM)与注意机制相结合。多头注意力涉及并行注意力层关注输入的不同部分,捕获不同的关系。GPT-3、T5、BARD和LLaMA等模型主要利用多头注意力。相反,前馈注意力集中于输入的特定部分,过滤掉无关信息。它通常在Transformer层内部使用以增强特征提取。GPT-2、BERT和XLNet等模型使用这种类型的注意力。LLM中的层数增加会增加模型的复杂性和适应性,以处理复杂的语言模式。例如,GPT-3有96层,T5有110层,BARD有66层,LLaMA有75层。性能、计算成本和内存需求之间存在权衡。
在语言模型生成领域,选择解码策略对于确定输出至关重要。这些策略指导模型在序列中选择下一个单词的方式,可以显著影响生成文本的连贯性、多样性和整体质量。其中一些策略值得注意:
-
贪婪搜索:这种方法在每个关键时刻选择最有可能的标记,这往往会导致重复或保守的响应。
-
多项式采样:这种方法引入随机性以促进多样性,尽管可能会产生不连贯的文本。
-
Beam搜索:这种技术维护多个潜在序列的记录,在质量和多样性之间取得平衡。
-
对比搜索:这种策略旨在实现清晰和一致,最小化歧义和重复。
GPT-3通常采用多项式采样来生成创意文本。T5和BARD经常使用Beam搜索来执行需要准确性和连贯性的任务。LLaMA研究了使用对比搜索来增强清晰度和一致性[53]。
从LLM到自主代理
大型语言模型在吸收来自广泛文本语料库的语言模式和表示方面表现出色。然而,它们在执行需要规划和行动的任务时的效果受到限制。例如,虽然LLMs可以将用自然语言表达的目标转换为结构化的规划语言,但它们在涉及数值或物理推理的任务中面临困难。这类任务包括解决天体力学中观察到的常微分方程、预测行星、恒星和星系的运动以及数据分析中的数值线性代数。此外,LLMs中的动作序列通常是硬编码的,限制了它们的适应性。例如,在LangChain中,链表示一系列硬编码的动作,而代理使用LLMs确定要执行哪个动作序列。
为了规避LLMs在任务执行中的限制,研究人员研究了多模态概念,即将不同类型的数据(例如文本、图像、音频)集成到模型中。然而,仅靠多模态无法解决算术、几何、化学、数学方程等问题。这些任务通常需要特定的推理能力或领域知识,这些无法通过仅处理多种数据类型来捕捉。这就是工具概念变得重要的地方。工具是增强LLMs能力的基本构建模块。它们是具有特定功能的可执行单元,使LLMs能够执行各种任务。通过整合不同工具,LLMs可以创建实现广泛目标的流程。例如,LLM代理可以访问能够执行文本生成以外的动作的工具,如进行网络搜索、执行代码、执行数据库查找或进行数学计算。
LangChain[19]是一个旨在促进由LLMs驱动的应用程序构建的综合库。它通过将来自多个模块的不同组件链接在一起,实现了与LLMs的复杂交互流程的创建。在LangChain中,代理通过整合工具和记忆形成。LangChain中代理的基本概念是利用LLMs选择要执行的一系列动作。根据用户输入,代理然后决定是否调用这些工具中的任何一个。实质上,LangChain中的代理等于工具加记忆。在收到请求后,代理利用LLMs决定要执行的动作。在完成动作后,代理更新其记忆,有助于保持对话的上下文。这种方法使LangChain能够管理更复杂的结构化交互,保持不同提示和响应之间的上下文或顺序。
LiteLLM[59]是另一个简化与各种LLM API交互的框架。它提供了一个符合OpenAI格式的轻量级包,简化了从OpenAI、Azure、
Langchain 和 LiteLLM 都作为中介,架起了各种大型语言模型(LLMs)和项目先决条件之间的桥梁,但它们在方法论和功能上存在差异。Langchain 采用了更多的构建者框架,促进了与 LLMs 的复杂交互流程的创建。它提供了更有结构的方法来链接提示和响应,特别有利于在不同提示和响应之间保持上下文或顺序的维护时。相反,LiteLLM 简化了与各种 LLM APIs 的交互,提供了一个一致的 API,使得在不需要进行大量代码修改的情况下可以无缝切换不同的 LLMs。它的主要重点在于提供一个轻量级的包,用于从各种提供者那里调用 API 端点。
Auto-GPT[20],一个开源的 AI 代理,采用了 OpenAI 的 GPT-4 或 GPT-3.5 APIs。它致力于将用自然语言表达的目标分解为子任务,并利用互联网和其他工具在自动循环中使用。作为使用 GPT-4 进行自主任务的首批应用之一,Auto-GPT 展示了适应性和学习能力,使其成为企业和个人的宝贵资产。然而,有观察到 Auto-GPT 有时可能会陷入逻辑循环或“兔子洞”,这可能会限制其解决问题的能力。相比之下,虽然 Auto-GPT 和 LangChain 都利用了 LLMs,但它们的核心功能是不同的。Auto-GPT 是一个自主代理,将一个大任务分解为各种子任务,而无需用户输入。它可能会陷入逻辑循环和“兔子洞”,从而在某些情况下限制其解决问题的能力。相反,LangChain 不是一个自主代理,而是一个 LLM 库,促进了在最先进的 LLMs 之上开发各种应用程序。它为这些模型的部署、扩展和微调提供了简单的接口和强大的后端支持。这种区别突显了利用 LLMs 以不同方式实现不同目的的多样化方式。
推理和行动的艺术
大型语言模型(LLMs)展示了模拟人类水平智能的非凡能力,导致了对基于 LLM 的自主代理进行研究的激增。自主代理长期以来被认为是实现人工通用智能(AGI)的一条有前途的途径,预计通过自主规划和行动来执行任务。这些代理通常设计为基于简单的启发式策略函数运行,并在孤立的、受限制的环境中接受训练。然而,这种方法与人类学习过程形成鲜明对比,人类学习过程本质上是复杂的,能够从各种环境中学习。
LLMs 具有直观的自然语言界面,非常适合用户与计算机的交互和解决复杂问题。某些预训练的 LLMs,如 GPT-4,具有显著的推理能力,使它们能够将复杂问题分解为简单步骤,在每个阶段提供解决方案、行动和评估。然而,作为封闭系统,LLMs 无法访问最新数据或特定领域知识,可能会导致潜在错误或“幻觉”(即生成不正确的响应)。因此,设计一个与 LLMs 结合的自主代理变得至关重要。直接提示并不总是能从 LLMs 中获得深思熟虑的响应。如果寻求即时响应,它们更容易产生幻觉[62]。LLMs 中的幻觉是指模型生成不正确、荒谬或虚构的文本的情况。由于 LLMs 不是数据库或搜索引擎,它们不会引用响应的基础。这些模型生成的文本是从提供的提示中推断出来的。
为了解决这个问题,已经开发了单路径推理(SPR)和多路径推理(MPR)模块。SPR,例如 HuggingGPT[61] 和 Chain of Thought(CoT)[60],鼓励中间推理步骤。CoT 生成一系列推理步骤,标志着这一方向的重大进展。Chain of Thought 通过生成一系列中间推理步骤或提示,增强了大型语言模型(LLMs)的推理能力。它将多步问题分解为中间阶段,使模型在需要时进行额外计算。对于传统方法无法胜任的复杂计算问题,这被证明是一种有效的策略。HuggingGPT 是一个由 LLMs 提供支持的代理,利用 LLMs 在机器学习社区中连接各种 AI 模型来解决 AI 任务。它利用 ChatGPT 在接收用户请求后策划任务规划,根据 Hugging Face 提供的功能描述选择模型,使用所选的 AI 模型执行每个子任务,并根据执行结果总结响应。
相比之下,MPR 通过使用先前生成的答案作为提示逐渐引导用户和 LLMs 之间的多次交互,从而促进了用户和 LLMs 之间的自动多次交互。MPR 与 CoT 和自一致性正交,易于与最先进的技术集成,以进一步增强性能[63]。自一致性链式思维(CoT-SC)[65]是一种增强大型语言模型响应准确性的技术,与纯 Chain of Thought 相比。它的运作基于这样一个假设,即正确答案存在于语言模型中,并且在大多数情况下从语言模型中返回这个正确答案,同时反复向模型提出相同的问题。Thoughts 的树(ToT)[64]是一种允许 LLMs 在解决问题时导航多个推理路径的范式。ToT 的架构包括四个部分:思想分解(将复杂问题分解为较小部分)、思想生成(为每个部分制定潜在解决方案)和状态评估(评估潜在解决方案)。Thoughts 的图(GoT)[66]是一个框架,将 LLMs 的提示能力推向超越 Chain-of-Thought 或 Thoughts 的树(ToT)等范式。GoT 的基本思想和主要优势在于,它能够将 LLM 生成的信息建模为任意图形,其中信息单元(“LLM thoughts”)作为顶点,边对应于这些顶点之间的依赖关系。
环境反馈可以显著增强大型语言模型代理的效力。 “ReAct”(Reason for Future, Act for Now)[67]是一个用于自主大型语言模型(LLM)代理的方法论框架,展示了可证明的样本效率。在这个框架内,一个 LLM 代理考虑当前状态的行动的长期影响。在外部环境发生状态转换后,LLM 代理重新启动推理例程,从更新后的状态规划新的未来轨迹。这种循环过程通过环境反馈促进了代理的自我改进。 Reflexion[68]是另一个框架,其中一个 LLM 代理吸收环境反馈来完善其内部世界模型,从而增强其预测行动结果的能力并做出更明智的决策。
为了使 LLM 代理的响应与应用偏好保持一致,人类反馈在训练大型语言模型时至关重要。它提供了重要信息,这些信息可能无法直接从环境奖励中获取。虽然奖励可以引导代理朝着期望的结果发展,但人类反馈引入了一层专业知识,帮助代理在复杂情况下导航。例如,在国际象棋游戏中,基于奖励的强化学习代理可能会学会赢得比赛,但通过人类反馈,它可以获得战略和战术,否则可能需要无数次迭代才能发现。
RLHF[69]是一种机器学习方法,其中使用直接人类反馈训练“奖励模型”,然后通过强化学习来优化人工智能代理的性能。RLHF 尤其适用于目标复杂、定义不明确或难以指定的任务。相比之下,直接偏好优化(DPO)[70]提供了 RLHF 的替代方案。DPO 消除了拟合奖励模型、在微调过程中从语言模型中采样或进行广泛的超参数调整的需要。DPO 利用奖励函数和最优策略之间的关系来解决带约束的奖励最大化问题,在单个策略训练阶段解决了分类问题。人类反馈必须表达为用户在两个选择之间的二元偏好。分类问题涉及根据 LLM 生成的文本预测用户更喜欢哪个选择。DPO 消除了训练奖励模型、在微调过程中从 LLM 中采样或进行广泛的超参数搜索的需要。图 2 阐明了 RLHF 和 DPO 涉及的关键步骤。
图 2:RLHF 和 DPO 的步骤
检索增强生成(RAG)已成为使大型语言模型(LLMs)能够访问外部数据、作为对抗幻觉的基础机制的首选范式。RAG 模型将预训练的参数化和非参数化记忆融合到语言生成中。参数化记忆是一个预训练的 seq2seq 模型,而非参数化记忆是通过预训练的神经检索器访问的维基百科的密集向量索引。通过 RAG,LLMs 从数据库中检索上下文文档,以增强其响应的准确性。LangChain、LlamaIndex、FastRAG 等框架作为协调者,连接了 LLMs 与工具、数据库、记忆等,从而增强了它们的能力。用户指令并非天生就是为检索而优化的。可以采用各种技术,包括多查询检索器、HyDE 等,来重新表述/扩展它们并增强性能。图 3 阐明了 RAG 的操作机制。
图 3:检索增强生成的概述
为了回顾先前的指令和响应,LLMs 和 ChatGPT 等聊天机器人将这些历史记录纳入其上下文窗口。这个缓冲区可以通过摘要(例如使用较小的 LLM)、矢量存储 + RAG 等进行增强[71]。需要评估文档检索(上下文精度和召回率)和生成阶段(忠实度和答案相关性)。工具如 Ragas 和 DeepEval 可简化这一过程。
高级 RAG 技术增强了 RAG 模型的检索技术,并使用行业标准指标评估其性能。高级 RAG 技术系统化各种方法,并全面审查 RAG 范式的发展。它们包括 Naive RAG、Advanced RAG 和 Modular RAG。Pinecone 的 LLM 代理是一个可以利用计算器、搜索或执行代码等工具的代理。使用代理,LLM 可以编写和执行 Python 代码。它可以搜索信息,甚至查询 SQL 数据库。LangChain 提供了一种为 LLMs 构建查询的方法。它利用一个构建查询的 LLM 链来编写结构化查询,然后将该结构化查询应用于其底层的 VectorStore。LangChain 可以使 LLMs 连接到 SQL 数据库。由于 LangChain 使用 SQLAlchemy 连接到 SQL 数据库,因此可以使用 SQLAlchemy 支持的任何 SQL 方言,例如 MS SQL、MySQL、MariaDB、PostgreSQL、Oracle SQL、Databricks 或 SQLite。
提示就是你需要的一切
通过精细提示,LLM 代理的性能可以通过以无监督方式获取语言能力、预测句子中的掩码词而得到增强。这些 LLMs 的有效性取决于它们接收的提示或输入。提示工程的艺术涉及创建高质量的提示或查询,这些提示或查询是针对手头的任务量身定制的。通过为模型提供清晰和相关的提示,它可以更容易地生成准确和相关的响应。通过修改和改进提示以引出模型的“优越”或更理想的输出,这个过程是提示工程的一个基本示例。
增强模型提示的多种技术包括:
-
自动推理和工具使用(ART)[73]:ART 在 BigBench 和 MMLU 基准测试中对未见任务的几次提示和自动 CoT 进行了显著增强。
-
自动提示工程师(APE):APE 自动为通过输出演示界定的任务生成指令。它制定几个指令候选项,使用目标模型执行它们,并根据计算的评估分数选择最合适的指令。
-
主动提示[74]:主动提示是一种设计主动引导模型生成所需输出的提示的技术。
-
方向刺激提示[75]:这种技术引入了一个称为方向刺激的新组件到提示中,提供对 LLMs 更精细的引导和控制。
-
程序辅助语言模型(PAL):PAL 能够编写解决问题的代码。它将代码发送到程序运行时以获得结果。
Prompt调整是一种参数高效的调整(PETuning)方法,用于利用预训练模型(PTMs)。这种技术简单地在输入中附加一个软提示,并仅优化提示以使PTMs适应下游任务[77]。这种技术的重要性在于其效率,因为从头开始训练一个大型语言模型在计算资源和时间方面是极其昂贵的。通过利用预训练模型中已经封装的知识,人们可以在具有相对较少数据和计算量的情况下在特定任务上实现高性能。在提示调整的背景下,将最佳提示或前端提示提供给AI模型,以为其提供特定任务的上下文。这些提示可以是人为引入的额外单词,也可以是嵌入到模型的嵌入层中的AI生成的数字。类似于填字游戏提示,这两种类型的提示都引导模型朝着期望的决策或预测方向发展。Prompt调整使得一家数据有限的公司能够将庞大的模型定制到一个狭窄的任务上。它还消除了更新模型的数十亿(或数万亿)个权重或参数的需要。重新部署一个AI模型而无需重新训练可以将计算和能源使用减少至少1,000倍,从而实现大幅度的成本节约。
Prompt和前缀标记调整是一种涉及优化连续提示以进行生成的技术[78]。在前缀调整中,上下文(更具体地说,提示嵌入)必须在每次对话请求中重新引入,因为提示不会改变模型。前缀调整是自然语言生成任务的轻量级替代方案,它保持语言模型参数冻结,但优化一个小的连续任务特定向量(称为前缀)。前缀调整受提示的启发,允许后续标记关注这个前缀,就像它们是“虚拟标记”一样。通过仅学习0.1%的参数,前缀调整在完整数据设置中实现了可比较的性能,在低数据设置中优于微调,并且对训练期间未见过的主题的示例进行了更好的外推。
在提示中的数据集特定前缀涉及应用定制的不同提示,这些提示针对所讨论的数据集进行定制[79]。在数据集展示出相当多样性的情况下,这种技术是不可或缺的,而每个数据集的通用提示可能无法充分管理向原始预训练数据分布的复杂分布转移。
为了解决这个问题,提出了一种数据集多样性感知提示策略,该策略由一个元提示初始化。下游数据集以一种多样性自适应的方式被聚类为小的同质子集,每个子集都有自己单独优化的提示。这种分而治之的设计减轻了优化困难,并显著增强了提示性能。
提供伪代码和代码片段作为示例可以显著增强模型生成的响应[81]。伪代码是对计算机程序或算法操作原理的非正式高级描述。它是程序员用来规划和组织他们的代码的工具。当模型提供伪代码时,它可以理解代码背后的逻辑,并生成更准确和相关的响应。这是因为伪代码提供了算法的清晰简洁表示,有助于模型理解和生成所需的输出。
图4:AlphaCode的代码生成方法
在多模态模型中,提供统一建模语言(UML)图作为输入可以显著增强生成的代码[82]。UML图提供了一种标准化的方法来可视化系统的架构蓝图,包括活动、参与者、业务流程、数据库模式、组件、编程语言语句和可重用软件组件等元素。当多模态模型提供了UML图时,它可以理解系统的架构,并生成准确代表系统的代码。koziolek等人[83]探讨了LLMs中基于图表的代码生成。图4展示了AlphaCode[18]用于代码生成的方法。
在上下文学习中,提供模型上下文或情境是从大型语言模型中提取知识的有效策略[84]。它涉及为模型提供一个上下文或情境,模型学习根据该上下文生成响应。这在模型需要适应新情况或任务的情况下特别有用。例如,在对话中,模型可以利用先前消息的上下文生成相关响应。上下文学习使模型能够不断学习和适应,因此对于对话、问答等任务是一个强大的工具。
图5:MedFuseNet的视觉问答方法
大型语言模型(LLMs)可以通过将视觉理解与语言处理相结合来执行视觉问答(VQA)。模型提供了一张图片和关于图片的查询,然后根据其对图片内容和查询的理解制定答案。一种称为Img2Prompt的技术[85]被用于提供描述图像内容和自动生成的问题-答案对的提示,这有效地引导LLM执行VQA任务。这种技术对LLMs是不可知的,可以与任何LLM一起执行VQA。另一种方法是用于视觉提示查询的检索增强生成(RAG),其中智能搜索工具在提供的知识库中寻找相关信息。随后检索到的信息被馈送给LLM,以增强其生成精确和相关答案的能力。图5展示了MedFuseNet[21]的视觉问答方法。
在长时间对话中,应用提示是必不可少的,以保持对话的上下文和连贯性。对于需要非常长对话的对话应用程序,一种策略是总结或过滤先前的对话,因为模型有固定的上下文长度。Meta AI、MIT和CMU的研究人员提出了一种有趣的解决方案,称为StreamingLLM[87],它允许现有的LLMs处理极长的上下文而无需进行微调。另一种方法是ConversationChain,它使大型语言模型能够回忆先前与用户的互动。默认情况下,LLMs是无状态的——每个传入查询都是独立处理的,这意味着每个传入查询都是独立处理的。记忆允许LLM回忆先前的互动。
提示也被用于常识推理任务,其中模型被期望进行人类明显但未明确陈述的推理或判断[88]。例如,如果有人上传一张家具的图片并提供说明,模型可以利用这些提示生成家具的广告。Liu等人[89]探讨了生成知识提示的应用,其中包括从语言模型中生成知识,然后在回答问题时将该知识作为额外输入提供。这种方法增强了大规模模型在各种常识推理任务上的性能。
提示是有效利用大型语言模型的关键方面。它涉及制定清晰具体的指令或查询,以从语言模型中引出所需的响应[90]。LLM检索增强生成通过从外部来源检索相关材料来增强LLMs生成的内容。RAG的核心优势在于其数据检索方法,为LLMs提供了额外的上下文,显著丰富了内容生成过程。
建设性提示数据生成是一种方法,其中提示被精心制作以引导AI模型生成合成数据。这种人工创建的数据作为训练和测试AI模型的宝贵资源,特别是当特定任务或领域的真实数据稀缺时。数据生成技术的范围从简单方法,如数据增强(涉及对现有数据进行轻微修改),到更复杂的方法,如使用生成模型制造全新的数据样本。确保生成数据集的多样性对于训练健壮且具有一般性的AI模型至关重要。增强多样性的技术包括:
-
使用各种数据生成方法,如引导法,为通过重新采样生成多样化模型奠定基础。
-
结合各种数据源可能涉及从不同数据库收集数据或使用不同类型的数据(例如文本、图像、音频)进行多模态方法。
-
数据增强可用于扩大现有训练集的规模和多样性,而无需手动收集新数据[91]。这个过程通过使用产生合理图像的随机变换来从现有示例中制造额外的训练数据。定期评估数据集的多样性并进行必要的调整也是至关重要的。
AI模型中的提示功能在处理用户输入并为模型生成适当提示方面发挥着关键作用。这涉及解读用户输入,识别所需任务,并制定一个有效传达这个任务给模型的提示。目标是引导模型的输出朝着特定功能或行为发展。这可能涉及指定所需输出的格式、提供示例、指导模型逐步思考,或在确定答案之前讨论利弊。
负责任地使用AI模型需要确保模型以符合伦理、公平和尊重用户隐私的方式使用。这包括阻止提示注入,即操纵提示使模型表现出不良行为,并拒绝有害提示,这可能导致模型生成不当或有害内容[93]。有必要建立防范措施来检测和防止这种滥用,并根据需要定期审查和更新这些防范措施。例如,防止提示注入的一种方法是增强添加到用户输入的内部提示的鲁棒性。根据Perez等人[94]的说法,其他潜在的安全措施包括设置较低的温度和增加频率惩罚。此外,由于精心设计的提示注入可能需要大量文本来提供上下文,因此将用户输入限制在合理的最大长度会使提示注入攻击变得更加困难。
评估自主代理
对自主代理进行评估是其开发和部署过程中的一个关键组成部分。它确保这些代理在各种预见和未预见的条件下表现如预期。评估过程对于确保工程系统(如自主代理)达到期望的性能基准并应对现实世界场景的复杂性至关重要。在本质上,自主代理是能够在没有直接人类干预的情况下做出决策和执行动作的智能实体。它们利用先进的算法和机器学习模型来分析数据、得出见解并自主执行任务。因此,评估这些代理对于确保它们做出适当的决策和有效执行任务至关重要。此外,评估对于识别和纠正代理性能中的潜在问题或限制至关重要。它使开发人员能够监视代理的性能,找出改进的领域,并实施必要的调整以增强其有效性。此外,评估在促进对自主代理的信任方面起着重要作用。通过展示这些代理能够可靠和准确地执行任务,评估有助于建立用户对代理的信任和接受。这对于在高风险环境中部署的自主代理尤为重要,因为它们的决策和行动可能产生重大后果。
传统评估框架
传统的自主代理评估框架通常侧重于评估代理在孤立环境中的性能。这些框架通常涉及测试代理完成特定任务或在受控环境中实现特定目标的能力。一种常见的方法是使用基准任务或数据集来评估代理的性能[109]。这些基准提供了一个标准的性能度量,可用于比较不同的代理或算法。另一种常见的方法是使用仿真环境来评估代理的性能。这些环境使开发人员能够在各种条件和场景下测试代理的性能[110]。
然而,这些传统框架经常忽视评估自主代理的独特挑战。例如,它们可能不充分考虑这些代理操作的动态环境或代理与其环境之间的复杂交互。因此,正在开发新的评估框架来解决这些挑战。这些框架旨在贯穿开发生命周期并在系统在嘈杂、变化和有争议的环境中学习和适应时进行评估。它们考虑在各种层次组成尺度上测试不同系统集成的挑战,同时尊重测试时间和资源有限[108]。
AgentBench:一个全面的评估框架
AgentBench[113]是一个不断发展的多维基准,目前包括八个独特的环境。它旨在评估大型语言模型在多轮、开放式生成环境中的推理和决策能力。这些环境涵盖了广泛的领域,每个领域对LLM提出了不同的挑战和要求。其中五个环境是新创建的,分别是操作系统、数据库、知识图谱、数字卡牌游戏和横向思维谜题。每个环境代表了LLM可能遇到的现实任务的不同方面。例如,操作系统环境评估LLM与模拟操作系统交互的能力,而数字卡牌游戏环境评估LLM在卡牌游戏中的战略决策能力。除了这些新领域,AgentBench还整合了三个从已发布数据集重新编译的环境:HouseHolding(HH)、Web Shopping(WS)和Web Browsing(WB)。这些环境提供了各种挑战,从在HH环境中管理家务任务到在WS环境中浏览在线购物平台。
LLM在AgentBench中的表现
作者对27个基于API和开源(OSS)的LLM进行了广泛测试。结果显示,顶级商业LLM与其开源对应物之间存在显著的表现差距。顶级商业LLM表现出在复杂环境中充当代理的强大能力,而OSS LLM则表现不佳。作者发现在环境和LLM中失败的几个常见原因。他们发现,长期推理、决策和遵循指令能力差是开发可用LLM代理的主要障碍。这些发现凸显了开发LLM以有效地在复杂环境中导航并在多轮任务中执行任务的挑战。
提升代理性能
作者提出,通过对代码和高质量的多轮对齐数据进行训练可以提升代理性能。通过对代码进行训练,LLM可以更好地理解编程语言的结构和逻辑,这对于操作系统和数据库等环境特别有益。另一方面,高质量的多轮对齐数据可以帮助LLM更好地理解对话的背景并做出更合适的决策。除了这些提议,作者还为AgentBench发布了数据集、环境和一套综合评估工具。其他研究人员可以利用这些资源来评估他们自己的LLM并为LLM作为代理的持续发展做出贡献。
与传统评估框架的比较
这种方法在几个方面与传统评估框架不同。传统评估框架通常侧重于评估代理在孤立环境中的表现。这些框架通常涉及测试代理完成特定任务或在受控环境中实现特定目标的能力。然而,这些传统框架通常未能考虑评估自主代理时面临的独特挑战。例如,它们可能未能充分考虑这些代理操作的动态环境,或者代理与其环境之间复杂互动。相比之下,AgentBench提供了对LLM在各种场景中作为自主代理运作能力的更全面评估。它涵盖了不同环境的广泛范围,为评估代理的表现提供了更真实和具有挑战性的环境。这使其成为评估LLM作为代理的性能和识别改进领域的更有效工具。
WebArena:自主代理的新环境
WebArena[116]是一个设计用于语言引导代理的高度逼真且可重现的环境。它旨在弥合当前代理主要开发和测试的简化合成环境与它们预期导航的复杂现实场景之间的差距。
该环境包括来自四个常见领域的完全功能的网站:电子商务、社交论坛讨论、协作软件开发和内容管理。这些领域代表了人类在互联网上定期执行的广泛任务范围,为评估代理提供了多样化和具有挑战性的环境。除了网站,该环境还配备了工具(例如地图)和外部知识库(例如用户手册),以促进类似人类的任务解决。这一特点旨在推动LLM可以实现的边界,超越简单的问答或文本生成任务,转向更复杂的问题解决任务。
基准任务和评估
在WebArena环境的基础上,作者发布了一组重点评估任务,重点评估任务完成的功能正确性。这些任务多样,具有长期视野,并旨在模拟人类在互联网上定期执行的任务。作者对几个基线代理进行了广泛测试,整合了最新技术,如先思考再行动。结果表明,解决复杂任务具有挑战性:他们基于GPT-4的最佳代理仅实现了14.41%的端到端任务成功率,远低于人类的78.24%的表现。这些结果凸显了对强大代理的进一步发展的需求,并表明当前最先进的大型语言模型在这些现实任务中表现远非完美。它们还表明WebArena可用于衡量这种进展。
与传统方法的比较
WebArena采取的方法与传统代理开发和评估方法有着显著不同。传统方法通常涉及在简化的合成环境中创建和测试代理。虽然这些环境对于初始开发和测试很有用,但它们通常未能准确代表真实世界场景的复杂性和多样性。相比之下,WebArena为开发和测试代理提供了一个高度逼真且可重现的环境。通过包括来自常见领域的完全功能网站,并丰富环境的工具和外部知识库,WebArena提供了一个紧密模拟人类在互联网上定期执行任务的设置。
这种方法允许对代理的性能和能力进行更全面的评估。它还为识别和解决当前LLM的挑战和限制提供了平台,为开发更强大和能干的代理铺平道路。
ToolLLM:促进大型语言模型掌握16000多个真实世界API
ToolLLM1[17]引入了一个包括数据构建、模型训练和评估的全面工具使用框架。该框架旨在增强大型语言模型(LLM)在使用外部工具(API)来完成人类指令方面的能力。这是LLM功能的关键方面,因为它使它们能够与现实世界互动并执行复杂任务。
尽管像LLaMA这样的开源LLM取得了进展,但它们的工具使用能力仍然受到显著限制。这主要是因为当前的指令调整主要集中在基本语言任务上,而忽视了工具使用领域。这与ChatGPT等最先进的封闭源LLM的出色工具使用能力形成鲜明对比。
数据构建、模型训练和评估
为了弥补这一差距,ToolLLM的作者引入了ToolBench,一个用于工具使用的指令调整数据集,该数据集使用ChatGPT自动构建。构建过程可分为三个阶段:
-
API收集:作者从RapidAPI Hub收集了涵盖49个类别的16464个真实世界RESTful API。
-
指令生成:他们提示ChatGPT生成涉及这些API的多样指令,涵盖单工具和多工具场景。
-
解决路径注释:他们使用ChatGPT搜索每个指令的有效解决路径(API调用链)。
为了增强LLM的推理能力,作者开发了一种基于深度优先搜索的决策树算法。它使LLM能够评估多个推理路径并扩展搜索空间。此外,为了评估LLM的工具使用能力,作者开发了一个自动评估器:ToolEval。基于ToolBench,他们对LLaMA进行微调,获得一个LLM ToolLLaMA,并配备了一个神经API检索器,为每个指令推荐适当的API。
ToolLLaMA的表现
实验表明,ToolLLaMA表现出执行复杂指令和泛化到未见API的显著能力,并展现出与ChatGPT相当的表现。ToolLLaMA还展示了在一个超出分布的工具使用数据集APIBench中的强零样本泛化能力。
与传统方法的比较
ToolLLM采取的方法与传统代理开发和评估方法有着显著不同。传统方法通常涉及在简化的合成环境中创建和测试代理。虽然这些环境对于初始开发和测试很有用,但它们通常未能准确代表真实世界场景的复杂性。相比之下,ToolLLM为开发和测试代理提供了一个高度逼真且可重现的环境。通过包括来自常见领域的完全功能网站,并丰富环境的工具和外部知识库,ToolLLM提供了一个紧密模拟人类在互联网上定期执行任务的设置。这种方法允许对代理的性能和能力进行更全面的评估。它还为识别和解决当前LLM的挑战和限制提供了平台,为开发更强大和能干的代理铺平道路。
基于LLM的自主代理的主观评估
主观评估在基于大型语言模型(LLM)的自主代理的开发和部署中发挥着关键作用。这个过程涉及通过人类判断来评估这些代理的表现,为它们的有效性、可用性和整体质量提供宝贵的见解。在LLM的主观评估中,一种普遍采用的方法是人类注释[115][1]。这个过程涉及人类注释员根据各种标准(如相关性、连贯性和流畅性)审查和评分LLM的输出。这种方法可以提供对LLM表现的详细评估,并指出可能需要改进的领域。尽管如此,人类注释也存在一些挑战。它可能耗时且昂贵,特别是对于大规模评估而言。此外,它可能存在偏见,因为不同的注释员可能会对评估标准有不同的解释。尽管存在这些挑战,人类注释仍然是LLM主观评估中一种宝贵的工具。图灵测试,以英国数学家和计算机科学家艾伦·图灵命名,是LLM主观评估中使用的另一种方法。图灵测试旨在评估机器展示出与人类相当或无法区分的智能行为的能力。在LLM的背景下,图灵测试通常涉及人类评判员与LLM进行对话,而不知道他们正在与机器交互[114][1]。如果评判员无法可靠区分LLM和人类对话者,则认为LLM已通过图灵测试。然而,图灵测试也有其局限性。虽然它提供了对LLM模仿人类对话能力的高层次评估,但它并未提供关于LLM具体优势和劣势的详细见解。此外,通过图灵测试并不一定意味着LLM以与人类相同的方式理解对话内容。
除了人类注释和图灵测试,还有其他用于LLM主观评估的方法。例如,可以进行用户研究以评估LLM在真实场景中的可用性和用户满意度[111]。这些研究可以为LLM的表现提供宝贵的反馈,并确定改进的领域。另一种方法涉及专家评审,领域专家根据其专业判断评估LLM的表现[112]。这种方法可以在专业领域提供更细致的LLM能力评估。
实施约束
多模态性:LLM自主代理的双刃剑
整合文本、图像和音频等多种数据类型带来了巨大挑战[95]。多模态数据所需的复杂处理可能会对这些代理的性能造成压力。多模态数据处理的计算负担是一个主要问题。每种数据类型都需要不同的预处理步骤,这些不同数据类型的融合对代理的理解产生不一致性。例如,代理可能会以与其对视觉数据的解释不同的方式解释文本数据,可能导致决策冲突。此外,训练全面的多模态数据集的匮乏可能会削弱代理有效理解和解释多模态数据的能力。这种限制可能会使代理在管理常涉及复杂多模态输入的现实场景时表现不佳。
随着LLM基于自主代理对多模态能力的需求增加,提供高性能、可靠代理的压力也在增加[97]。然而,这种不断增长的需求可能会在多方面导致性能不佳。急于整合多模态能力可能导致构思不周或执行不佳的功能,从而导致性能不佳。此外,多模态数据的不断增加可能会超出代理的处理能力,导致响应时间变慢和
多种策略可用于应对基于LLM的自主代理中与多模态性相关的挑战[96]。增强计算效率至关重要。这可以通过使用优化算法和更高效的数据处理技术来实现。此外,开发更全面和多样化的多模态数据集用于训练可以增强代理理解和解释多模态数据的能力。精心设计和实施多模态特征可以防止性能较差的特征被引入[98]。随着代理任务范围的逐渐扩大,结合持续测试和改进,确保代理在承担更复杂任务时仍然能够保持能力和可靠性。
基于LLM的自主代理中的人类对齐
基于大型语言模型(LLM)的自主代理与人类价值观、期望和指令的对齐是其设计和运行的关键方面[99]。然而,实现这种对齐面临着可能会对这些代理的性能产生不利影响的挑战[100]。一个常见问题是对人类指令的误解。输入提示中的细微变化可能导致输出产生显著偏差,导致行动偏离用户意图。此外,基于LLM的代理可能会无意中生成反映在其训练数据中存在的偏见的内容。如果在训练过程中未能妥善减轻这些偏见,这些偏见可能会体现在代理的行为中。此外,基于LLM的代理可能会生成事实不正确或语义无意义的信息。当模型从输入数据中做出错误推断或生成语法正确但语义无意义的文本时,就会发生这种情况。
LLM-based自主代理与人类期望之间的不对齐以多种方式发生。如果代理错误解释用户的指令,可能会采取无益甚至有害的行动,导致代理整体效果下降。生成有偏见的内容可能会削弱用户对代理的信任。如果用户认为代理存在偏见,他们可能不太愿意使用它,或者他们可能以一种强化自身偏见的方式使用它。生成不正确或无意义信息可能会造成混乱和错误信息,潜在地导致用户基于错误信息做出决策,可能带来严重后果。
可以实施各种方法来解决与基于LLM的自主代理中人类价值观对齐相关的问题。改善训练数据的质量有助于减轻误解和偏见。这可以涉及使用更多样化和具代表性的数据集,并实施过滤偏见或不正确信息的技术。融入用户反馈通常有助于提高对齐度。用户可以为代理的行动与其期望程度提供宝贵见解,这些反馈可以用于进一步微调模型[101]。对代理性能的持续监控和评估有助于识别和纠正不对齐问题。这可以涉及使用专门衡量对齐度的指标以及实施定期审查和调整代理行动的系统。
幻觉之谜
大型语言模型(LLM)中的幻觉表现为模型创造的内容缺乏其训练数据的证实。这一困境可能对利用LLM的自主代理的性能构成重大障碍。幻觉的出现可能导致生成事实不正确或缺乏逻辑的信息。这可能导致代理提供误导性或缺乏生产力的响应,从而削弱其整体效率。幻觉的存在还可能导致代理输出的不一致性。例如,代理可能创建与其先前生成的信息相矛盾或与已知事实相矛盾的内容。这可能导致混乱并在用户之间培养不信任。此外,幻觉可能促使代理生成具有偏见或不当内容。这可能损害用户对代理的信任,并削弱其整体实用性[102]。
幻觉可能以多种方式导致基于LLM的自主代理表现不佳。生成不正确或无意义的信息可能导致代理整体效果下降。用户可能收到不正确的信息,这可能导致做出错误决策。幻觉可能损害用户对代理的信任[103]。如果用户认为代理由于幻觉而不可靠,他们可能不太愿意使用它,从而降低其实用性。幻觉可能导致代理生成不当或冒犯性内容。这可能损害用户体验,并可能导致部署代理的实体声誉受损。
有许多方法可用于解决基于LLM的自主代理中幻觉相关的困难。提高训练数据的质量有助于减轻幻觉。这可以涉及使用更多样化和具代表性的数据集,以及实施技术来过滤出偏见或不正确信息。融入用户反馈有助于增强模型的性能。用户可以为代理的行为提供宝贵见解,这些反馈可用于微调模型。对代理性能的持续监控和评估有助于识别和解决幻觉问题[104]。这可以涉及使用专门衡量代理幻觉率的指标,以及实施定期审查和调整代理行为的系统。虽然幻觉对基于LLM的自主代理构成重大挑战,但通过精心规划、高效设计和持续改进,这些挑战可以克服。随着领域的不断发展,预计这些代理将越来越擅长处理复杂任务而不产生幻觉。
代理生态系统的复杂性
代理生态系统,指的是基于大型语言模型(LLM)的自主代理运行的环境,可以显著影响这些代理的性能。代理生态系统的复杂性引发了计算效率问题。生态系统中的每个代理都需要不同的处理步骤,这些不同代理之间的相互作用可能需要大量计算[105]。此外,生态系统中代理的异质性可能导致系统整体性能的不一致性。例如,一个代理可能会与另一个代理不同地解释数据,导致决策中潜在的冲突。训练的全面数据集的稀缺性可能会限制代理有效理解和解释生态系统的能力[106]。这可能导致代理在处理通常涉及复杂多代理输入的现实场景时表现不佳。
代理生态系统的复杂性可能导致性能问题。如果代理无法有效地导航生态系统,可能会采取无益或适得其反的行动。这可能导致代理整体效果下降。生成不一致的响应通常会削弱用户对代理的信任[107]。如果用户认为代理由于无法与其他代理一致地互动而不可靠,他们可能不太愿意使用它。生成不正确或无意义的信息会造成混乱和错误信息[106]。这可能导致用户基于错误信息做出决策,可能带来严重后果。在基于LLM的自主代理的精心设计和标准化中,必须实施标准化的通信协议,以确保信息交换顺畅并最小化误解。生态系统中的每个代理应具有明确定义的角色和责任,以防止冲突和冗余。应采用模块化设计原则,允许各个代理独立开发、测试和部署,从而便于更容易地进行维护和扩展。为了进行强大的训练和开发,应开发涵盖各种情景和数据模态(文本、图像、音频)的全面训练数据集,以增强代理处理现实世界复杂性的能力。应实施机制,使代理能够不断学习和适应其与环境和其他代理的互动,促进其处理意外情况的能力。在开发过程中应进行对代理生态系统的严格测试和改进,以在实际部署之前识别和解决潜在问题。关于信任和可解释性,应集成允许用户理解代理决策基础的机制,促进信任和用户接受。应实施技术来检测和减轻代理和训练数据中的潜在偏见,以确保公平和道德行为。最后,应保持人类对代理生态系统的监督和控制框架,允许在关键情况下进行干预,并确保遵守道德准则。
结论
大型语言模型(LLM)处于人工智能的前沿,支撑着在各个领域执行广泛任务的自主代理。这些代理具有理解和生成类似人类交流的文本的能力,有望彻底改变从客户服务到医疗保健等各个领域。然而,这些代理面临着多个挑战。多模态性,即跨文本、图像和声音等多种通信模式处理和生成信息的能力,是一个主要障碍。虽然LLM在文本任务中表现出色,但在涉及其他通信模式的任务中的效力尚未达到顶峰。另一个重要挑战是与人类价值观的对齐。随着AI系统获得更多自治权,其行动和决策与人类的伦理和价值观产生共鸣变得至关重要。这一复杂问题需要理解文化细微差别和伦理原则,并将其纳入AI系统中。幻觉现象,或生成没有根据的信息,构成另一个障碍。虽然LLM擅长生成可信文本,但它们偶尔会生成事实不正确或无意义的信息。对这些代理进行评估也是一个相当大的挑战。传统的评估指标如准确性或精确度可能无法完全概括这些代理的能力。需要新颖的评估框架来评估它们在复杂的现实场景中的表现。为了克服这些挑战,正在探索各种技术。提示和推理可以引导代理的响应并增强其决策能力。使用工具使代理能够利用外部资源来增强其能力。上下文学习使代理能够从对话历史中学习并相应地调整其响应。AgentBench、WebArena和ToolLLM等强大的评估平台提供了全面的方法来评估这些代理在复杂场景中的表现。这些平台模拟了真实世界的环境和任务,全面评估了代理的能力。这些进展正在为开发更强大和能力更强的自主代理铺平道路。随着研究的进展,我们可以预见这些代理将成为我们数字生活中不可或缺的一部分,协助我们执行各种任务,从回复电子邮件到诊断疾病。以LLM为先导的AI未来看起来充满希望。