在多代理系统中,LLM 代理间的状态同步与记忆持久化是核心挑战,Memori 通过 SQL-native 的层级内存引擎,提供短期工作记忆与长期动态检索的双模机制,实现高效嵌入同步与跨会话状态保持,避免重复解释与上下文丢失。
Memori 的层级内存架构模拟人类记忆:短期记忆(Conscious Mode)预加载高频关键事实,如用户偏好或项目上下文,一次性注入提示以节省 token;长期记忆(Auto Mode)基于查询意图实时检索 Top-5 相关片段,支持全文本搜索与实体关系映射。“Memori 通过三个专用代理协作处理记忆:Memory Agent 提取实体并分类(事实、技能、规则等),Conscious Agent 每 6 小时分析模式并提升重要记忆至短期表,Retrieval Agent 规划语义+关键词混合搜索策略。”这种分层设计在多代理场景下,确保共享命名空间(namespace)内代理间记忆一致,例如 CrewAI 或 AutoGen 中的群聊历史自动持久化。
落地时,先选择数据库:生产环境优先 PostgreSQL(连接池大小 20,索引优化 idx_memory_importance DESC),开发用 SQLite(路径 ./my_memory.db)。初始化配置示例:
from memori import Memori, ConfigManager
config = ConfigManager()
config.auto_load()
memori = Memori(
database_connect="postgresql://...",
conscious_ingest=True,
auto_ingest=True,
openai_api_key="sk-...",
memory_namespace="multi-agent-prod"
)
memori.enable()
多代理集成清单:
- CrewAI/Swarms:导入 memori.create_memory_tool(memori),绑定至代理工具链,实现共享记忆搜索。
- AutoGen 群聊:每个代理实例共享同一 Memori 命名空间,自动记录跨代理对话。
- 状态持久参数:short_term_memory 保留 7 天(expires_at),importance_score > 0.8 优先提升;检索 limit=5,relevance_scores 阈值 0.7。
- 嵌入同步:Retrieval Agent 支持 Ollama 本地嵌入(ProviderConfig.from_custom(base_url="http://localhost:11434")),减少云依赖。
监控要点包括:数据库增长(long_term_memory 行数 < 10万/代理,避免 FTS 索引膨胀);代理调用延迟(Conscious 分析 < 30s/周期);token 节省率(预注入 < 200 token/调用,对比无记忆基线 80% 降幅)。异常处理:数据库重连指数退避(初始 1s,max 60s);代理失败降级至纯 SQL 搜索(无 LLM 提取)。
回滚策略:若检索噪声高,调低 auto_ingest limit=3 或禁用 conscious_ingest,仅用基本记录;生产验证用 FastAPI 多用户示例,模拟 10 代理并发。
实际案例:在电商多代理系统中,主代理记用户订单历史(事实类),子代理检索技能记忆协同优化推荐,跨会话准确率提升 40%,成本降 70%。Memori 的优势在于零供应商锁定,SQLite 导出即迁,适用于边缘部署(树莓派 50MB 内存)。
资料来源: