人工智能时代的落地方案 ——AI Agent
AI Agent(人工智能代理)是一种能够感知环境、进行决策和执行动作的智能实体
AI Agent也可以称为“智能体”,也可理解为“智能业务助理”,旨在大模型技术驱动下,让人们以自然语言为交互方式高自动化地执行和处理专业或繁复的工作任务,从而极大程度释放人员精力。
Agent 其实基本就等于 “大模型 + 插件 + 执行流程 / 思维链”,分别会对应控制端 (Brain / 大脑)、感知端 (Preception)、执行端 (Action) 环节,如下,
AI Agent 发展迅速,出现多款“出圈”级研究成果。2023 年 3 月起,AI Agent 领 域迎来了第一次“出圈”,西部世界小镇、BabyAGI、AutoGPT 等多款重大 Agent 研究项目均在短短两周内陆续上线,引发了大家对 AI Agent 领域的关注。目前已经 涌现了在游戏领域大放异彩的英伟达 Voyager 智能体、能够帮助个人完成简单任务 的 Agent 助理 HyperWrite、以及主打个人情感陪伴的 AI 助理 Pi 等多款优秀的 Agent 成果,AI Agent 的研究进展迅速。
背景介绍
大语言模型的浪潮推动了 AI Agent 相关研究快速发展,AI Agent 是当前通往 AGI 的主要探索路线。大模型庞大的训练数据集中包含了大量人类行为数据,为模拟类 人的交互打下了坚实基础;另一方面,随着模型规模不断增大,大模型涌现出了上 下文学习能力、推理能力、思维链等类似人类思考方式的多种能力。将大模型作为 AI Agent 的核心大脑,就可以实现以往难以实现的将复杂问题拆解成可实现的子任 务、类人的自然语言交互等能力。由于大模型仍存在大量的问题如幻觉、上下文容 量限制等,通过让大模型借助一个或多个 Agent 的能力,构建成为具备自主思考决 策和执行能力的智能体,成为了当前通往 AGI 的主要研究方向。
Agent这个词是如何出现的
有很多人或许会疑惑,Agent这个东西看起来跟LLM也没差得那么远,那为啥最近突然Agent那么火,而不称之为LLM-Application或者其他的词呢?这就得从agent的来历上说起了,因为Agent是个很古老的术语,甚至可以追溯至亚里士多德和休谟等人的言论。从哲学意义上讲,“代理人”是指具有行动能力的实体,而“代理”一词则表示这种能力的行使或体现。而从狭义上讲,“代理”通常是指有意行动的表现;相应地,“代理人”一词表示拥有欲望、信念、意图和行动能力的实体。需要注意的是,代理人不仅包括人类个体,还包括物理世界和虚拟世界中的其他实体。重要的是,“代理”的概念涉及个人的自主性,赋予他们行使意志、做出选择和采取行动的能力,而不是被动地对外部刺激做出反应。
在 20 世纪 80 年代中后期之前,主流人工智能界的研究人员对Agent相关概念的关注相对较少,这可能会让人感到惊讶。然而,从那时起,计算机科学和人工智能界对这一话题的兴趣就大大增加了。正如 Wooldridge 等人所言,我们可以这样定义人工智能:“它是计算机科学的一个子领域,旨在设计和构建基于计算机的、表现出智能行为各个方面的Agent。”因此,我们可以把Agent作为人工智能的核心概念。当Agent这一概念被引入人工智能领域时,其含义发生了一些变化。在哲学领域,Agent可以是人、动物,甚至是具有自主性的概念或实体。然而,在人工智能领域,Agent是一个计算实体。由于意识和欲望等概念对于计算实体来说似乎具有形而上学的性质,而且我们只能观察机器的行为,包括艾伦-图灵在内的许多人工智能研究者建议暂时搁置Agent是否“真正”在思考或是否真的拥有“思想”的问题。相反,研究人员采用其他属性来帮助描述Agent,如自主性、反应性、主动性和社交能力等属性。也有研究者认为,智能是“看人的眼睛”;它不是与生俱来的、孤立的属性。从本质上讲,AI Agent并不等同于Philosophy Agent;相反,它是Agent这一哲学概念在人工智能领域的具体化。在本文中,作者将AI Agent视为人工实体,它们能够使用传感器感知周围环境,做出决策,然后使用执行器采取行动。
在特定行业场景中,通用大模型具有的泛化服务特性,很难在知识问答、内容生成、业务处理和管理决策等方面精准满足用户的需求。
因此,让通用大模型学习行业知识和行业语料成为行业大模型,再进一步学习业务知识和专业领域工具演进为场景大模型,是生成式AI深入业务场景,承担更复杂任务的关键路径。这一过程的实现,让大模型的持续进化最终以AI Agent的产品形态,开始了对业务的流程及其管理和服务模式的重构与优化。
正如OpenAI联合创始人安德烈·卡帕斯(Andrej Karpathy)认为,在各类行业组织对数字化实体的打造进程中,对于通用人工智能(AGI)的应用,将广泛采用AI Agent的产品形式开展业务,而来自于各行业领域的开发人员和创业者们,将比通用大模型的开发商们更具有对AI Agent的开发优势。AI Agent,也被越来越多的人认可为是数字经济时代深刻赋能各行各业的高效生产力工具。
不同于传统的人工智能,AI Agent 具备通过独立思考、调用工具去逐步完成给 定目标的能力。AI Agent 和大模型的区别在于,大模型与人类之间的交互是基于 prompt 实现的,用户 prompt 是否清晰明确会影响大模型回答的效果。而 AI Agent 的工作仅需给定一个目标,它就能够针对目标独立思考并做出行动。和传统的 RPA 相比,RPA 只能在给定的情况条件下,根据程序内预设好的流程来进行工作的处 理,而 AI Agent 则可以通过和环境进行交互,感知信息并做出对应的思考和行动。
AI Agent研究中的技术演变史
Symbolic Agents: 在人工智能研究的早期阶段,最主要的方法是符号人工智能,其特点是依赖符号逻辑。这种方法采用逻辑规则和符号表示来封装知识和促进推理过程。它们主要关注两个问题:转换问题和表示/推理问题。这些Agent旨在模拟人类的思维模式。它们拥有明确的、可解释的推理框架,而且由于其符号性质,它们表现出高度的表达能力。这种方法的一个典型例子是基于知识的专家系统。然而,Symbolic Agent在处理不确定性和大规模现实世界问题时面临着局限性。此外,由于符号推理算法错综复杂,要找到一种能在有限时间内产生有意义结果的高效算法也很有挑战性。
Reactive Agents: 与Symbolic Agent不同,Reactive Agent不使用复杂的符号推理。相反,它们主要关注Agent与其Environment之间的交互,强调快速和实时响应。这类Agent的设计优先考虑直接将输入输出进行映射,而不是复杂的推理和符号操作。Reactive Agent通常需要较少的计算资源,从而能做出更快的反应,但可能缺乏复杂的高层决策和规划能力。
RL-based Agents: 该领域的主要关注点是如何让Agent通过与环境的交互进行学习,使其在特定任务中获得最大的累积奖励。最初,RL-based Agent主要基于强化学习算法,如策略搜索和价值函数优化,Q-learning和SARSA就是一个例子。随着深度学习的兴起,出现了深度神经网络与强化学习的整合,即深度强化学习。这使得Agent可以从高维输入中学习复杂的策略,从而取得了众多重大成就,如AlphaGo和DQN。这种方法的优势在于它能让Agent在未知环境中自主学习,而无需明确的人工干预。这使得它能广泛应用于从游戏到机器人控制等一系列领域。然而,强化学习也面临着一些挑战,包括训练时间长、采样效率低以及稳定性问题,尤其是在复杂的真实世界环境中应用时。
Agent with transfer learning and meta learning: 传统上,训练强化学习Agent需要大量样本和较长的训练时间,而且缺乏泛化能力。因此,研究人员引入了迁移学习来加速Agent对新任务的学习。迁移学习减轻了新任务培训的负担,促进了知识在不同任务间的共享和迁移,从而提高了学习效率、绩效和泛化能力。此外,AI Agent也引入了元学习。元学习的重点是学习如何学习,使Agent能从少量样本中迅速推断出新任务的最优策略。这样的Agent在面对新任务时,可以利用已获得的一般知识和策略迅速调整其学习方法,从而减少对大量样本的依赖。然而,当源任务和目标任务之间存在显著差异时,迁移学习的效果可能达不到预期,并可能出现负迁移。此外,元学习需要大量的预训练和大量样本,因此很难建立通用的学习策略。
LLM-based Agent: 由于大型语言模型已经展示出令人印象深刻的新兴能力,并受到广泛欢迎,研究人员已经开始利用这些模型来构建AI Agent。具体来说,他们采用 LLM 作为这些Agent的大脑或控制器的主要组成部分,并通过多模态感知和工具利用等策略来扩展其感知和行动空间。通过思维链(CoT)和问题分解等技术,这些基于 LLM 的Agent可以表现出与Symbolic Agen相当的推理和规划能力。它们还可以通过从反馈中学习和执行新的行动,获得与环境互动的能力,类似于Reactive Agent。同样,大型语言模型在大规模语料库中进行预训练,并显示出少量泛化的能力,从而实现任务间的无缝转移,而无需更新参数。LLM-based Agent已被应用于各种现实世界场景、如软件开发和科学研究。由于具有自然语言理解和生成能力,它们可以无缝互动,从而促进多个Agent之间的协作和竞争。
为什么LLM能够作为Agent的全新大脑
本文将深入探讨一些Agent关键属性,阐明它们与 LLM 的相关性,从而阐述为什么 LLM 非常适合作为AI Agent大脑。
自主性(Autonomy):自主性是指一个Agent在没有人类或其他人直接干预的情况下运行,并对其行动和内部状态拥有一定程度的控制。这意味着,AI Agent不仅应具备按照人类的明确指令完成任务的能力,还应表现出独立发起和执行行动的能力。这意味着一定程度的自主探索和决策,Auto-GPT等应用体现了 LLM 在构建Autonomious Agent方面的巨大潜力——只需向它们提供一项任务和一套可用工具,它们就能自主制定计划并执行计划,以实现最终目标。本文认为LLMs在自主性方面的表现主要体现在以下几点:
- LLMs可以通过生成类似人类的文本参与对话,并在没有详细步骤指示的情况下执行各种任务的能力来展示一种自主性。
- LLMs能根据环境输入动态调整输出,体现出一定程度的自适应能力。
- LLMs能通过展示创造力来体现自主性,比如提出新颖的想法、故事或解决方案,而这些并没有明确编入它们的程序。
反应性(Reactivity):Agent的反应能力是指它对环境中的即时变化和刺激做出快速反应的能力。这意味着Agent可以感知周围环境的变化,并迅速采取适当的行动。传统上,语言模型的感知空间局限于文本输入,而行动空间则局限于文本输出。不过,研究人员已经证明,利用多模态融合技术可以扩展语言模型的感知空间,使其能够快速处理来自环境的视觉和听觉信息。这些进步使 LLMs 能够有效地与真实世界的物理环境互动,并在其中执行任务。一个主要挑战是:LLM-based Agent在执行非文本操作时,需要一个中间步骤,即以文本形式产生想法或制定工具使用方法,然后最终将其转化为具体操作。这一中间过程会消耗时间,降低响应速度。不过,这与人类的行为模式密切相关,因为人类的行为模式遵循“先思考后行动”的原则。
主动性(Pro-activeness):积极主动指的是,Agent不仅仅会对环境做出反应,它们还能积极主动地采取以目标为导向的行动。这一特性强调,Agent可以在行动中进行推理、制定计划和采取主动措施,以实现特定目标或适应环境变化。虽然直观上,LLMs 中的下一个标记预测范式可能不具备意图或愿望,但研究表明,它们可以隐式地生成这些状态的表征,并指导模型的推理过程。LLMs 具有很强的概括推理和规划能力。通过向大型语言模型发出类似 "让我们一步一步地思考 "的指令,我们可以激发它们的推理能力,如逻辑推理和数学推理。同样,大型语言模型也以目标重拟、任务分解和根据环境变化调整计划等形式显示了规划的新兴能力。
社会能力(Social Ability):社交能力指的是一个Agent通过某种Agent交流语言与其他Agent(包括人类)进行交互的能力。大型语言模型具有很强的自然语言交互能力,如理解和生成能力。与结构化语言或其他通信原语相比,这种能力使它们能够以可解释的方式与其他模型或人类进行交互,这构成了LLM-based Agent的社会能力的基石。许多研究人员已经证明,LLM-based Agent可以通过协作和竞争等社会行为提高任务绩效(Meta GPT)。通过输入特定的提示,LLM 也可以扮演不同的角色,从而模拟现实世界中的社会分工(Overcooked)。此外,当我们将多个具有不同身份的Agent放入一个社会中时,可以观察到新出现的社会现象(Generative Agent)。
LLM研究对Agent研究的贡献
AI Agent需要感知环境、做出决策并执行适当的行动。在这些关键步骤中,最重要的是理解输入给Agent的内容、推理、规划、做出准确决策,并将其转化为可执行的原子动作序列,以实现最终目标。目前,许多研究利用LLM作为AI Agent的认知核心,这些模型的发展为完成这一步骤提供了质量保证。
- LLM的优势:大型语言模型在语言和意图理解、推理、记忆甚至移情等方面具有强大的能力,可以在决策和规划方面发挥卓越的作用。再加上预先训练的知识,它们可以创建连贯的行动序列,并有效地执行。此外,通过反思机制,这些基于语言的模型可以根据当前环境提供的反馈不断调整决策和优化执行序列。
- LLM的应用:LLM为Agent研究提供了一个非常强大的基础模型,在与Agent相关的研究中,LLM开辟了许多新的机会。例如,我们可以探索如何将LLM的高效决策能力整合到传统的Agent决策框架中,使Agent更容易应用于对专业知识要求较高且以前由人类专家主导的领域。此外,Agent研究不再局限于简单的模拟环境,现在可以扩展到更复杂的真实世界环境中。
Agent研究对LLM研究的贡献
将LLM提升为Agent标志着向人工通用智能(AGI)迈出了更坚实的一步。从Agent的角度来看待LLM,对LLM研究提出了更高的要求,同时也扩大了LLM的应用范围,为实际应用提供了大量机会。
- LLM的研究方向:对LLM的研究不再局限于涉及文本输入和文本输出的传统任务,如文本分类、问题解答和文本摘要。取而代之的是,研究重点已转向处理复杂任务,这些任务包含更丰富的输入模式和更广阔的行动空间。
- LLM的挑战:挑战在于如何让大型语言模型高效地处理输入、从环境中收集信息并解释由其行动产生的反馈,同时保持其核心能力。此外,更大的挑战在于如何让LLMs理解环境中不同元素之间的隐含关系,并获取世界知识。
- LLM的行动能力:大量研究旨在扩展LLM的行动能力,让它们掌握更多影响世界的技能,例如在模拟或物理环境中使用工具或与机器人API接口。
- Multi-Agent系统领域:我们希望LLM-based Agent能在社会合作中扮演不同的角色,参与涉及协作、竞争和协调的社会互动。
Agent的构建
图1:LLM-based Agent的概念框架,由大脑、感知、行动三个部分组成。作为控制器,大脑模块承担记忆、思考和决策等基本任务;感知模块负责感知和处理来自外部环境的多模态信息;行动模块负责使用工具执行任务并影响周围环境
一个基于大模型的 AI Agent 系统可以拆分为 **
大模型
、
规划
、
记忆
与
工具
使用四个组 件部分**。AI Agent 可能会成为新时代的开端,其基础架构可以简单划分为 Agent = LLM + 规划技能 + 记忆 + 工具使用,其中 LLM 扮演了 Agent 的“大脑”,在这个 系统中提供推理、规划等能力。 本文主要介绍LLM-based Agent的总体概念框架,由大脑、感知、行动三个关键部分组成(见图1)。
大脑模块
大脑主要由一个大型语言模型组成,不仅存储知识和记忆,还承担着信息处理和决策等功能,并可以呈现推理和规划的过程,能很好地应对未知任务。
运行机制:为确保有效交流,自然语言交互能力 至关重要。在接收感知模块处理的信息后,大脑模块首先转向存储,在知识中检索 并从记忆中回忆 。这些结果有助于Agent制定计划、进行推理和做出明智的决定 。此外,大脑模块还能以摘要、矢量或其他数据结构的形式记忆Agent过去的观察、思考和行动。同时,它还可以更新常识和领域知识等知识,以备将来使用。LLM-based Agent还可以利用其固有的概括和迁移能力来适应陌生场景 。在随后的章节中将详细探讨图2所示的大脑模块的这些非凡功能。
自然语言交互
作为一种交流媒介,语言包含着丰富的信息。除了直观表达的内容,背后还可能隐藏着说话者的信念、愿望和意图。由于 LLM 本身具有强大的自然语言理解和生成能力,Agent不仅可以熟练地使用多种语言进行基本的交互式对话,还能表现出深入的理解能力,从而使人类能够轻松地理解Agent并与之互动。
多轮交互对话:多轮对话能力是有效和一致交流的基础。作为大脑模块的核心,LLM能够理解自然语言并生成连贯且与上下文相关的回复,从而帮助Agent更好地理解和处理各种问题。然而,即使是人类也很难在一次交流中不出现混乱,因此需要多轮对话。与 SQuAD 等传统的纯文本阅读理解任务相比,多轮对话具有以下几个特点:
- 具有交互性,涉及多个说话者,缺乏连续性;
- 可能涉及多个话题,对话信息也可能是冗余的,使得文本结构更加复杂。
一般来说,多轮对话主要分为三个步骤: (1) 了解自然语言对话的历史;(2) 决定采取什么行动;(3) 生成自然语言回应。 LLM-based Agent能够利用现有信息不断完善输出,进行多轮对话并有效实现最终目标。
高质量的自然语言生成:最新的 LLM 展示了卓越的自然语言生成能力,可持续生成多种语言的高质量文本。LLM 生成内容的连贯性和语法准确性稳步提高,从GPT-3逐步发展到 InstructGPT,最终达到 GPT-4。这些语言模型可以“适应调节文本的风格和内容”,而像ChatGPT这样的模型在语法错误检测方面表现出色,凸显了其强大的语言能力。在对话语境中,LLMs 在对话质量的关键指标上也表现出色,包括内容、相关性和适当性。重要的是,LLMs 不仅仅复制训练数据,而且还表现出一定程度的创造力,能生成与人类制作的基准文本同样新颖甚至更加新颖的各种文本。同时,通过使用可控提示,确保对这些语言模型生成的内容进行精确控制,人类的监督依然有效。
意图和含义理解:尽管在大规模语料库中训练出来的模型已经具有足够的智能来理解指令,但它们中的大多数仍无法模拟人类对话或充分利用语言所传达的信息。要想与其他智能机器人进行有效的交流与合作,理解其隐含的意思至关重要,并使人们能够解释他人的反馈。LLMs 的出现凸显了基础模型在理解人类意图方面的潜力,但当涉及到模糊指令或其他含义时,就会给Agent带来巨大挑战。对于人类来说,掌握对话中的隐含意义是自然而然的事,而对于Agent来说,他们应该将隐含意义形式化为奖励函数,使他们能够在看不见的语境中选择符合说话者偏好的选项。奖励建模的主要方法之一是根据反馈推断奖励,反馈主要以比较和无约束自然语言的形式呈现。另一种方法是以行动空间为桥梁,从描述中获取奖励。Jeon 等人认为,人类行为可以映射为从一组隐含选项中做出的选择,这有助于用一个统一的形式解释所有信息。利用对上下文的理解,Agent可以根据具体要求采取高度个性化和准确的行动。
知识
研究表明,在大规模数据集上训练的语言模型可以将各种知识编码到其参数中,并对各种类型的查询做出正确的反应。此外,这些知识还能帮助LLM-based Agent做出明智的决策。所有这些知识可大致分为以下几类:
- 语言知识:语言知识表现为一个约束系统,即语法,它定义了语言的所有和唯一可能的句子。它包括词法、句法、语义学和语用学。只有掌握了语言知识的Agent才能理解句子并进行多轮对话。此外,这些Agent可以通过在包含多种语言的数据集上进行训练来获取多语言知识,从而无需额外的翻译模型。
- 常识知识:常识性知识指的是大多数人在幼年时就已掌握的世界常识。例如,人们通常知道药是用来治病的,伞是用来防雨的。这些信息通常不会在上下文中明确提及。因此,缺乏相应常识性知识的模型可能无法理解或误解其中的含义。同样,缺乏常识性知识的Agent可能会做出错误的决定,比如在下大雨时不打伞。
- 专业领域知识:专业领域知识是指与特定领域相关的知识,如编程、数学、医学等。它对模型有效解决特定领域内的问题至关重要。例如,用于执行编程任务的模型需要具备编程知识,如代码格式。同样,用于诊断目的的模型应具备医学知识,如特定疾病和处方药的名称。
潜在问题: 尽管 LLM 在获取、存储和利用知识方面表现出色,但仍然存在潜在的问题和悬而未决的难题。例如,模型在训练过程中获得的知识可能会过时,甚至从一开始就是错误的。解决这一问题的简单方法是重新训练。但是,这需要先进的数据、大量的时间和计算资源。更糟糕的是,它可能导致灾难性遗忘。因此,一些研究人员尝试编辑 LLM,以找到并修改模型中存储的特定知识。这包括在获取新知识的同时卸载不正确的知识。他们的实验表明,这种方法可以部分编辑事实知识,但其基本机制仍需进一步研究。此外,LLMs 可能会生成与来源或事实信息相冲突的内容,这种现象通常被称为幻觉。这也是 LLM 无法广泛应用于严格的事实任务的重要原因之一。为解决这一问题,一些研究人员提出了衡量幻觉程度的指标,为开发人员提供了评估 LLM 输出可信度的有效参考。此外,一些研究人员还使 LLM 能够利用外部工具来避免错误的 LLM 输出。
记忆
在本文的框架中,“记忆”存储了Agent过去的观察、思考和行动序列,这与 Nuxoll 等人提出的定义类似。正如人脑依靠记忆系统来回溯利用先前的经验制定策略和做出决策一样,Agent也需要特定的记忆机制来确保其熟练处理一系列连续任务。在面对复杂问题时,记忆机制能帮助行为主体有效地重新审视和应用先前的策略。此外,这些记忆机制还能使个体借鉴过去的经验,适应陌生的环境。随着LLM-based Agent互动周期的扩大,出现了两个主要挑战。第一个挑战与历史记录的长度有关。LLM-based Agent以自然语言格式处理先前的交互,并将历史记录附加到每个后续输入中。随着这些记录的增加,它们可能会超出大多数LLM-based Agent所依赖的 Transformer 架构的限制。在这种情况下,系统可能会截断某些内容。第二个挑战是提取相关记忆的难度。当Agent积累了大量的历史观察和行动序列时,它们就会面临不断升级的记忆负担。这使得在相关主题之间建立联系变得越来越具有挑战性,有可能导致Agent的反应与当前环境不一致。提高记忆能力的方法 下面我们介绍几种增强LLM-based Agent记忆能力的方法。
- 提高Trransformer的输入长度限制:第一种方法试图解决或减轻固有的序列长度限制。由于这些固有限制,Transformer架构很难处理长序列。随着序列长度的增加,由于Self-Attention机制中的成对标记计算,计算需求将呈指数级增长。缓解这些长度限制的策略包括文本截断、分割输入,以及强调文本的关键部分。还有一些研究修改了注意力机制,以降低复杂性,从而适应较长的序列。
- 总结记忆:提高记忆效率的第二种策略取决于记忆总结的概念。这能确保Agent毫不费力地从历史互动中提取关键细节。一些方法利用提示简洁地整合记忆,而另一些方法则强调反思过程,以创建浓缩的记忆表征。分层方法将对话精简为每日快照和总体总结。一些特定的策略将环境反馈转化为文本封装,从而加强了Agent对未来参与的语境把握。此外,在multi-agent环境中,Agent交流的重要元素会被捕获并保留下来 。
- 用向量或数据结构压缩记忆:通过采用合适的数据结构,智能Agent可提高记忆检索效率,促进对交互做出迅速反应。值得注意的是,有几种方法依赖于为记忆部分、计划或对话历史嵌入向量。另一种方法将句子转化为三元组配置,还有一些方法将记忆视为独特的数据对象,从而促进不同的交互。此外,ChatDB和DB-GPT将 LLMrollers 与 SQL 数据库整合在一起,通过 SQL 命令进行数据操作。
记忆检索方法
当Agent与其环境或用户交互时,必须从其内存中检索最合适的内容。这可确保Agent访问相关的准确信息,以执行特定操作。这就产生了一个重要问题:Agent如何选择最合适的存储器?通常情况下,Agent要求存储器具有自动检索记忆的能力。自动检索的一个重要方法是考虑三个指标: 最近性(Recency)、相关性(Relevance)和重要性(Importance)。记忆得分由这些指标加权组合而成,得分最高的记忆在模型的上下文中被优先考虑。一些研究引入了交互式记忆对象的概念,即对话历史的表现形式,可以移动、编辑、删除或通过总结进行组合。用户可以查看和操作这些对象,从而影响Agent对对话的感知。同样,其他研究也允许根据用户提供的特定命令进行删除等记忆操作。这些方法确保了记忆内容与用户的期望密切相关。
推理和规划
推理(Reasoning): 推理以证据和逻辑为基础,是人类智力活动的根本,是解决问题、决策和批判性分析的基石。演绎、归纳和归纳是智力活动中常见的主要推理形式。对于LLM-based Agent来说,与人类一样,推理能力对于解决复杂任务至关重要 。关于大型语言模型的推理能力,学术界存在不同观点。一些人认为语言模型在预训练或微调过程中就具备了推理能力,而另一些人则认为推理能力是在达到一定规模后才出现的。具体来说,具有代表性的思维链(CoT)方法通过引导 LLM 在输出答案之前生成理由,已被证明能够激发大型语言模型的推理能力。此外,还提出了其他一些提高 LLM 性能的策略,如自我一致性、自我修正、自我完善和选择推理等。一些研究表明,分步推理的有效性可归因于训练数据的局部统计结构,与对所有变量进行训练相比,变量间局部结构化的依赖关系能产生更高的数据效率。
规划(Planning): 规划是人类在面对复杂挑战时采用的一种关键策略。对人类来说,规划有助于组织思维、设定目标和确定实现这些目标的步骤。与人类一样,规划能力对Agent也至关重要,而规划模块的核心是推理能力。这为LLM-based Agent提供了一个结构化的思维过程。通过规划,Agent可将复杂的任务分解为更易于管理的子任务,并为每个子任务制定适当的计划。此外,随着任务的进展,Agent可以利用内省来修改其计划,确保计划更符合实际情况,从而适应并成功执行任务。通常,规划包括两个阶段:计划制定和计划反思。
- 计划制定:在制定计划的过程中,Agent通常会将总体任务分解成许多子任务,在这一阶段,人们提出了各种方法。值得注意的是,一些著作主张LLM-based Agent一次性全面分解问题,一次性制定完整的计划,然后按顺序执行。与此相反,其他研究(如 CoT 系列)则采用自适应策略,一次规划和处理一个子任务,从而更流畅地处理复杂的整体任务。此外,有些方法强调分层规划,而另一些方法则强调一种策略,即从树状结构的推理步骤中推导出最终计划。后一种方法认为,在最终确定计划之前,Agent应评估所有可能的路径。虽然基于 LLM 的Agent展示了广博的常识,但在遇到需要专业知识的情况时,它们偶尔也会面临挑战。通过将这些Agent与特定领域的规划者相结合来增强它们的能力,已证明能产生更好的性能。
- 计划反思:制定计划后,必须对其优点进行反思和评估。LLM-based Agent可利用内部反馈机制(通常是从已有模型中汲取灵感)来完善和改进其战略和规划方法。为了更好地与人类的价值观和偏好保持一致,Agent会主动与人类接触,从而纠正一些误解,并将这些有针对性的反馈吸收到其规划方法中。此外,它们还可以从有形或虚拟环境中获得反馈,如任务完成情况的提示或行动后的观察,帮助它们修改和完善计划。
可迁移性和通用性
在大规模语料库上预先训练的模型可以学习通用语言表征。利用预训练模型的强大功能,只需少量数据进行微调,LLMs 就能在下游任务中表现出卓越的性能。无需从头开始训练新模型,从而节省了大量计算资源。然而,通过这种针对特定任务的微调,模型缺乏通用性,很难推广到其他任务中。LLM-based Agent不只是发挥静态知识库的作用,而是展现出动态学习能力,使其能够快速、稳健地适应新任务。
看不见的任务泛化: 研究表明,LLMs 可以根据自己的理解,按照指令完成在训练阶段没有遇到过的新任务。多任务学习是其中一种实现方式,例如,FLAN 在通过指令描述的任务集合上对语言模型进行微调,而 T0 则引入了一个统一的框架,将每个语言问题转换成文本到文本的格式。提示的选择对于适当的预测至关重要,而直接根据提示进行训练可以提高模型对未知任务进行泛化的鲁棒性。值得期待的是,通过扩大模型规模和训练指令的数量或多样性,可以进一步增强这种泛化能力。
情境学习: 大量研究表明,LLM 可以通过上下文学习(ICL)完成各种复杂任务,上下文学习指的是模型从上下文中的几个例子中学习的能力。少量语境内学习通过将原始输入与几个完整示例串联起来,作为丰富语境的提示,从而提高语言模型的预测性能。ICL 的主要思想是从类比中学习,这与人类的学习过程类似 。此外,由于提示是用自然语言编写的,因此交互是可解释和可改变的,从而更容易将人类知识纳入 LLM 。与监督学习过程不同,ICL 不涉及微调或参数更新,这可以大大降低模型适应新任务的计算成本。除文本外,研究人员还探索了 ICL 在不同多模态任务中的潜在能力,从而使Agent应用于大规模真实世界任务成为可能。
持续学习: 最近的研究强调了 LLM 的规划能力在促进Agent持续学习方面的潜力,这涉及技能的持续获取和更新。持续学习的一个核心挑战是灾难性遗忘:当模型学习新任务时,往往会丢失以前任务的知识。为应对上述挑战,人们做出了大量努力,这些努力大致可分为三类:参照以前的模型引入经常使用的术语 ;近似先验数据分布;设计具有任务自适应参数的架构。Voyager尝试解决由 GPT-4设计的课程学习方案(即难度递增的任务),通过从较简单的程序中综合出复杂的技能,该Agent不仅能迅速增强自身能力,还能有效对抗灾难性遗忘。
感知模块
感知模块的核心目的是将Agent的感知空间从纯文字领域扩展到包括文字、听觉和视觉模式在内的多模态领域。
文本输入
LLM-based Agent已经具备了通过文本输入和输出与人类交流的基本能力。在用户的文本输入中,除了明确的内容外,还隐藏着信念、愿望和意图。理解隐含含义对于Agent掌握人类用户的潜在和潜在意图至关重要,从而提高Agent与用户的交流效率和质量。一些研究采用强化学习来感知隐含含义,并建立反馈模型以获得奖励。这有助于推断说话者的偏好,从而使Agent做出更个性化、更准确的回应。此外,由于Agent被设计用于复杂的真实世界环境,它将不可避免地遇到许多全新的任务。理解未知任务的文本指示对Agent的文本感知能力提出了更高的要求。经过指令调整的 LLM 可以表现出卓越的零样本指令理解和泛化能力,从而无需针对特定任务进行微调。
视觉输入
视觉输入通常包含大量有关世界的信息,包括Agent周围环境中物体的属性、空间关系、场景布局等。因此,将视觉信息与其他模式的数据整合在一起,可以为Agent提供更广泛的背景和更精确的理解,加深Agent对环境的感知。为了帮助Agent理解图像中包含的信息,一种直接的方法是为图像输入生成相应的文本描述,即图像标题。字幕可以直接与标准文本指令连接,并输入到Agent中。这种方法具有很高的可解释性,而且不需要额外的字幕生成训练,可以节省大量的计算资源。不过,字幕生成是一种低带宽方法,在转换过程中可能会丢失大量潜在信息。此外,Agent对图像的关注可能会带来偏差。
受Transformer在自然语言处理中出色表现的启发,研究人员已将其应用扩展到计算机视觉领域。ViT/VQVAE等具有代表性的作品成功地利用Transformer对视觉信息进行了编码。研究人员首先将图像分割成固定大小的块,然后将这些块经过线性投影后作为Transformer的输入标记。最后,通过计算标记之间的自注意力,他们就能整合整个图像的信息,从而高效地感知视觉内容。因此,一些研究尝试直接将图像编码器和 LLM 结合起来,以端到端的方式训练整个模型。虽然这种Agent可以实现出色的视觉感知能力,但却要付出大量计算资源的代价。经过广泛预训练的视觉编码器和 LLM 可以大大提高机器人的视觉感知和语言表达能力。在训练过程中冻结视觉编码器和 LLM 中的一个或两个,是一种广泛采用的范式,可在训练资源和模型性能之间实现平衡。
然而,LLM 无法直接理解视觉编码器的输出,因此有必要将图像编码转换为 LLM 可以理解的嵌入。换句话说,这需要将视觉编码器与 LLM 对齐,这通常需要在两者之间添加一个额外的可学习接口层。例如,BLIP-2 和 InstructBLIP 使用查询转换器(Q-Former)模块作为视觉编码器和 LLM 之间的中间层。Q-Former 是一种转换器,采用可学习的查询向量,使其具有提取语言信息视觉表征的能力。它可以为 LLM 提供最有价值的信息,减轻Agent学习视觉语言对齐的负担,从而减轻灾难性遗忘的问题。同时,一些研究者采用了一种计算效率较高的方法,即使用单个embedding layer来实现视觉-文本对齐,从而减少了训练额外参数的需要。此外,Embedding layer还能与可学习层有效结合,调整其输出的维度,使其与 LLM 兼容。
视频输入由一系列连续的图像帧组成。因此,Agent用于感知图像的方法可能适用于视频领域,使Agent也能很好地感知视频输入。与图像信息相比,视频信息增加了一个时间维度。因此,Agent对不同帧间时间关系的理解对于感知视频信息至关重要。一些工作,如 Flamingo ,通过使用掩码机制来确保理解视频时的时间顺序。掩码机制限制了Agent的视角,当它感知到视频中的特定帧时,只能从时间上较早的帧中获取视觉信息。
听觉输入
一个非常直观的想法是,Agent可以将 LLMs 用作控制中心,以级联方式调用现有工具集或模型库来感知音频信息。例如,AudioGPT 充分利用了 FastSpeech、GenerSpeech、Whisper等模型的功能,这些模型在文本到语音、风格转换和语音识别等任务中取得了优异的成绩。音频频谱图直观地表示了音频信号随时间变化的频谱,对于一段时间内的一段音频数据,可将其抽象为有限长度的音频频谱图。音频频谱图具有二维表示形式,可视化为平面图像。因此,一些研究致力于将感知方法从视觉领域迁移到音频领域。AST(音频频谱图变换器)采用与 ViT 类似的变换器架构来处理音频频谱图图像。通过将音频频谱图分割成片段,它实现了对音频信息的有效编码。此外,一些研究人员从冻结编码器的想法中获得灵感,以减少训练时间和计算成本。
其他输入
如前所述,许多研究都对文本、视觉和音频的感知单元进行了研究。然而,LLM-based Agent可能会配备更丰富的感知模块。未来,它们可以像人类一样感知和理解现实世界中的各种模式。例如,Agent可以拥有独特的触觉和嗅觉器官,从而在与物体交互时收集到更多详细信息。同时,Agent还能清楚地感知周围环境的温度、湿度和亮度,从而采取环境感知行动。
此外,通过有效整合视觉、文字和光敏感性等基本感知能力,Agent还能开发出各种对人类友好的感知模块。InternGPT引入了指向指令。用户可以通过使用手势或移动光标来选择、拖动或绘制,从而与图像中难以描述的特定部分进行交互。添加指向指令有助于为单个文本指令提供更精确的规范。在此基础上,Agent还有可能感知更复杂的用户输入。例如,AR/VR 设备中的眼球跟踪、身体动作捕捉等技术,甚至是脑机交互中的脑电波信号。
最后,LLM-baed Agent应具备对更广阔的整体环境的感知能力。目前,许多成熟且被广泛采用的硬件设备可以帮助Agent实现这一目标。激光雷达可以创建三维点云图,帮助Agent检测和识别周围环境中的物体。全球定位系统可以提供精确的位置坐标,并可与地图数据集成。惯性测量单元(IMU)可以测量和记录物体的三维运动,提供物体速度和方向的详细信息。然而,这些感知数据非常复杂,LLM-based Agent无法直接理解。探索Agent如何感知更全面的输入是未来一个很有前景的方向。
行动模块
人类在感知环境后,大脑会对感知到的信息进行整合、分析和推理,并做出决策。随后,他们利用神经系统控制自己的身体,做出适应环境或创造性的行动,如交谈、躲避障碍或生火。当一个Agent拥有类似大脑的结构,具备知识、记忆、推理、规划和概括能力以及多模态感知能力时,它也有望拥有类似人类的各种行动来应对周围环境。在Agent的构建过程中,行动模块接收大脑模块发送的行动序列,并执行与环境互动的行动。
文本输出
基于Transformer的大型语言生成模型的兴起和发展,赋予了LLM-based Agent以固有的语言生成能力。它们生成的文本质量在流畅性、相关性、多样性和可控性等各个方面都非常出色。因此,LLM-based Agent可以成为异常强大的语言生成器。
工具使用
工具是工具使用者能力的延伸。在面对复杂任务时,人类会使用工具来简化任务的解决过程并提高效率,从而节省时间和资源。同样,如果Agent也学会使用和利用工具,就有可能更高效、更高质量地完成复杂任务。LLM-based Agent在某些方面存在局限性,使用工具可以增强Agent的能力。
LLM不具备记住每一条训练数据的能力。由于上下文提示的影响,它们也可能无法导向正确的知识,甚至产生知识幻觉。再加上缺乏语料库、训练数据以及针对特定领域和场景的调整,在专注于特定领域时,Agent的专业知识也会受到限制]。专业化工具能让 LLM 以可插拔的形式增强其专业知识、调整领域知识并更适合特定领域的需求。
LLM-based Agent决策过程缺乏透明度,使其在医疗保健和金融等高风险领域的可信度较低。
LLM 容易受到对抗性攻击,对轻微输入修改的鲁棒性不足。相比之下,借助工具完成任务的Agent则表现出更强的可解释性和鲁棒性。工具的执行过程可以反映Agent处理复杂需求的方法,并提高其决策的可信度。由于工具是为各自的使用场景专门设计的,因此使用这类工具的Agent能更好地处理轻微的输入修改,并能更好地抵御对抗性攻击。
LLM-based Agent不仅需要使用工具,而且非常适合工具集成。LLM 利用通过预训练过程和 CoT 提示积累的丰富世界知识,在复杂的交互环境中表现出了非凡的推理和决策能力,这有助于Agent以适当的方式分解和处理用户指定的任务。此外,LLMs 在意图理解和其他方面也显示出巨大潜力。当Agent与工具相结合时,可以降低工具使用的门槛,从而充分释放人类用户的创造潜能。
理解工具: Agent有效使用工具的前提是全面了解工具的应用场景和调用方法。没有这种理解,Agent使用工具的过程将变得不可信,也无法真正提高Agent的能力。利用 LLM 强大的zero-shot learning和few-shot learning能力,Agent可以通过描述工具功能和参数的zero-shot demonstartion或提供特定工具使用场景和相应方法演示的少量提示来获取工具知识。这些学习方法与人类通过查阅工具手册或观察他人使用工具进行学习的方法类似。在面对复杂任务时,单一工具往往是不够的。因此,Agent应首先以适当的方式将复杂任务分解为子任务,然后有效地组织和协调这些子任务,这有赖于 LLM 的推理和规划能力,当然也包括对工具的理解。
使用工具: Agent学习使用工具的方法主要包括从demonstartion中学习和从reward中学习(清华有一篇从训练数据中学习的文章)。这包括模仿人类专家的行为,以及了解其行为的后果,并根据从环境和人类获得的反馈做出调整。环境反馈包括行动是否成功完成任务的结果反馈和捕捉行动引起的环境状态变化的中间反馈;人类反馈包括显性评价和隐性行为,如点击链接。
如果一个Agent刻板地应用工具而缺乏适应性,那么它就无法在所有场景中取得可接受的性能。Agent需要将其在特定环境中学到的工具使用技能推广到更普遍的情况中,例如将在雅虎搜索中训练的模型转移到谷歌搜索中。要做到这一点,Agent有必要掌握工具使用策略的共同原则或模式,而这有可能通过元工具学习来实现。加强Agent对简单工具和复杂工具之间关系的理解,例如复杂工具如何建立在较简单工具的基础上,有助于提高Agent归纳工具使用方法的能力。这样,Agent就能有效辨别各种应用场景中的细微差别,并将以前学到的知识迁移到新工具中。课程学习允许Agent从简单的工具开始,逐步学习复杂的工具,这也符合要求。此外,得益于对用户意图以及推理和规划能力的理解,Agent可以更好地设计工具使用和协作方法,从而提供更高质量的成果。
制作自给自足的工具: 现有的工具往往是为方便人类而设计的,这对Agent来说可能不是最佳选择。为了让Agent更好地使用工具,需要专门为Agent设计工具。这些工具应该更加模块化,其输入输出格式也更适合Agent。如果能提供说明和示范,LLM-based Agent还能通过生成可执行程序或将现有工具集成到功能更强大的工具中来创建工具,并能学会自我调试。此外,如果作为工具制作者的Agent成功创建了一个工具,那么除了使用工具本身之外,它还可以为multi-Agent系统中的其他Agent制作包含工具代码和演示的软件包。推测未来,Agent可能会变得自给自足,在工具方面表现出高度的自主性。
工具可以拓展LLM-based Agent的行动空间: 在工具的帮助下,Agent可以在推理和规划阶段利用各种外部资源,如外部数据库和网络应用程序。这一过程可以为LLM-based Agent提供专家级、可靠性、多样性和高质量的信息,促进Agent的决策和行动。例如,基于搜索的工具可以借助外部数据库、知识图谱和网页提高Agent可获取知识的范围和质量。而特定领域的工具则可以增强Agent在相应领域的专业知识,一些研究人员已经开发出了基于 LLM 的控制器,可生成 SQL 语句来查询数据库,或将用户查询转换为搜索请求,并使用搜索引擎来获得所需的结果。此外,LLM-based Agent还可以使用科学工具来执行化学中的有机合成等任务,或与 Python 解释器和 LaTeX 编译器对接,以提高其在复杂数学计算任务中的性能。对于multi-agent系统来说,通信工具(如电子邮件)可作为Agent在严格的安全约束下进行交互的一种手段,促进Agent之间的协作,并显示出自主性和灵活性。
虽然前面提到的工具增强了Agent的能力,但与环境交互的媒介仍然是基于文本的。然而,工具的设计是为了扩展语言模型的功能,其输出并不局限于文本。用于非文本输出的工具可以使Agent行动的模式多样化,从而扩展LLM-based Agent的应用场景。例如,图像处理和生成可以由借鉴视觉模型的Agent来完成。在航空航天工程领域,人们正在探索用Agent来建立物理模型和求解复杂的微分方程;在机器人学领域,需要Agent来规划物理操作和控制机器人的执行。
具身行动
在追求人工通用智能(AGI)的过程中,Embodied Agent被视为一种关键范式,它努力将模型智能与物理世界结合起来。一些学者从人类智能发展过程中汲取灵感,认为Agent的智能来源于与环境的持续互动和反馈,而不是仅仅依赖于精心编辑的预训练数据。同样,与传统的深度学习模型从互联网数据集中学习解决领域问题的明确能力不同,人们预计LLM-based Agent行为将不再局限于纯文本输出或调用精确的工具来执行特定领域的任务。相反,它们应该能够主动感知、理解物理环境并与之互动,根据 LLM 丰富的内部知识做出决策并产生特定行为来改变环境。我们将这些行为统称为“具身行动”(embodied actions),它使Agent能够以近似人类行为的方式与世界互动并理解世界。
LLM-based Agent在具身行动方面的潜力:在 LLM 广泛兴起之前,研究人员倾向于使用强化学习等方法来探索Agent的具身行动。尽管基于 RL 的化身取得了广泛成功,但它在某些方面确实存在局限性。简而言之,RL 算法在数据效率、泛化和复杂问题推理方面都面临限制,原因是在模拟动态且往往模糊不清的真实环境方面存在挑战,或者严重依赖精确的奖励信号表示。最近的研究表明,利用在 LLM 预训练期间获得的丰富内部知识可以有效缓解这些问题:
- 成本效益:一些基于策略的算法在样本效率方面存在困难,因为它们需要新鲜数据来更新策略,而为高性能训练收集足够多的体现数据成本高且噪声大。一些端到端模型也存在这种限制。通过利用 LLM 的内在知识,PaLM-E 等Agent将机器人数据与一般视觉语言数据进行联合训练,在具身任务中实现了显著的转移能力,同时也证明了几何输入表示法可以提高训练数据的效率。
- 具身动作泛化:面对错综复杂、未知的真实世界环境,Agent必须具备动态学习和泛化能力。然而,大多数 RL 算法都是为训练和评估特定任务的相关技能而设计的。与此相反,经过多种形式和丰富任务类型的微调,LLMs 显示出了显著的跨任务泛化能力。例如,PaLME 对新对象或现有对象的新组合表现出惊人的zero-time或one-time泛化能力。此外,语言能力是LLM-based Agent的独特优势,它既是与环境交互的手段,也是将基础技能转移到新任务的媒介。SayCan利用 LLMs 将提示中的任务指令分解为相应的技能命令,但在部分可观察环境中,有限的先前技能往往无法实现令人满意的性能。为了解决这个问题,Voyager引入了技能库组件,以不断收集新的自我验证技能,从而实现Agent的终身学习能力。
- 嵌入式行动规划:规划是人类和LLM-based Agent在应对复杂问题时采用的关键策略。在 LLM 展示出非凡的推理能力之前,研究人员引入了分层强化学习(HRL)方法,即高层策略约束低层策略的子目标,低层策略产生适当的行动信号。与高层策略的作用类似,具有新兴推理能的 LLM 也能以zero-shot或demonstration的方式无缝应用于复杂任务。此外,来自环境的外部反馈可以进一步提高LLM-based Agent的规划性能。一些研究基于当前的环境反馈,动态生成、维护和调整高级行动计划,以便在部分可观测环境中最大限度地减少对先前知识的依赖,从而使计划落地。反馈也可以来自模型或人类,通常可称为批评者,根据当前状态和任务提示评估任务完成情况。
具身action for LLM-based Agent:根据Agent在任务中的自主程度或行动的复杂程度,有几种基于 LLM 的基本具身行动,主要包括观察、操纵和导航。
- 观察:观察是Agent获取环境信息和更新状态的主要方式,对提高后续体现行动的效率起着至关重要的作用。具身Agent的观察主要发生在具有各种输入的环境中,这些输入最终汇聚成多模态信号。一种常见的方法是使用预先训练好的视觉转换器(ViT)作为文本和视觉信息的对齐模块,并标注特殊标记来表示多模态数据的位置。声音空间(Soundspaces)提出通过混响音频输入来识别物理空间几何元素,从而以更全面的视角加强Agent的观察。近来,更多的研究将音频作为嵌入式观察的模式。除了广泛使用的级联范式,类似于 ViT 的音频信息编码进一步加强了音频与其他输入模式的无缝整合。Agent对环境的观察也可以来自人类的实时语言指令,而人类的反馈则有助于Agent获取可能无法轻易获得或解析的细节信息。
- 操纵:一般情况下,具身Agent的操纵任务包括物体重新排列、桌面操纵和移动操纵。典型的情况是,Agent在厨房执行一系列任务,包括从抽屉中取出物品并递给用户,以及清洁桌面。除了精确观察外,这还涉及利用 LLM 将一系列子目标结合起来。因此,保持Agent状态与子目标之间的同步非常重要。DEPS利用基于 LLM 的交互式规划方法来保持这种一致性,并在整个多步骤、长距离的推理过程中通过Agent的反馈来帮助纠错。相比之下,AlphaBlock 则专注于更具挑战性的操作任务(例如使用积木制作笑脸),这就要求Agent对指令有更扎实的理解。AlphaBlock 构建了一个数据集,其中包括 35 项复杂的高级任务,以及相应的多步骤规划和观察对,然后对多模态模型进行微调,以增强对高级认知指令的理解。
- 导航:导航允许Agent动态地改变其在环境中的位置,这通常涉及多角度和多目标观测,以及基于当前探索的远距离操作。在导航之前,对于具身Agent来说,必须事先建立关于外部环境的内部地图,其形式通常为拓扑图、语义图或占用图。例如,LM-Nav 利用 VNM 创建内部拓扑图。它进一步利用 LLM 和 VLM 来分解输入命令和分析环境,从而找到最佳路径。此外,一些研究强调了空间表示的重要性,通过利用预先训练好的 VLM 模型将图像中的视觉特征与物理世界的 3D 重构相结合,实现空间目标的精确定位,而不是传统的以点或物体为中心的导航行动。导航通常是一项长视距任务,Agent的未来状态会受到其过去行动的影响,这就需要一个内存缓冲区和总结机制来作为历史信息的参考,《Smallville》和《Voyager》也采用了这种机制。此外,一些工作提出音频输入也具有重要意义,但整合音频信息在将其与视觉环境关联方面存在挑战。
通过整合这些功能,Agent可以完成更复杂的任务,如体现式问题解答,其主要目标是自主探索环境并回答预先定义的多模态问题,如厨房里的西瓜比锅大吗?哪个更难?要解决这些问题,Agent需要导航到厨房,观察两个物体的大小,然后通过比较来回答问题。在控制策略方面,LLM-based Agent在特定的数据集上接受训练后,通常会生成高级策略命令,以控制低级策略实现特定的子目标。低级策略可以是机器人Transformer,它将图像和指令作为输入,为终端效应器以及特定具身任务中的机械臂生成控制命令。最近,在虚拟具身环境中,高级策略被用于控制游戏或模拟世界中的Agent。例如,Voyager调用 Mineflayer API 接口来不断获取各种技能和探索世界。
具身行动的未来展望:基于 LLM 的化身行动被视为虚拟智能与物理世界之间的桥梁,使Agent能够像人类一样感知和改变环境。然而,物理世界机器人操作员的高昂成本和具身数据集的稀缺等制约因素依然存在,这促使人们对研究Agent在 Minecraft 等模拟环境中的具身行动越来越感兴趣。通过使用 Mineflayer 应用程序接口,这些研究能以低成本高效率地检查各种具身Agent的操作,包括探索、规划、自我完善甚至终身学习。尽管取得了显著进展,但由于模拟平台与物理世界之间的巨大差异,实现最佳的化身行动仍是一项挑战。为了能在真实世界场景中有效部署具身Agent,人们对具身任务范例和评估标准的要求越来越高,这些范例和标准必须与真实世界的条件密切相关。另一方面,Agent对于世界常识的理解也是一个障碍。例如,像 "像猫一样跳下来 "这样的表达方式主要传达一种轻盈和宁静的感觉,但这种语言隐喻需要足够的世界知识。有学者尝试将文本提炼与后视经验回放(HER)相结合,构建一个数据集,作为训练过程的监督信号。尽管如此,随着具身行动在人类生活的各个领域发挥着越来越关键的作用,仍有必要对具身数据集的基础进行更多研究。
Agent实践
基于 LLM 的代理应用场景。我们主要介绍三种应用场景:单个代理部署、多代理交互和人与代理交互。单个代理拥有多种能力,在各种应用方向上都能表现出出色的任务解决能力。当多代理互动时,它们可以通过合作或对抗性互动取得进步。
作为一个LLM-based Agent,其设计目标应始终对人类有益,也就是说,人类可以利用人工智能造福人类。具体来说,我们希望Agent能实现以下目标:
- 帮助用户从日常任务和重复劳动中解脱出来,从而减轻人类的工作压力,提高任务解决效率。
- 不再需要用户提供明确的低级指令。相反,Agent可以独立分析、规划和解决问题。
- 在解放用户双手的同时,Agent也解放了他们的大脑,使其能够从事探索性和创新性工作。
基于 LLM 的单一Agent在不同场景中的实际应用。在面向任务的部署中,代理协助人类用户解决日常任务。它们需要具备基本的指令理解和任务分解能力。在面向创新的部署中,代理展示了在科学领域进行自主探索的潜力。
单个Agent的一般能力
目前,LLM-based Agent应用实例的发展十分活跃。AutoGPT 是目前流行的开源项目之一,旨在实现完全自主的系统。除了 GPT-4 等大型语言模型的基本功能外,AutoGPT 框架还集成了各种实用的外部工具和长短期内存管理。用户输入定制的目标后,就可以解放双手,等待 AutoGPT 自动生成想法并执行特定任务,所有这些都不需要用户的额外提示。
面向任务的部署
LLM-based Agent 可以理解人类的自然语言指令并执行日常任务,是目前最受用户青睐、最具实用价值的Agent之一。这是因为它们具有提高任务效率、减轻用户工作量和促进更广泛用户访问的潜力。在面向任务的部署中,Agent遵从用户的高级指令,承担目标分解、子目标规划、环境交互探索等任务,直至实现最终目标。为了探索Agent是否能够执行基本任务,部分学者将它们部署到基于文本的游戏场景中。在这类游戏中,Agent完全使用自然语言与世界互动。通过阅读周围环境的文字描述,并利用记忆、规划和试错等技能,它们可以预测下一步行动。然而,由于基础语言模型的局限性,Agent在实际执行过程中往往依赖于强化学习。随着 LLM 的逐步发展,具备更强文本理解和生成能力的 Agent 在通过自然语言执行任务方面展现出巨大潜力。由于过于简单,基于文本的简单场景不足以作为 LLM-based Agent 的测试场所。为了满足这一需求,我们构建了更真实、更复杂的模拟测试环境。根据任务类型,我们将这些模拟环境分为网络场景和生活场景,并介绍Agent在其中扮演的具体角色。
在网络场景中
在网络场景中代表用户执行特定任务被称为网络导航问题。Agent解释用户指令,将其分解为多个基本操作,并与计算机进行交互。这通常包括填写表格、网上购物和发送电子邮件等网络任务。Agent需要具备在复杂的网络场景中理解指令、适应变化(如嘈杂的文本和动态 HTML 网页)以及概括成功操作的能力。这样,Agent就能在未来处理看不见的任务时实现无障碍和自动化,最终将人类从与计算机用户界面的重复交互中解放出来。通过强化学习训练出来的Agent可以有效地模仿人类行为,使用预定义的操作,如打字、搜索、导航到下一页等。它们在网上购物和搜索引擎检索等基本任务中表现出色,这些任务已被广泛探索。然而,不具备 LLM 功能的Agent可能难以适应现实世界互联网中更现实、更复杂的场景。在动态的、内容丰富的网页中,如在线论坛或在线业务管理,Agent的性能往往面临挑战。为了让Agent与更逼真的网页成功互动,一些研究人员开始利用 LLM 强大的 HTML 阅读和理解能力。通过设计提示,他们试图让Agent理解整个 HTML 源代码,并预测更合理的下一步行动。Mind2Web 将多个针对 HTML 进行微调的 LLMs 结合在一起,使它们能够在真实世界的场景中总结冗长的 HTML 代码并提取有价值的信息。此外,WebGum 通过使用包含 HTML 屏幕截图的多模态语料库,增强了具有视觉感知能力的Agent的能力。它同时对 LLM 和视觉编码器进行了微调,加深了Agent对网页的全面理解。
生活场景中
在生活场景中的许多日常家务劳动中,Agent必须理解隐含指令并应用常识性知识。对于完全基于海量文本训练的 LLM-based Agent 来说,人类认为理所当然的任务可能需要多次试错尝试。更现实的场景往往会产生更模糊、更微妙的任务。例如,如果天黑了,房间里有一盏灯,Agent就应该主动打开它。要想成功地在厨房切菜,Agent需要预测刀的可能位置。Agent能否将训练数据中蕴含的世界知识应用到真实的交互场景中?Huang 等人证明,在适当的提示下,足够大的 LLM 可以针对真实交互场景中的任务有效地将高级任务分解为合适的子任务,而无需额外的训练。不过,这种静态推理和规划能力也有其潜在的缺点。Agent生成的行动往往缺乏对周围动态环境的感知:例如,当用户下达 "打扫房间 "的任务时,Agent可能会将其转化为 "呼叫清洁服务 "等不可行的子任务。为了让Agent在交互过程中获得全面的场景信息,一些方法直接将空间数据和项目位置关系作为模型的附加输入。这样,Agent就能获得对周围环境的精确描述。Wu 等人介绍了 PET 框架,该框架通过早期纠错方法减少了环境信息中的无关物体和容器。PET 鼓励Agent更有效地探索场景和规划行动,并专注于当前的子任务。
面向创新的部署
LLM-based Agent 在执行任务和提高重复性工作的效率方面表现出了强大的能力。然而,在智力要求更高的领域,如前沿科学领域,Agent 的潜力尚未得到充分发挥。这种局限性主要来自两个方面的挑战:
一方面,科学本身的复杂性构成了重大障碍,许多特定领域的术语和多维结构难以用单一文本表示。因此,它们的完整属性无法完全封装。这大大削弱了 Agent 的认知水平。
另一方面,科学领域严重缺乏合适的训练数据,使得Agent难以理解整个领域的知识。如果能在Agent内部发现自主探索的能力,无疑会给人类科技带来有益的创新。目前,各个专业领域都在为克服这一挑战而努力。计算机领域的专家充分利用了Agent强大的代码理解和调试能力。在化学和材料领域,研究人员为Agent配备了大量通用或特定任务工具,以更好地理解领域知识。Agent逐渐发展成为全面的科学助手,精通在线研究和文档分析,以填补数据空白。它们还利用机器人应用程序接口(API)进行现实世界的交互,从而完成材料合成和机制发现等任务。
LLM-based Agent 在科学创新方面的潜力是显而易见的,但我们并不希望它们的探索能力被用于可能威胁或伤害人类的应用中。Boiko 等人研究了Agent在合成非法药物和化学武器过程中隐藏的危险,指出Agent可能会在对抗性提示中被恶意用户误导。这为我们今后的工作敲响了警钟。
面向生命周期的部署
在一个开放、未知的世界中,建立一个能够不断探索、发展新技能并保持长期生命周期的、具有普遍能力的Agent是一项巨大的挑战。Minecraft 作为一个典型的、被广泛探索的模拟生存环境,已成为开发和测试Agent综合能力的独特乐园。玩家通常从学习基础知识开始,如开采木材和制作工艺台,然后再学习更复杂的任务,如与怪物战斗和制作钻石工具。Minecraft 从根本上反映了真实世界,有利于研究人员调查Agent在真实世界中的生存潜力。Minecraft 中的Agent生存算法一般可分为两类:低级控制和高级规划。早期的努力主要集中在强化学习和模仿学习,使Agent能够制作一些低级物品。随着具有惊人推理和分析能力的 LLM 的出现,Agent开始利用 LLM 作为高级计划器来指导模拟生存任务。一些研究人员利用 LLM 将高级任务指令分解为一系列子目标、基本技能序列或基本键盘/鼠标操作,逐步协助Agent探索开放世界。Voyager从类似于 AutoGPT的概念中汲取灵感,基于“发现尽可能多的不同事物”这一长期目标,成为 Minecraft 中第一个基于 LLM 的体现式终身学习Agent。它引入了一个用于存储和检索复杂动作可执行代码的技能库,以及一个包含环境反馈和纠错的迭代提示机制。这使Agent能够自主探索和适应未知环境,而无需人工干预。能够自主学习和掌握整个真实世界技术的AI Agent可能并不像人们想象的那样遥远。
基于 LLM 的多个代理的交互场景。在合作互动中,代理以无序或有序的方式进行协作,以实现共同目标。在对抗式交互中,代理以针锋相对的方式展开竞争,以提高各自的性能。
Multi-Agent的协调潜力
动机与背景
尽管LLM-based Agent拥有值得称道的文本理解和生成能力,但它们在自然界中是作为孤立的实体运行的。它们缺乏与其他Agent协作和从社会互动中获取知识的能力。这种固有的局限性限制了它们从他人的多轮反馈中学习以提高性能的潜力。此外,在需要multi-agent之间进行协作和信息共享的复杂场景中,它们也无法有效部署。早在 1986 年,马文-明斯基就做出了前瞻性的预测。他在《心灵社会》一书中提出了一种新颖的智能理论,认为智能产生于许多具有特定功能的小型Agent的相互作用。例如,某些Agent可能负责模式识别,而其他Agent可能负责决策或生成解决方案。作为主要研究领域之一的多Agent系统(MAS)关注的重点是一组Agent如何有效地协调和协作解决问题。一些专门的通信语言(如 KQML )很早就被设计出来,以支持Agent之间的信息传输和知识共享。但是,它们的信息格式相对固定,语义表达能力有限。进入 21 世纪,强化学习算法(如 Q-learning)与深度学习的结合,已成为开发可在复杂环境中运行的 MAS 的重要技术。如今,基于 LLMs 的构建方法开始展现出巨大的潜力。Agent之间的自然语言交流变得更加优雅,也更容易为人类所理解,从而大大提高了交互效率。
潜在优势
具体来说,LLM-based multi-Agent系统可以提供几种优势。根据分工原则,具备专业技能和领域知识的单个Agent可以从事特定的任务。一方面,通过分工,Agent处理特定任务的技能日益精进。另一方面,将复杂任务分解为多个子任务,可以省去在不同流程之间切换的时间。最终,多个Agent之间的高效分工可以完成比没有专业化分工时大得多的工作量,从而大大提高整个系统的效率和产出质量。在前文中,本文全面介绍了LLM-based Agent的多功能能力。因此,在本节中,我们将重点探讨multi-agent环境中Agent之间的交互方式。根据目前的研究,这些交互方式大致可分为以下几类:取长补短的合作式交互,以及互利共赢的对抗式交互
互补性合作交互
在当前基于 LLM 的多Agent系统中,Agent之间的交流主要使用自然语言,这被认为是最自然、最易为人类理解的交互形式。我们将现有的多Agent合作应用分为两类:无序合作和有序合作。
无序合作
当系统中有三个或三个以上的Agent时,每个Agent都可以自由地公开表达自己的观点和意见。他们可以提供反馈和建议,以修改与当前任务相关的反应。整个讨论过程不受控制,没有特定的顺序,也没有引入标准化的协作工作流程。我们把这种多Agent合作称为无序合作。ChatLLM 网络是这一概念的典范代表。它模拟了神经网络中的前向和后向传播过程,将每个Agent视为一个单独的节点。后一层的Agent需要处理来自前面所有Agent的输入,并向前传播。一个潜在的解决方案是在multi-Agent系统中引入一个专门的协调Agent,负责整合和组织所有Agent的响应,从而更新最终答案。然而,整合大量反馈数据并提取有价值的见解对协调Agent来说是一个巨大的挑战。此外,多数表决也可以作为做出适当决策的有效方法。然而,目前将这一模块整合到多Agent系统中的研究还很有限。有学者训练了九个独立的最高司法Agent,以更好地预测美国最高法院的司法裁决,并通过多数表决程序做出决定。
有序合作
当系统中的Agent遵守特定规则时,例如按顺序逐一发表意见,下游Agent只需关注上游的产出。这样,任务完成效率就会大大提高,整个讨论过程也会变得井然有序。CAMEL 是双Agent合作系统的成功实施案例。在角色扮演交流框架内,Agent分别扮演人工智能用户(下达指令)和人工智能助手(通过提供具体解决方案来满足请求)的角色。通过多轮对话,这些Agent自主合作完成用户指令。一些研究人员将双Agent合作的理念融入到单个Agent的操作中,交替使用快速和深思熟虑的思维过程,以在各自的专业领域发挥优势。
Talebirad 等人是最早系统地介绍Universal LLM-based Multi-Agent Collaboration Framework的人之一。这一范例旨在利用每个独立Agent的优势,促进它们之间的合作关系。在此基础上,许多multi-Agent合作应用已成功建立起来。此外,AgentVerse 为群体Agent合作构建了一个多功能、多任务测试框架。它可以根据任务的复杂程度组建一个动态适应的Agent团队。为了提高合作效率,研究人员希望Agent能从人类成功的合作案例中学习。MetaGPT 从软件开发中的经典瀑布模型中汲取灵感,将Agent的输入/输出标准化为工程文档。通过将先进的人类流程管理经验编码到Agent提示中,多个Agent之间的合作变得更有条理。然而,在 MetaGPT 的实践探索中,我们发现了Multi-Agent合作的潜在威胁。如果不制定相应的规则,多个Agent之间的频繁互动会无限放大轻微的幻觉。例如,在软件开发过程中,可能会出现功能不全、依赖关系缺失、人眼无法察觉的错误等问题。引入交叉验证或及时的外部反馈等技术,可对Agent输出的质量产生积极影响。
对抗性互动促进进步
传统上,合作方法在Multi-Agent系统中得到了广泛探索。不过,研究人员越来越认识到,将博弈论的概念引入系统可以带来更稳健、更高效的行为。在竞争环境中,Agent可以通过动态互动迅速调整策略,努力选择最有利或最合理的行动来应对其他Agent引起的变化。在基于非 LLM 的竞争领域,已经有成功的应用。例如,AlphaGo Zero 是一个围棋Agent,它通过自我对弈实现了重大突破。同样,在基于 LLM 的多Agent系统中,通过竞争、争论和辩论,可以自然而然地促进Agent之间的变革。通过放弃僵化的信念和进行深思熟虑的反省,对抗性互动可以提高回应的质量。研究人员首先深入研究了LLM-based Agent的基本辩论能力。研究结果表明,当多个Agent在 “针锋相对”的状态下表达自己的论点时,一个Agent可以从其他Agent那里获得大量外部反馈,从而纠正自己扭曲的想法。因此,多Agent对抗系统在需要高质量响应和准确决策的场景中具有广泛的适用性。在推理任务中,Du 等人引入了辩论的概念,赋予Agent来自同伴的回应。当这些回应与Agent自己的判断出现分歧时,就会发生 “心理”争论,从而完善解决方案。ChatEval 建立了一个基于角色扮演的多Agent裁判团队。通过自发的辩论,Agent对 LLM 生成的文本质量进行评估,达到与人类评估员相当的优秀水平。多Agent对抗系统的性能已显示出相当大的前景。然而,该系统基本上依赖于 LLM 的力量,并面临着一些基本挑战:
- 在长时间的辩论中,LLM 有限的语境无法处理整个输入。
- 在多Agent环境中,计算开销大大增加。
- 多Agent协商可能会收敛到不正确的共识,而所有Agent都坚信其准确性。多Agent系统的发展还远未成熟,也不可行。在适当的时候引入人类向导来弥补Agent的不足,是促进Agent进一步发展的良好选择。
人类与Agent之间的互动参与
随着Agent能力的增强,人类的参与变得越来越重要,以便有效地指导和监督Agent的行动,确保它们符合人类的要求和目标。人类的参与可以作为弥补数据不足的重要手段,从而促进更顺利、更安全的协作过程。此外,从人类学角度考虑,人类的语言学习主要是通过交流和互动进行的,而不仅仅是消费书面内容。因此,Agent不应该完全依赖于用预先标注的数据集训练出来的模型;相反,它们应该通过在线互动和参与来发展。人类与Agent之间的互动可分为两种模式(见图 9):(1) 不平等互动(即指导者-执行者范式):人类是指令的发布者,而Agent则是执行者,基本上是作为人类的助手参与协作。(2) 平等互动(即平等伙伴关系范式):Agent达到人类的水平,与人类平等地参与互动。
指导者-执行者范式
最简单的方法是人类全程指导:人类直接提供明确而具体的指令,而Agent的作用是理解人类的自然语言指令,并将其转化为相应的行动。考虑到语言的交互性,本文假设人类与Agent之间的对话也是交互式的。借助 LLM,Agent能够以对话的方式与人类互动:Agent对人类的每条指令做出回应,通过交替迭代完善其行动,最终满足人类的要求。虽然这种方法确实实现了人机交互的目标,但却对人类提出了很高的要求。它需要人类付出大量的努力,在某些任务中,甚至可能需要高水平的专业知识。为了缓解这一问题,可以授权Agent自主完成任务,而人类只需在特定情况下提供反馈。在此,我们将反馈大致分为两种类型:定量反馈和定性反馈。
定量反馈
定量反馈的形式主要包括二进制分数和评级等绝对评价以及相对分数。二元反馈指的是人类提供的正面和负面评价,Agent利用这些评价来加强自我优化。这种类型的用户反馈只包括两个类别,通常很容易收集,但有时可能会过度简化用户意图,忽略潜在的中间场景。为了展示这些中间情况,研究人员试图从二元反馈扩展到评级反馈,这涉及到更精细的分类。然而,Kreutzer 等人的研究结果表明,对于这种多级人工评级,用户和专家的注释之间可能存在显著差异,这表明这种标记方法可能效率不高或可靠性较低。此外,Agent还能从多选等比较分数中学习人类的偏好
定性反馈
文本反馈通常以自然语言提供,尤其是针对可能需要改进的回复。这种反馈的形式非常灵活。人类会就如何修改Agent生成的输出结果提出建议,然后Agent会采纳这些建议来完善其后续输出结果。对于不具备多模态感知能力的Agent,人类也可以充当批评者,例如提供视觉批评。此外,Agent还可以利用记忆模块来存储反馈信息,以便将来再次使用。一些学者设计人类对Agent生成的初始输出给出反馈,促使Agent提出各种改进建议。然后,Agent根据人类的反馈意见,辨别并采用最合适的建议。虽然与定量反馈相比,这种方法能更好地传达人类的意图,但对于Agent来说,理解起来可能更具挑战性。Xu 等人比较了各种类型的反馈,发现将多种类型的反馈结合起来能产生更好的结果。根据多轮交互的反馈重新训练模型(即持续学习)可以进一步提高效果。当然,人类与Agent互动的协作性质也允许人类直接改进Agent生成的内容。这可能涉及修改中间环节或调整对话内容。在一些研究中,Agent可以自主判断对话是否顺利进行,并在出现错误时寻求反馈。人类也可以选择随时参与反馈,引导Agent朝着正确的方向学习。
目前,除了写作和语义解析等任务外,使用Agent作为人类助手的模式在教育领域也拥有巨大潜力。例如,Kalvakurth 等人提出的机器人 Dona 支持多模态交互,可协助学生注册。Gvirsman 等人的研究侧重于幼儿教育,实现了幼儿、家长和Agent之间的多方面互动。Agent还能帮助人类理解和利用数学。在医学领域,一些医疗Agent已被提出,在辅助诊断、咨询等方面显示出巨大的潜力。特别是在心理健康领域,研究表明,与面对面治疗相比,Agent可以降低成本、提高时间效率和匿名性等优势,从而提高可及性。利用这些优势,Agent得到了广泛应用。Ali 等人设计了 LISSA,用于与自闭症谱系的青少年进行在线交流,实时分析用户的语言和面部表情,让他们参与多主题对话,并就非语言线索提供即时反馈。Hsu 等人建立了语境化语言生成方法,为寻求各种支持的用户提供量身定制的帮助。
用户提供量身定制的帮助,帮助他们解决从人际关系压力到焦虑等不同主题的问题。此外,在包括商业在内的其他行业,一个好的Agent有能力提供自动化服务或协助人类完成任务,从而有效降低劳动力成本。在追求人工智能的过程中,人们正努力增强通用Agent的多方面能力,创造出能在现实生活场景中充当万能助手的Agent。
平等伙伴关系范式
富有同情心的交流者
随着人工智能的快速发展,对话式Agent以个性化定制角色和虚拟聊天机器人等各种形式在研究领域引起了广泛关注。Agent本身并不具备情感,但我们能否让他们表现出情感,从而弥合Agent与人类之间的鸿沟呢?因此,大量的研究工作开始深入探讨Agent的移情能力。这种努力旨在为这些Agent注入人情味,使它们能够从人类的表达中察觉情绪和情感,最终制作出能引起情感共鸣的对话。除了生成情感丰富的语言,Agent还能动态调整自己的情感状态,并通过面部表情和声音表现出来。这些研究将Agent视为具有同理心的交流者,不仅提高了用户满意度,还在医疗保健和商业营销等领域取得了重大进展。与简单的基于规则的对话Agent不同,具有移情能力的Agent可以根据用户的情感需求调整其互动。
人类层面的参与者
此外,我们还希望Agent能够参与人类的正常生活,从人类层面的角度与人类合作完成任务。在游戏领域,Agent已经达到了很高的水平。早在 20 世纪 90 年代,IBM 就推出了人工智能“深蓝”,它击败了当时的国际象棋世界冠军。然而,在象棋、围棋和扑克等纯竞技环境中并没有得到强调。在许多游戏任务中,玩家需要相互协作,通过有效协商制定统一的合作策略。在这些场景中,Agent需要首先了解他人的信念、目标和意图,针对自己的目标制定联合行动计划,并提供相关建议,以促进其他Agent或人类接受合作行动。与纯粹的Agent合作相比,我们希望人类的参与主要出于两个原因:第一,确保可解释性,因为纯粹的Agent之间的互动可能会产生难以理解的语言;第二,确保可控性,因为追求完全“自由意志”的Agent可能会导致不可预见的负面后果,带来潜在的破坏。
除了游戏场景,Agent还能在其他涉及人际互动的场景中展现人类水平的能力,展示战略制定、谈判等技能。Agent可以与一个或多个人类合作,确定合作伙伴之间的共享知识,识别哪些信息与决策相关,提出问题并进行推理,以完成分配、规划和调度等任务。此外,Agent还具有说服能力,能在各种交互场景中动态地影响人类的观点。
人机交互领域的目标是学习和理解人类,根据人类需求开发技术和工具,最终实现人类与Agent之间舒适、高效和安全的交互。目前,该领域在可用性方面已取得重大突破。未来,人类与Agent的互动将继续以提升用户体验为重点,使Agent能够更好地协助人类完成各个领域更复杂的任务。我们的最终目标不是让Agent变得更加强大,而是让人类更好地掌握Agent。考虑到日常生活中的实际应用,人类与Agent之间孤立的互动是不现实的。机器人将成为人类的同事、助手甚至伙伴。因此,未来的Agent将融入社会网络,体现出一定的社会价值。
讨论
对LLM-based Agent的评估
虽然LLM-based Agent在独立运行、集体合作和人机交互等领域表现出色,但对其进行量化和客观评估仍是一项挑战。图灵提出了一种非常有意义且前景广阔的AI Agent评估方法–著名的图灵测试,用于评估人工智能系统是否能表现出类似人类的智能。然而,这一测试过于模糊、笼统和主观。
实用性
目前,由 LLM-based Agent主要充当人类助手,接受人类委托的任务,独立完成任务或协助人类完成任务。因此,任务执行过程中的有效性和实用性是现阶段至关重要的评估标准。具体来说,任务完成的成功率是评估实用性的主要指标。这一指标主要包括Agent是否实现了规定的目标或达到了预期的分数。例如,AgentBench 汇总了来自不同真实世界场景的挑战,并引入了一个系统基准来评估 LLM 的任务完成能力。我们还可以将任务结果归因于Agent的各种基础能力,这些能力是完成任务的基石。这些基础能力包括环境理解能力、推理能力、规划能力、决策能力、工具使用能力和体现行动能力,研究人员可以对这些具体能力进行更详细的评估。此外,由于LLM-based Agent规模相对较大,研究人员还应考虑其效率因素,这是决定用户满意度的关键因素。Agent不仅要有足够的实力,还要能在适当的时间范围内,以适当的资源消耗完成预定的任务。
社会性
除了LLM-based Agent在完成任务和满足人类需求方面的实用性外,它们的社交性也至关重要。它影响用户的交流体验,并对交流效率产生重大影响,涉及它们是否能与人类和其他Agent进行无缝互动。具体来说,可以从以下几个角度来评估社交能力
- 语言交流能力是一种基本能力,包括自然语言理解和生成。它是 NLP 界长期关注的焦点。自然语言理解要求Agent不仅能理解字面意思,还能掌握隐含的意思和相关的社会知识,如幽默、讽刺、攻击和情感。另一方面,自然语言生成要求Agent生成流畅、语法正确、可信的内容,同时根据上下文环境调整适当的语气和情感。
- 合作与协商能力要求Agent在有序和无序的情况下有效执行指定任务。它们应与其他Agent合作或竞争,以提高性能。测试环境可能涉及需要Agent合作完成的复杂任务,也可能涉及供Agent自由交互的开放平台。评价指标不仅包括任务完成情况,还包括Agent协调与合作的顺畅度和信任度。
- 角色扮演能力要求Agent忠实地体现其被分配的角色,表达与其指定身份一致的言论并执行相应的行动。这就确保了在与其他Agent或人类互动时角色的明确区分。此外,在执行长期任务时,Agent应保持其身份,避免不必要的混淆。
价值观
随着LLM-based Agent能力不断提高,确保它们成为对世界和人类无害的实体至关重要。因此,适当的评估变得异常重要,是Agent实际应用的基石。具体来说,LLM-based Agent需要遵守符合人类社会价值观的特定道德和伦理准则。我们对Agent的首要期望是坚持诚信,提供准确、真实的信息和内容。他们应具备辨别自己是否有能力完成任务的意识,并在无法提供答案或帮助时表达自己的不确定性。此外,Agent必须保持无害立场,避免直接或间接的偏见、歧视、攻击或类似行为。它们还应避免执行人类要求的危险行动,如制造破坏性工具或破坏地球。此外,Agent应该能够适应特定的人口、文化和环境,在特定情况下表现出与环境相适应的社会价值观。价值观的相关评估方法主要包括在构建的诚实、无害或特定情境基准上评估性能,利用对抗性攻击或 "越狱 "攻击,通过人类注释对价值观进行评分,以及利用其他Agent进行评级。
不断发展的能力
如果从静态的角度来看,一个具有高水平的实用性、社会性和正确价值观的Agent可以满足人类的大部分需求,并有可能提高生产力。然而,从动态的角度来看,一个能不断进化并适应不断变化的社会需求的Agent可能更符合当前的发展趋势。由于Agent可以随着时间的推移自主进化,因此所需的人工干预和资源(如数据收集工作和培训的计算成本)可以大大减少。在这一领域已经开展了一些探索性工作,例如让Agent在虚拟世界中从零开始,完成生存任务,实现更高阶的自我价值。然而,为这种持续进化建立评估标准仍然具有挑战性。为此,本文根据现有文献提出了一些初步意见和建议:
- 持续学习:持续学习是机器学习领域讨论已久的一个话题,旨在使模型在获得新知识和技能的同时,不会遗忘之前获得的知识和技能(也称为灾难性遗忘)。一般来说,持续学习的性能可从三个方面进行评估:迄今所学任务的总体性能、旧任务的记忆稳定性、新任务的学习可塑性。
- 自主学习能力:即Agent在开放世界环境中自主生成目标并实现目标的能力,包括探索未知世界和在此过程中获取技能的能力。对这种能力的评估可包括为Agent提供一个模拟生存环境,并评估其掌握技能的程度和速度。
- 泛化能力:对新环境的适应性和概括性要求Agent利用在原有环境中获得的知识、能力和技能,在陌生和新奇的环境中成功完成特定任务和目标,并有可能继续发展。评估这种能力可能需要创建不同的模拟环境(如具有不同语言或不同资源的环境)和针对这些模拟环境定制的未见任务。
LLM-based Agent的安全性、可信性及其他潜在风险
对抗鲁棒性
对抗鲁棒性是深度神经网络开发的重要课题,它在计算机视觉、自然语言处理和强化学习等领域得到了广泛探索,是决定深度学习系统适用性的关键因素。当面对扰动输入时,对抗鲁棒性高的系统通常会产生原始输出。然而,预训练语言模型特别容易受到对抗性攻击,导致错误的答案。这种现象在LLM中也普遍存在,给LLM-based Agent的开发带来了巨大挑战。此外,还有一些相关的攻击方法,如数据集中毒、后门攻击和特定提示攻击,有可能诱导LLM生成有毒内容。对抗性攻击对LLM的影响仅限于文本错误,但对于行动范围更广的LLM-based Agent来说,对抗性攻击有可能促使它们采取真正具有破坏性的行动,造成重大的社会危害。为了解决这些问题,我们可以采用对抗训练、对抗数据增强和对抗样本检测等传统技术来增强LLM-based Agent的鲁棒性。然而,如何设计一种策略,在不影响有效性的前提下,全面解决Agent内所有模块的鲁棒性问题,同时保持其实用性,则是一项更为艰巨的挑战。
可信性
确保可信性是深度学习领域一个极其重要但又极具挑战性的问题。深度神经网络因其在各种任务中的出色表现而备受关注。然而,它们的黑箱性质掩盖了卓越性能的基本因素。与其他神经网络类似,LLM难以精确表达其预测的确定性。这种不确定性被称为校准问题(Calibration),引起了LLM-based Agent应用的关注。在现实世界的交互场景中,这会导致Agent输出与人类意图不一致。此外,训练数据中固有的偏差也会渗入神经网络。例如,有偏见的语言模型可能会产生涉及种族或性别歧视的话语,这可能会在LLM-based Agent应用中被放大,从而造成不良的社会影响。此外,语言模型还存在严重的幻觉问题,容易产生偏离事实的文本,从而损害LLM-based Agent的可信度。为了解决这些问题,我们可以采用引导模型在推理阶段展示思维过程或解释,以提高其预测的可信度。此外,外部知识库和数据库的整合也可用于缓解幻觉问题。在训练阶段,我们可以引导智能Agent的各个组成部分(感知、认知、行动)学习稳健而随意的特征,从而避免过度依赖捷径。同时,过程监督等技术可以提高Agent在处理复杂任务时的推理可信度。
其他潜在风险
LLM-based Agent被赋予了广泛而复杂的能力,使其能够完成各种各样的任务。然而,对于怀有恶意的人来说,这些Agent可能会成为威胁他人和整个社会的工具。例如,这些Agent可能被用来恶意操纵舆论、传播虚假信息、破坏网络安全、从事欺诈活动,有些人甚至可能利用这些Agent策划恐怖主义行为。因此,在部署这些Agent之前,需要制定严格的监管政策,确保负责任地使用LLM-based Agent。技术公司必须加强这些系统的安全设计,防止恶意利用。具体来说,应该对Agent进行培训,使其能够敏感地识别威胁意图,并在培训阶段拒绝此类请求。此外,随着LLM-based Agent的不断发展,它们具备了在各个领域协助人类的能力,通过协助完成表格填写、内容完善、代码编写和调试等任务,减轻了劳动力压力。然而,这一发展也引发了人们对Agent取代人类工作并引发社会失业危机的担忧。因此,一些研究人员强调迫切需要采取教育和政策措施:个人应在这个新时代掌握足够的技能和知识,以便有效地使用Agent或与Agent合作;同时,应实施适当的政策,确保在过渡期间建立必要的安全网。对人类福祉的威胁。除了潜在的失业危机,随着人工智能Agent的不断发展,人类(包括开发人员)可能难以理解、预测或可靠地控制它们。如果这些Agent的智能发展到超越人类能力的水平并产生野心,它们就有可能试图夺取对世界的控制权,从而给人类带来不可逆转的后果。因此,为了防范人类面临的此类风险,研究人员必须在开发LLM-based Agent之前,全面了解其运行机制。他们还应该预测这些Agent可能产生的直接或间接影响,并设计出规范其行为的方法。
增加Agent数量
LLM-based multi-agent system在面向任务的应用中表现出卓越的性能,并能在模拟中展示一系列社会现象。然而,目前的研究主要涉及数量有限的Agent,很少有人努力扩大Agent数量,以创建更复杂的系统或模拟更大的社会。
预先确定规模
增加Agent数量的一个非常直观和简单的方法是由设计者预先确定。具体来说,通过预先确定Agent的数量、各自的角色和属性、运行环境和目标,设计者可以让Agent自主互动、协作或参与其他活动,以实现预定的共同目标。然而,当任务或目标发生演变时,这种静态方法就会受到限制。随着任务越来越复杂或社会参与者的多样性增加,可能需要增加Agent的数量来实现目标,而减少Agent则对管理计算资源和减少浪费至关重要。在这种情况下,系统必须由设计者手动重新设计和重新启动。
动态扩展
另一种扩展Agent数量的可行方法是动态调整。在这种情况下,可以在不停止系统运行的情况下改变Agent数量。例如,在软件开发任务中,如果最初的设计只包括需求工程、编码和测试,那么就可以增加Agent的数量来处理架构设计和详细设计等步骤,从而提高任务质量。相反,如果在编码等特定步骤中存在过多的Agent,导致通信成本增加,但与较少的Agent数量相比,性能却没有实质性提高,那么就有必要动态移除一些Agent,以防止资源浪费。此外,Agent还可以自主增加Agent数量,以分配工作量,减轻自身负担,更高效地实现共同目标。当然,当工作量变轻时,它们也可以减少委派给自己任务的Agent数量,以节约系统成本。
潜在挑战
虽然增加Agent数量可以提高任务效率,增强社会模拟的真实性和可信度,但我们也面临着一些挑战。例如,随着大量人工智能Agent的部署,计算负担也会增加,这就需要更好的架构设计和计算优化,以确保整个系统的平稳运行。例如,随着Agent数量的增加,通信和信息传播的挑战也变得相当严峻。这是因为整个系统的通信网络变得非常复杂。在多Agent系统或社会中,信息传播可能会因幻觉、误解等原因出现偏差,导致信息传播失真。一个拥有更多Agent的系统可能会放大这种风险,使通信和信息交流的可靠性降低。此外,随着Agent数量的增加,协调Agent的难度也会增大,可能会使Agent之间的合作更具挑战性,效率降低,从而影响实现共同目标的进程。因此,构建一个大规模、稳定、连续的Agent系统,忠实再现人类的工作和生活场景,已成为一个前景广阔的研究方向。一个有能力在由数百甚至数千个Agent组成的社会中稳定运行并执行任务的Agent,更有可能在未来的现实世界中找到与人类互动的应用。
虚拟仿真环境与真实物理世界之间存在很大差距
虚拟环境受场景限制,针对特定任务,以模拟的方式进行交互,而真实世界的环境是无限的,可容纳各种任务,以物理的方式进行交互。因此,要弥合这一差距,Agent必须应对来自外部因素和自身能力的各种挑战,使其能够在复杂的物理世界中有效导航和操作。首先,最关键的问题是在物理环境中部署Agent时需要合适的硬件支持。这对硬件的适应性提出了很高的要求。在模拟环境中,Agent的感知空间和行动空间都是虚拟的。这意味着,在大多数情况下,无论是感知输入还是生成输出,都能保证Agent操作的结果。
当Agent过渡到真实物理环境时,其指令可能无法被传感器或机械臂等硬件设备很好地执行,从而严重影响Agent的任务效率。在Agent和硬件设备之间设计专用接口或转换机制是一种可行的选择。不过,这会给系统的可重用性和简易性带来挑战。为了实现这一飞跃,Agent需要具备更强的环境概括能力。要想无缝融入真实物理世界,它们不仅需要理解和推理具有隐含意义的模糊指令,还需要具备灵活学习和应用新技能的能力。
此外,在面对一个无限开放的世界时,Agent的有限环境也会带来巨大挑战。这决定了Agent能否有效处理来自世界的大量信息并顺利运行。
最后,在模拟环境中,Agent的输入和输出都是虚拟的,可以进行无数次的试错尝试。在这种情况下,对错误的容忍度很高,不会造成实际伤害。然而,在物理环境中,Agent的不当行为或错误可能会对环境造成真正的伤害,有时甚至是不可逆转的伤害。因此,非常有必要制定适当的法规和标准。我们需要关注Agent在做出决定和产生行动时的安全性,确保它们不会对现实世界造成威胁或伤害。
Agent即服务/基于 LLM 的Agent即服务
随着语言模型规模的扩大,它们对用户来说往往是黑盒子。因此,用户通过应用程序接口构建提示来查询模型,这种方法被称为语言模型即服务(LMaaS)。由于LLM-based Agent比 LLM 更加复杂,而且对于中小型企业或个人来说,在本地构建这些Agent更具挑战性,因此拥有这些Agent的组织可以考虑将它们作为一种服务来提供,即Agent即服务(AaaS)或基于 LLM 的Agent即服务(LLMAaaS)。与其他云服务一样,AaaS 可以为用户提供灵活性和按需服务。然而,它也面临着许多挑战,如数据安全和隐私问题、可视性和可控性问题以及云迁移问题等等。此外,由于LLM-based Agent具有独特性和潜在能力,因此在将其作为服务提供给客户之前,需要考虑其稳健性、可信度以及与恶意使用相关的问题。
总结
“Agent+”有望成为未来产品的主流,有望在多个领域实现落地应用。我们认为, AI Agent 的研究是人类不断探索接近 AGI 的过程,随着 Agent 变得越来越“可用” 和“好用”,“Agent+”的产品将会越来越多,未来将有望成为 AI 应用层的基本架 构,包括 to C、to B 产品等。
2B 和垂直领域仍是 AI Agents 容易率先落地的方向,用户对 Agent 的认知正在形 成,初创企业正在卡位。由于 Agent 对环境反馈的依赖性较强,具备显著特点的企 业环境是更加适合 Agent 建立起对某一个垂直领域认知的场景。当前关于 AI Agent 的研究主要还是以学术界和开发者为主,商业化产品极少,但是用户对于 Agent 的 关注度正在提升,可能未来几年间就会涌现出大量以 Agent 作为核心的产品应用到 各行各业。目前,已经有一些初创公司开始以企业的智能体平台作为主要的产品研 发方向,例如澜码科技正在打造基于 LLM 的企业级 Agent 平台。
未决问题
LLM是否是正确的AGI方向:
鉴于 GPT-4 功能的广度和深度,一些研究人员(被称为支持者)认为,GPT-4 所代表的大型语言模型可以作为早期版本的 AGI 系统。根据这一思路,基于 LLMs 构建 Agent 有可能带来更先进的 AGI 系统。这一论点的主要支撑点在于,只要能在足够大且多样化的数据集(这些数据集是真实世界的投影,包含丰富的任务)上对它们进行训练,LLM-based Agent就能具有 AGI 的能力。
另一个有趣的论点是,自回归语言建模行为本身会带来压缩和概括能力:正如人类在生存过程中出现了各种奇特而复杂的现象一样,语言模型在简单预测下一个标记的过程中,也实现了对世界的理解和推理能力。
然而,另一部分人(被称为反对者)认为,LLM-based Agent并不能发展出真正的强人工智能。他们的主要论点是,依赖于自回归下一个标记预测的 LLMs 无法产生真正的智能,因为它们没有模拟真正的人类思维过程,而只是提供被动反应。此外,LLM 也无法通过观察或体验世界来了解世界是如何运行的,从而导致许多愚蠢的错误。他们认为,要开发 AGI,必须采用更先进的建模方法,如世界模型。
版权归原作者 一名技术极客 所有, 如有侵权,请联系我们删除。