一篇大模型Agent记忆机制研究综述

向量数据库大模型

基于大型语言模型(LLM)的智能体最近吸引了研究和工业社区的广泛关注。与原始的大型语言模型相比,基于LLM的智能体以其自我进化能力为特色,这是解决需要长期和复杂智能体-环境交互的现实世界问题的基础。支持智能体-环境交互的关键组件是 智能体的记忆 。尽管先前的研究提出了许多有前景的记忆机制,但它们分散在不同的工作中, 缺乏一个系统性的综述来从整体视角总结和比较这些工作 ,未能抽象出共同和有效的设计模式以启发未来的研究。

图1:基于大型语言模型(LLM)的代理中记忆模块的重要性

picture.image

智能体中的记忆是什么?

  1. 记忆的定义:智能体的记忆被定义为存储和回忆与环境交互过程中获得的信息的能力。这包括在同一试验中的信息、跨不同试验的信息,以及外部知识。
  2. 记忆的作用:记忆对于智能体理解环境、做出决策和从经验中学习至关重要。它允许智能体积累知识、处理历史经验,并检索有信息的知识以支持其行动。
  3. 记忆的来源:记忆内容可能来自以下来源:
  • 内部试验信息:智能体与环境交互过程中的历史步骤。
  • 跨试验信息:在多个试验中积累的信息,包括成功和失败的行动及其洞察。
  • 外部知识:智能体可以通过API调用等手段获取的文本形式的外部知识。
  • 记忆的形式:记忆可以以文本形式或参数形式存在。文本形式使用自然语言明确保留和回忆信息,而参数形式将记忆信息编码为参数,并隐式地影响智能体的行动。

  • 记忆的操作:智能体的记忆操作包括记忆写作(记录信息)、记忆管理和记忆阅读(检索信息)。这些操作共同支持智能体的学习和决策过程。

图2:Agent记忆机制示例: (a) 智能体与环境交互过程中潜在试验的示例。(b) 记忆的读取、写入和管理过程的说明,其中虚线表示跨试验信息可以被整合到记忆模块中。

picture.image

在图2例子中,智能体有两个任务:

  • (A) 为爱丽丝在2024年5月1日至5月3日期间在北京制定旅行计划,智能体需要(i) 购买往返机票,(ii) 根据爱丽丝的偏好确定几个景点,(iii) 安排这些景点的参观顺序。
  • (B) 在2024年5月10日为爱丽丝推荐一部电影,智能体需要(i) 确定爱丽丝有空看电影的时间,(ii) 根据爱丽丝的观看偏好选择一部电影。对于每个任务,在下面展示一个可能的试验(也在图2(a)中说明)。

对于任务(A),试验是:

  • [步骤 1] 智能体:我需要通过在线票务办公室预订2024年5月1日从上海到北京的航班,以及5月3日从北京返回上海的航班。环境(在线票务办公室):订单已确认。出发航班上午9:00起飞,您的票号是EK240501SX9021。返程航班下午4:30起飞,您的票号是LG240503FN6317。请准时到达机场搭乘您的航班。
  • [步骤 2] 智能体:我已经从《北京景点》杂志获取了外部知识。它显示长城、故宫和颐和园都很有名。根据爱丽丝的偏好,我认为她更喜欢古代建筑,所以我确定故宫和颐和园作为目的地。环境(爱丽丝):做得好!
  • [步骤 3] 智能体:现在,我需要为爱丽丝安排参观顺序。根据上面的信息,我建议她一到北京就参观颐和园,因为那里适合整个下午游玩并观看日落。然后,她第二天可以去故宫,这样会给她足够的时间。
  • 最后,她可以在第三天返回上海休息。环境(爱丽丝):我喜欢这个计划。谢谢!

