基于大模型的人工智能代理 AI Agent
所属分类 AI
浏览量 13
大模型 应用 AI Agents 智能体
AI Agent(人工智能代理)是一种能够感知环境、进行决策和执行动作的智能实体。
智能体像人一样,它有记忆、有逻辑分析能力、有任务的拆解能力、问题的拆解能力和最后综合回来统一解决问题的能力。
LLM
LLM + Planning
LLM + Planning + Memory
LLM + Planning + Memory + Tools
AI Agents = LLM + Planning + Memory + Tools
AI Agent也可以称为“智能体”,也可理解为“智能业务助理”,
旨在大模型技术驱动下,让人们以自然语言为交互方式高自动化地执行和处理专业或繁复的工作任务,从而极大程度释放人员精力。
现在,Agent 基本就等于 "大模型 + 插件 + 执行流程 / 思维链",
分别会对应 控制端 (Brain / 大脑)、感知端 (Preception)、执行端 (Action)
大模型庞大的训练数据集中包含了大量人类行为数据,为模拟类 人的交互打下了坚实基础;
另一方面,随着模型规模不断增大,大模型涌现出了上 下文学习能力、推理能力、思维链等类似人类思考方式的多种能力。
将大模型作为 AI Agent 的核心大脑,就可以实现以往难以实现的将复杂问题拆解成可实现的子任 务、类人的自然语言交互等能力。
由于大模型仍存在大量的问题如幻觉、上下文容 量限制等,通过让大模型借助一个或多个 Agent 的能力,
构建成为具备自主思考决 策和执行能力的智能体,成为了当前通往 AGI 的主要研究方向。
AI Agent是智能体,能感知环境、决策并行动,而非单纯响应刺激。
在特定行业场景中,通用大模型难以精准满足用户在知识问答、内容生成、业务处理和管理决策等方面的需求。
因此,将通用大模型转化为行业大模型,进而发展为场景大模型,是实现AI深入业务场景、承担复杂任务的关键。
这一过程促使大模型以AI Agent的形式,重构和优化业务流程及管理服务模式。
在数字化实体建设中,AI Agent将成为通用人工智能(AGI)应用的主要形式,行业开发者和创业者将在此领域具有开发优势。
AI Agent被视为数字经济时代赋能各行业的高效工具。
与传统AI不同,AI Agent能独立思考、调用工具完成任务。
它与大模型的主要区别在于,AI Agent根据目标自主行动,而大模型依赖用户prompt的清晰度。
与RPA相比,AI Agent能与环境交互,感知信息并作出响应。
AI Agent研究中的技术演变史
符号逻辑 Agent:
早期AI研究依赖符号逻辑Symbolic,通过规则和符号表示知识(如关键词),模拟人类思维,但面临处理不确定性和大规模问题的局限性。
响应式 Agent:
不同于符号逻辑 Agent,响应式Reactive Agent注重快速响应,直接映射输入输出,计算资源需求低,但缺乏复杂决策能力。
强化学习 Agent:
强化学习使Agent通过环境交互学习,追求累积奖励。
深度强化学习提升了处理高维输入的能力,但面临训练效率和稳定性挑战。
迁移学习和元学习被引入以提升Agent的学习效率和泛化能力,减少对新任务的样本依赖,尽管存在源任务与目标任务差异导致的挑战。
大模型 Agent:
由于LLM已经展示出令人印象深刻的新兴能力,并受到广泛欢迎,研究人员已经开始利用这些模型来构建AI Agent。
采用 LLM 作为 Agent的大脑或控制器的主要组成部分,并通过多模态感知和工具利用等策略来扩展其感知和行动空间。
通过思维链(CoT)和问题分解等技术,基于 LLM 的Agent可以表现出与Symbolic Agen相当的推理和规划能力。
它们还可以通过从反馈中学习和执行新的行动,获得与环境互动的能力,类似于Reactive Agent。
同样,大型语言模型在大规模语料库中进行预训练,并显示出少量泛化的能力,从而实现任务间的无缝转移,而无需更新参数。
LLM-based Agent已被应用于各种现实世界场景、如软件开发和科学研究。
由于具有自然语言理解和生成能力,它们可以无缝互动,从而促进多个Agent之间的协作和竞争。
自主性(Autonomy)
自主性是指一个Agent在没有人类或其他人直接干预的情况下运行,并对其行动和内部状态拥有一定程度的控制
反应性(Reactivity)
Agent的反应能力是指它对环境中的即时变化和刺激做出快速反应的能力。这意味着Agent可以感知周围环境的变化,并迅速采取适当的行动。
主动性(Pro-activeness)
积极主动指的是,Agent不仅仅会对环境做出反应,它们还能积极主动地采取以目标为导向的行动。
社会能力(Social Ability)
社交能力指的是一个Agent通过某种Agent交流语言与其他Agent(包括人类)进行交互的能力。
Agent的构建
LLM-based Agent的概念框架,由 大脑、感知、行动 三个部分组成。
作为控制器,大脑模块承担记忆、思考和决策等基本任务;
感知模块负责感知和处理来自外部环境的多模态信息;
行动模块负责使用工具执行任务并影响周围环境
一个基于大模型的 AI Agent 系统可以拆分为大模型、规划、记忆与工具使用四个组件部分。
AI Agent 可能会成为新时代的开端,其基础架构可以简单划分为 Agent = LLM + 规划技能 + 记忆 + 工具使用,
其中 LLM 扮演了 Agent 的“大脑”,在系统中提供推理、规划等能力。
一. 大脑模块
大脑主要由一个大型语言模型组成,
不仅存储知识和记忆,还承担着信息处理和决策等功能,
并可以呈现推理和规划的过程,能很好地应对未知任务。
运行机制:
为确保有效交流,自然语言交互能力 至关重要。
在接收感知模块处理的信息后,大脑模块首先转向存储,在知识中检索 并从记忆中回忆 。
这些结果有助于Agent制定计划、进行推理和做出明智的决定 。
此外,大脑模块还能以摘要、矢量或其他数据结构的形式记忆Agent过去的观察、思考和行动。
同时,它还可以更新常识和领域知识等知识,以备将来使用。
LLM-based Agent还可以利用其固有的概括和迁移能力来适应陌生场景
自然语言交互
作为一种交流媒介,语言包含着丰富的信息。
除了直观表达的内容,背后还可能隐藏着说话者的信念、愿望和意图。
由于 LLM 本身具有强大的自然语言理解和生成能力,
Agent不仅可以熟练地使用多种语言进行基本的交互式对话,
还能表现出深入的理解能力,从而使人类能够轻松地理解Agent并与之互动。
多轮交互对话:
多轮对话能力是有效和一致交流的基础。
作为大脑模块的核心,LLM能够理解自然语言并生成连贯且与上下文相关的回复,从而帮助Agent更好地理解和处理各种问题。
然而,即使是人类也很难在一次交流中不出现混乱,因此需要多轮对话。
与 SQuAD 等传统的纯文本阅读理解任务相比,多轮对话具有以下几个特点:
具有交互性,涉及多个说话者,缺乏连续性;
可能涉及多个话题,对话信息也可能是冗余的,使得文本结构更加复杂。
一般来说,多轮对话主要分为三个步骤:
(1) 了解自然语言对话的历史;
(2) 决定采取什么行动;
(3) 生成自然语言回应
LLM-based Agent能够利用现有信息不断完善输出,进行多轮对话并有效实现最终目标。
高质量的自然语言生成:
最新的 LLM 展示了卓越的自然语言生成能力,可持续生成多种语言的高质量文本。
LLM 生成内容的连贯性和语法准确性稳步提高,从GPT-3逐步发展到 InstructGPT,最终达到 GPT-4。
这些语言模型可以“适应调节文本的风格和内容”,而像ChatGPT这样的模型在语法错误检测方面表现出色,凸显了其强大的语言能力。
在对话语境中,LLMs 在对话质量的关键指标上也表现出色,包括内容、相关性和适当性。
重要的是,LLMs 不仅仅复制训练数据,而且还表现出一定程度的创造力,能生成与人类制作的基准文本同样新颖甚至更加新颖的各种文本。
同时,通过使用可控提示,确保对这些语言模型生成的内容进行精确控制,人类的监督依然有效。
意图和含义理解:
尽管在大规模语料库中训练出来的模型已经具有足够的智能来理解指令,
但它们中的大多数仍无法模拟人类对话或充分利用语言所传达的信息。
要想与其他智能机器人进行有效的交流与合作,理解其隐含的意思至关重要,并使人们能够解释他人的反馈。
LLM的出现凸显了基础模型在理解人类意图方面的潜力,但当涉及到模糊指令或其他含义时,就会给Agent带来巨大挑战。
对于人类来说,掌握对话中的隐含意义是自然而然的事,而对于Agent来说,
他们应该将隐含意义形式化为奖励函数,使他们能够在看不见的语境中选择符合说话者偏好的选项。
奖励建模的主要方法之一是根据反馈推断奖励,反馈主要以比较和无约束自然语言的形式呈现。
另一种方法是以行动空间为桥梁,从描述中获取奖励。
Jeon 等人认为,人类行为可以映射为从一组隐含选项中做出的选择,这有助于用一个统一的形式解释所有信息。
利用对上下文的理解,Agent可以根据具体要求采取高度个性化和准确的行动。
知识
在大规模数据集上训练的语言模型可以将各种知识编码到其参数中,并对各种类型的查询做出正确的反应。
此外,这些知识还能帮助LLM-based Agent做出明智的决策。
所有这些知识可大致分为以下几类:
语言知识:
语言知识表现为一个约束系统,即语法,它定义了语言的所有和唯一可能的句子。
它包括词法、句法、语义学和语用学。只有掌握了语言知识的Agent才能理解句子并进行多轮对话。
此外,这些Agent可以通过在包含多种语言的数据集上进行训练来获取多语言知识,从而无需额外的翻译模型。
常识知识:
常识性知识指的是大多数人在幼年时就已掌握的世界常识。
例如,人们通常知道药是用来治病的,伞是用来防雨的。这些信息通常不会在上下文中明确提及。
因此,缺乏相应常识性知识的模型可能无法理解或误解其中的含义。
同样,缺乏常识性知识的Agent可能会做出错误的决定,比如在下大雨时不打伞。
专业领域知识:
专业领域知识是指与特定领域相关的知识,如编程、数学、医学等。
它对模型有效解决特定领域内的问题至关重要。
例如,用于执行编程任务的模型需要具备编程知识,如代码格式。
同样,用于诊断目的的模型应具备医学知识,如特定疾病和处方药的名称。
潜在问题:
尽管 LLM 在获取、存储和利用知识方面表现出色,但仍然存在潜在的问题和悬而未决的难题。
例如,模型在训练过程中获得的知识可能会过时,甚至从一开始就是错误的。
解决这一问题的简单方法是重新训练。但是,这需要先进的数据、大量的时间和计算资源。
更糟糕的是,它可能导致灾难性遗忘。
因此,一些研究人员尝试编辑 LLM,以找到并修改模型中存储的特定知识。
这包括在获取新知识的同时卸载不正确的知识。
他们的实验表明,这种方法可以部分编辑事实知识,但其基本机制仍需进一步研究。
此外,LLM可能会生成与来源或事实信息相冲突的内容,这种现象通常被称为幻觉。
这也是 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)相结合,构建一个数据集,作为训练过程的监督信号。
尽管如此,随着具身行动在人类生活的各个领域发挥着越来越关键的作用,仍有必要对具身数据集的基础进行更多研究。
上一篇
下一篇
Mac M1 M2 芯片区别
Mac M1 M2 芯片 安装 VirtualBox虚拟机
大模型、RAG、Agent、MCP、Function Calling、知识库、向量数据库、知识图谱、AGI 的区别和联系
Spring AI 模块架构与功能简介