Anthropic最新:AI Agents 2024年度总结!
AI Agent=大模型+记忆+规划+工具使用
两种思维方式:CoT和ReAct,都可以通过 Prompt 的设计来控制
构建块、工作流和Agent
构建块:增强型LLM
工作流程:提示链接
工作流程:路由
工作流程:并行化
工作流程:Orchestrator-workers
相较于并行化,中央 LLM 动态地分解任务,也就是子任务不是预先定义的,而是由编排器根据特定输入确定
工作流程:评估器-优化器
Agent综述
The Rise and Potential of Large Language Model Based Agents: A Survey
Agent大脑模块
LLMs 的出现凸显了基础模型在理解人类意图方面的潜力,但当涉及到模糊指令或其他含义时,就会给Agent带来巨大挑战。对于人类来说,掌握对话中的隐含意义是自然而然的事,而对于Agent来说,他们应该将隐含意义形式化为奖励函数,使他们能够在看不见的语境中选择符合说话者偏好的选项。奖励建模的主要方法之一是根据反馈推断奖励,反馈主要以比较和无约束自然语言的形式呈现。另一种方法是以行动空间为桥梁,从描述中获取奖励。Jeon 等人认为,人类行为可以映射为从一组隐含选项中做出的选择,这有助于用一个统一的形式解释所有信息。利用对上下文的理解,Agent可以根据具体要求采取高度个性化和准确的行动。
针对Agent的记忆:
- 提高Transformer的输入长度限制:缓解这些长度限制的策略包括文本截断、分割输入,以及强调文本的关键部分。还有一些研究修改了注意力机制
- 总结记忆:一些方法利用提示简洁地整合记忆,而另一些方法则强调反思过程,以创建浓缩的记忆表征。分层方法将对话精简为每日快照和总体总结。一些特定的策略将环境反馈转化为文本封装,从而加强了Agent对未来参与的语境把握。此外,在multi-agent环境中,Agent交流的重要元素会被捕获并保留下来 。
- 用向量或数据结构压缩记忆:通过采用合适的数据结构,智能Agent可提高记忆检索效率,促进对交互做出迅速反应。值得注意的是,有几种方法依赖于为记忆部分、计划或对话历史嵌入向量。另一种方法将句子转化为三元组配置,还有一些方法将记忆视为独特的数据对象,从而促进不同的交互。此外,ChatDB和DB-GPT将 LLMrollers 与 SQL 数据库整合在一起,通过 SQL 命令进行数据操作。
Agent要求存储器具有自动检索记忆的能力。自动检索的一个重要方法是考虑三个指标: 最近性(Recency)、相关性(Relevance)和重要性(Importance)。记忆得分由这些指标加权组合而成
计划制定:一些著作主张LLM-based Agent一次性全面分解问题,一次性制定完整的计划,然后按顺序执行。与此相反,其他研究(如 CoT 系列)则采用自适应策略,一次规划和处理一个子任务,从而更流畅地处理复杂的整体任务。此外,有些方法强调分层规划,而另一些方法则强调一种策略,即从树状结构的推理步骤中推导出最终计划。后一种方法认为,在最终确定计划之前,Agent应评估所有可能的路径。
看不见的任务泛化:、通过扩大模型规模和训练指令的数量或多样性,可以进一步增强这种泛化能力。
情境学习:与监督学习过程不同,ICL 不涉及微调或参数更新,这可以大大降低模型适应新任务的计算成本。除文本外,研究人员还探索了 ICL 在不同多模态任务中的潜在能力,从而使Agent应用于大规模真实世界任务成为可能。
持续学习:持续学习的一个核心挑战是灾难性遗忘,为应对上述挑战,人们做出了大量努力,这些努力大致可分为三类:参照以前的模型引入经常使用的术语 ;近似先验数据分布;设计具有任务自适应参数的架构。Voyager尝试解决由 GPT-4设计的课程学习方案(即难度递增的任务),通过从较简单的程序中综合出复杂的技能,该Agent不仅能迅速增强自身能力,还能有效对抗灾难性遗忘。
感知模块
为了帮助Agent理解图像中包含的信息,一种直接的方法是为图像输入生成相应的文本描述,即图像标题。字幕可以直接与标准文本指令连接,并输入到Agent中。不过,字幕生成是一种低带宽方法,在转换过程中可能会丢失大量潜在信息。此外,Agent对图像的关注可能会带来偏差。
一些研究尝试直接将图像编码器和 LLM 结合起来,以端到端的方式训练整个模型。虽然这种Agent可以实现出色的视觉感知能力,但却要付出大量计算资源的代价。
然而,LLM 无法直接理解视觉编码器的输出,因此有必要将图像编码转换为 LLM 可以理解的嵌入。换句话说,这需要将视觉编码器与 LLM 对齐,这通常需要在两者之间添加一个额外的可学习接口层。例如,BLIP-2 和 InstructBLIP 使用查询转换器(Q-Former)模块作为视觉编码器和 LLM 之间的中间层。Q-Former 是一种转换器,采用可学习的查询向量,使其具有提取语言信息视觉表征的能力。同时,一些研究者采用了一种计算效率较高的方法,即使用单个embedding layer来实现视觉-文本对齐,从而减少了训练额外参数的需要。此外,Embedding layer还能与可学习层有效结合,调整其输出的维度,使其与 LLM 兼容。
与图像信息相比,视频信息增加了一个时间维度。因此,Agent对不同帧间时间关系的理解对于感知视频信息至关重要。一些工作,如 Flamingo ,通过使用掩码机制来确保理解视频时的时间顺序。掩码机制限制了Agent的视角,当它感知到视频中的特定帧时,只能从时间上较早的帧中获取视觉信息。
Agent可以将 LLMs 用作控制中心,以级联方式调用现有工具集或模型库来感知音频信息。音频频谱图直观地表示了音频信号随时间变化的频谱,对于一段时间内的一段音频数据,可将其抽象为有限长度的音频频谱图。音频频谱图具有二维表示形式,可视化为平面图像。因此,一些研究致力于将感知方法从视觉领域迁移到音频领域。
行动模块
使用工具:Agent学习使用工具的方法主要包括从demonstartion中学习和从reward中学习(清华有一篇从训练数据中学习的文章)。这包括模仿人类专家的行为,以及了解其行为的后果,并根据从环境和人类获得的反馈做出调整。环境反馈包括行动是否成功完成任务的结果反馈和捕捉行动引起的环境状态变化的中间反馈;人类反馈包括显性评价和隐性行为,如点击链接。
有可能通过元工具学习来实现。加强Agent对简单工具和复杂工具之间关系的理解,例如复杂工具如何建立在较简单工具的基础上
嵌入式行动规划:规划是人类和LLM-based Agent在应对复杂问题时采用的关键策略。在 LLM 展示出非凡的推理能力之前,研究人员引入了分层强化学习(HRL)方法,即高层策略约束低层策略的子目标,低层策略产生适当的行动信号。
具身智能:
- 观察:一种常见的方法是使用预先训练好的视觉转换器(ViT)作为文本和视觉信息的对齐模块,并标注特殊标记来表示多模态数据的位置。声音空间(Soundspaces)提出通过混响音频输入来识别物理空间几何元素,从而以更全面的视角加强Agent的观察。近来,更多的研究将音频作为嵌入式观察的模式。除了广泛使用的级联范式,类似于 ViT 的音频信息编码进一步加强了音频与其他输入模式的无缝整合。Agent对环境的观察也可以来自人类的实时语言指令,而人类的反馈则有助于Agent获取可能无法轻易获得或解析的细节信息。
- 操纵:保持Agent状态与子目标之间的同步非常重要。
- 导航:对于具身Agent来说,必须事先建立关于外部环境的内部地图,其形式通常为拓扑图、语义图或占用图。一些研究强调了空间表示的重要性,通过利用预先训练好的 VLM 模型将图像中的视觉特征与物理世界的 3D 重构相结合,实现空间目标的精确定位,而不是传统的以点或物体为中心的导航行动。
Agents in Practice
在网络中, Mind2Web 将多个针对 HTML 进行微调的 LLMs 结合在一起,使它们能够在真实世界的场景中总结冗长的 HTML 代码并提取有价值的信息。此外,WebGum 通过使用包含 HTML 屏幕截图的多模态语料库,增强了具有视觉感知能力的Agent的能力。它同时对 LLM 和视觉编码器进行了微调,加深了Agent对网页的全面理解。
多智能体面临着一些基本挑战:
- 在长时间的辩论中,LLM 有限的语境无法处理整个输入。
- 在多Agent环境中,计算开销大大增加。
- 多Agent协商可能会收敛到不正确的共识,而所有Agent都坚信其准确性。多Agent系统的发展还远未成熟,也不可行。在适当的时候引入人类向导来弥补Agent的不足,是促进Agent进一步发展的良好选择。
Discussion
- LLM的研究方向:对LLM的研究不再局限于涉及文本输入和文本输出的传统任务,如文本分类、问题解答和文本摘要。取而代之的是,研究重点已转向处理复杂任务,这些任务包含更丰富的输入模式和更广阔的行动空间。
- LLM的挑战:挑战在于如何让大型语言模型高效地处理输入、从环境中收集信息并解释由其行动产生的反馈,同时保持其核心能力。此外,更大的挑战在于如何让LLMs理解环境中不同元素之间的隐含关系,并获取世界知识。
- LLM的行动能力:大量研究旨在扩展LLM的行动能力,让它们掌握更多影响世界的技能,例如在模拟或物理环境中使用工具或与机器人API接口。
- Multi-Agent系统领域:我们希望LLM-based Agent能在社会合作中扮演不同的角色,参与涉及协作、竞争和协调的社会互动。
一个有趣的论点是,自回归语言建模行为本身会带来压缩和概括能力:正如人类在生存过程中出现了各种奇特而复杂的现象一样,语言模型在简单预测下一个标记的过程中,也实现了对世界的理解和推理能力。
另一部分人认为,LLM-based Agent并不能发展出真正的强人工智能。他们的主要论点是,依赖于自回归下一个标记预测的 LLMs 无法产生真正的智能,因为它们没有模拟真正的人类思维过程,而只是提供被动反应。此外,LLM 也无法通过观察或体验世界来了解世界是如何运行的,从而导致许多愚蠢的错误。他们认为,要开发 AGI,必须采用更先进的建模方法,如世界模型。
创建一个Agent社会并不一定能保证随着Agent数量的增加而出现集体智慧。