在实际中,你如何真正结合记忆和知识库?将两者都塞进上下文真的是标准做法吗?
摘要
讨论在个性化AI代理中结合长期记忆和知识库的实际挑战,质疑将所有内容塞进上下文是否为标准,并探索替代方案,如单独的检索流程或基于工具的交互。
我见过的大多数“个性化代理”设置大致如下:
\- 长期记忆(情节性、语义性或两者兼有)
\- 个人知识库(对文档/笔记进行RAG)
\- 将两者合并到上下文中 → 发送给LLM
这在简单情况下效果不错。但随着任一层的增长,我不断遇到同样的问题:
1. 你如何决定从每个层检索什么?记忆和知识库是经过同一检索流程还是单独的?当它们返回冲突或重叠的结果时,你如何权衡?
2. 上下文填充是唯一可行的形式,还是存在真正的替代方案?例如——在RAG查询之前用记忆进行预过滤,用记忆重写查询,或者让LLM将记忆和知识库作为工具交互,而不是预加载的上下文。
3. 当记忆和知识库说法不一致时,你如何处理?你的系统在LLM看到之前协调这一点,还是让LLM自行解决?
好奇的是,人们在生产环境(或严肃实验)中实际使用的架构,而不仅仅是玩具演示设置。
相似文章
如何管理代理记忆而不让其变成杂物抽屉?
关于管理AI系统中代理记忆的实际挑战的讨论,侧重于避免信息过载导致输出质量下降,并提出使用工作流状态和多代理架构等策略。
大家是如何处理 AI 智能体的长期记忆 + 回放/调试问题的?
一位开发者探讨了当前 AI 智能体记忆系统的局限性,并提出了一款具有片段存储和回放调试功能的新记忆层工具,希望获得社区的验证。
可复用知识与操作记忆:构建真正能跟进到底的AI智能体时缺失的区分
本文区分了可复用知识(持久上下文)与操作记忆(任务状态),这两者都是构建能够跟进复杂任务的主动型AI智能体的关键组成部分。
智能体应该一开始就询问用户上下文,还是慢慢学习?
关于AI智能体应如何处理用户上下文的讨论:是主动告知还是逐步学习,现有的方法如项目记忆和聊天摘要均存在不足。
Cognis:面向对话式 AI 智能体的上下文感知记忆系统
Lyzr Cognis 推出统一开源记忆系统,融合 BM25 与 Matryoshka 向量搜索并支持版本感知写入,在 LoCoMo 与 LongMemEval 基准上实现 SOTA。