你的 AI Agent 只有鱼的记忆?聊聊 Agent 记忆管理的正确姿势

做 Agent 的人多少都遇到过这个问题:用户上周说"预算 500",这周说"改 800 了",Agent 两条都存着,回答的时候一会 500 一会 800,像个记忆错乱的金鱼。

理想的 Agent 记忆不是"存更多",而是"知道什么该忘、什么该更新、冲突怎么解决"。今天聊聊 Amazon Bedrock AgentCore Memory 的方案。

双层架构

短期记忆(原始对话)+ 长期记忆(提炼知识)。每条对话先存短期,后台异步提取和整合为长期知识。

短期解决"当前对话的上下文",长期解决"跨会话的用户认知"。

四种记忆策略

  1. Semantic Memory:提取事实("预算=800""公司在上海"),自动更新和去重
  2. User Preference:跟踪用户偏好变化,"喜欢简洁回复"→"技术部分要详细"会更新而不是堆叠
  3. Summary:实时压缩长对话,不用重新处理全部历史
  4. Episodic:记住"完整交互片段",比如一次调试从出错到解决的过程,还能跨 episode 反思规律

实战代码

python 复制代码
from bedrock_agentcore.memory import MemoryClient

memory = MemoryClient(
    memory_id="my-agent-memory",
    region_name="cn-northwest-1"
)

# 混合策略
memory.create_memory(
    memory_strategies=[
        {"strategy_type": "SEMANTIC", "name": "facts"},
        {"strategy_type": "USER_PREFERENCE", "name": "prefs"},
        {"strategy_type": "EPISODIC", "name": "exp"}
    ]
)

# 写入
memory.add_event(
    actor_id="user-123",
    session_id="s-456",
    event={"role": "user", "content": "预算从 500 改 800"}
)

# 检索------旧的 500 已被自动更新
results = memory.search_memory(
    actor_id="user-123",
    query="预算",
    strategy_name="facts"
)

这套方案解决什么问题

场景 传统方案 AgentCore Memory
用户改预算 两条都存,回答矛盾 自动更新为最新值
重复说偏好 冗余 N 条 语义去重
调试经验 不记录 Episodic 自动学习
长对话 context 窗口溢出 Summary 压缩

适用场景

  • 客服、编程助手、运维 Agent------任何需要"跨会话记忆"的场景
  • 全托管,不用自建向量库
  • 检索约 200ms

几行代码就能让 Agent 从"金鱼记忆"升级到"持续学习",值得试。


🔗 Amazon Bedrock AgentCore:aws.amazon.com/cn/bedrock/... 🔗 AgentCore Memory 文档:docs.aws.amazon.com/bedrock/lat...

相关推荐
瑞雪兆丰年兮6 分钟前
JavaWeb-day14-SpringBootWeb原理篇
java·开发语言·spring boot·spring·bean·mybatis·javaweb
神仙别闹19 分钟前
基于 Java GUI 贪心策略直接搜索算法和极大极小博弈树算法的智能人机博弈五子棋游戏
java·毕业设计·gui·贪心策略·极大极小博弈树
Flynn Liang1 小时前
RAG 评估体系:黄金集、检索指标与 LLM-as-Judge 落地
java·langchain·rag·评估·langchain4j·检索指标
SimonKing3 小时前
Workbuddy太占C盘空间了,写个迁移工具迁走10G的数据
java·后端·程序员
Hvitur3 小时前
Java - Lambda
java·开发语言·python
apcipot_rain8 小时前
C++转Java日记(06)
java·开发语言
金銀銅鐵13 小时前
带您看懂字节码指令(一):一帧里有什么
java·后端·ai编程
nice_lcj52015 小时前
【从零理解 Spring AI · 14】RAG 的四个环节:加载、切分、向量化、检索
java·spring boot·embedding·向量数据库·rag·spring ai·ai应用开发
学长毕设16 小时前
基于springboot科创竞赛信息平台-附源码
java·spring boot·后端
聪明的笨猪猪17 小时前
Java 工程案例:AI 生成 @Async 异步线程池踩坑
java·经验分享·面试·ai编程