3、长期记忆

3.1 基本理解

3.1.1 什么是长期记忆
短期记忆记录的是会话级别(线程,Thread) 的数据, 会话间不共享。
而长期记忆记录的是用户特定或应用级别的数据,任何会话都可以随时访问。

图片[1]-3、长期记忆-大赛人网

比如:

  • 你喜欢简短回答
  • 你偏好 Python
  • 某个用户是 VIP
  • 某个流程过去怎么做效果更好
  • 这类信息不属于某一条聊天,而属于“用户/组织/应用本身”。

3.1.2 类型划分
LangChain参考CoALA paper将长期记忆划分为三类:

图片[2]-3、长期记忆-大赛人网

类型1:Semantic Memory(语义记忆)
即“事实类记忆”,记录事实/用户偏好/概念,如:

  • 用户喜欢简洁回答
  • 用户常用中文
  • 某个公司属于哪个行业

类型2:Episodic Memory(情景记忆)
即“经验类记忆”,记录Agent过去执行的动作,如:

  • 过去某个任务是怎么成功的
  • 某种用户输入下,怎样回答效果最好

在Agent里,这常常表现为 few-shot examples(少样本示例):
不直接告诉模型规则,而是给它看几个“输入 -> 输出”的例子,让它照着学
类型3:Procedural Memory(程序性记忆)
即“规则/做事方法”,如

  • Agent的系统提示词
  • Agent的工作流程
  • 工具调用规则

3.1.3 存储架构

图片[3]-3、长期记忆-大赛人网
图片[4]-3、长期记忆-大赛人网

举例1:
每个namespace存储的都是key-value键值对,通过key可以唯一标识一条value。

图片[5]-3、长期记忆-大赛人网

举例2:
同一个 AI 应用通常会为每个独立会话维护各自的短期状态 State;而长期记忆通常可以共享同一个
Store 实例,再通过 namespace 区分不同用户、组织、业务域或会话相关数据。如下:

图片[6]-3、长期记忆-大赛人网
图片[7]-3、长期记忆-大赛人网
图片[8]-3、长期记忆-大赛人网
© 版权声明
THE END
喜欢就支持一下吧
点赞6 分享
评论 抢沙发
头像-大赛人网
欢迎您留下宝贵的见解!
提交
头像-大赛人网

昵称

取消
昵称

    请登录后查看评论内容