对于任务(B),试验是:

  • [步骤 1] 智能体:根据我以前为爱丽丝推荐电影的经验,她更喜欢在晚上9:00开始看电影,因为那时她已经完成工作。我应该问问爱丽丝那个时间她是否有空。环境(爱丽丝):当然,这是个好时间!
  • [步骤 2] 智能体:现在,我需要找到一些爱丽丝在Netflix上标记为“想看”的电影。环境(Netflix):爱丽丝的想看列表:《星际穿越》、《恐怖星球》和《鬼吹灯》。
  • [步骤 3] 智能体:由于爱丽丝晚上从不观看恐怖电影,《星际穿越》对她来说更合适。现在,我需要与爱丽丝确认这部电影。环境(爱丽丝):太棒了!我喜欢它!

为什么智能体需要记忆?

从三个视角来看,记忆为智能体建立了认知基础,并且对于智能体的演化原理和应用是必要的,这为设计具有记忆机制的智能体提供了洞见。

  1. 认知心理学视角:记忆对于人类学习知识、形成社会规范、采取合理行为等心理过程至关重要。设计智能体以模仿人类的工作机制是自然且必要的,因此,对于智能体而言,设计记忆模块也是重要的。认知心理学的长期研究积累了许多有效的人类记忆理论和架构,这些可以支持智能体的更高级能力。
  2. 自我演化视角:为了在动态环境中完成不同的实际任务,智能体必须自我演化。在这个过程中,记忆对于以下方面至关重要:
  • 经验积累:记忆的一个主要功能是记住过去的错误的规划、不当的行为或失败的经验,以便在未来处理类似任务时使智能体更有效。
  • 环境探索:智能体必须记住历史信息,以更好地决定何时以及如何进行探索。
  • 知识抽象:记忆的另一个重要功能是从原始观察中总结和抽象出高级信息,这是智能体适应性和泛化性的基础。
  • 智能体应用视角:在许多应用中,记忆是智能体不可或缺的组成部分。例如,在对话智能体中,记忆存储有关历史对话的信息,这对于生成下一个响应至关重要。没有记忆,智能体就不知道上下文,无法继续对话。

智能体记忆如何实现

大型语言模型(LLM)智能体中记忆的来源、形式和操作的概述

picture.image

  1. 记忆来源(Memory Sources):
  • 内部试验信息(Inside-trial Information):指的是在单一试验中,智能体与环境交互过程中产生的信息。
  • 跨试验信息(Cross-trial Information):涉及多个试验中积累的信息,如成功和失败的行动及其洞察。
  • 外部知识(External Knowledge):智能体可以利用的文本形式的外部知识,如Wikipedia或其他在线数据库。
  • 记忆形式(Memory Forms):
  • 文本形式(Textual Form):信息以自然语言的形式明确保留和回忆。
  • 参数形式(Parametric Form):记忆信息被编码为参数,并隐式地影响智能体的行为。
  • 记忆操作(Memory Operations):
  • 记忆写作(Memory Writing):智能体如何将感知到的信息部分存储为记忆,包括原始信息的存储和信息摘要。
  • 记忆管理(Memory Management):智能体如何通过生成更高层次的记忆、合并相似的记忆条目和遗忘不重要或不相关的信息来处理存储的记忆信息。
  • 记忆阅读(Memory Reading):智能体如何从记忆中提取信息以支持下一步行动,通常涉及计算当前上下文与记忆条目之间的相似性。

记忆源的总结。 使用✓和×来标记相应的源是否在模型中采用。

picture.image

记忆形式的总结。 使用✓和×来标记相应的记忆形式是否在模型中采用。

picture.image


          
A Survey on the Memory Mechanism of Large Language Model based Agents
          
https://arxiv.org/pdf/2404.13501.pdf
          
https://github.com/nuster1128/LLM_Agent_Memory_Survey
      

推荐阅读


欢迎关注我的公众号“ PaperAgent ”, 每天一篇大模型(LLM)文章来锻炼我们的思维,简单的例子,不简单的方法,提升自己。

0
0
0
0
关于作者
关于作者

文章

0

获赞

0

收藏

0

相关资源
DevOps 在字节移动研发中的探索和实践
在日益复杂的APP工程架构下,如何保证APP能高效开发,保障团队效能和工程质量?本次将结合字节内部应用的事件案例,介绍DevOps团队对移动研发效能建设的探索和思考。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论