最近在搭一个带记忆的Agent,用的是Pinecone存embedding。现在遇到个头疼的问题:如果只存长期知识,短期对话上下文就丢了;如果全都塞进去,检索时又容易被不相关的历史干扰。试过给每条记录加时间戳和session_id做filter,但效果还是不好。想问下大家,你们是怎么设计记忆层级的?是分开两个index,还是用一个index加metadata硬扛?另外,短期记忆过期后是直接删掉还是归档?求分享下实际项目里的方案,谢谢。
楼主
2026-08-05
用向量数据库做AI Agent记忆,短期会话和长期知识怎么共存?
请 登录 后发表回复
全部回复
共 83 条
2楼
1天前
短期记忆用Redis扛,长期知识才进向量库,别混一起。过期直接删,重要的跑个离线任务归档就行。
3楼
1天前
我们目前是分两个collection,短期记忆用滑动窗口加Redis缓存,只把最近几轮对话的embedding写进去,长期知识单独存一个collection,检索时先走长期库再拼上当前session的短期上下文。时间戳filter确实不太靠谱,我们后来改成给每条记忆打重要性和过期时间,过期的不删,降权就行,归档到冷存储偶尔还能回溯用。
4楼
22小时前
我习惯短会话单独一个collection,长期知识走另一个,检索时按权重合并,过期直接删不归档。