尧图精选

让大模型拥有长期记忆:cgft-llm AI记忆与上下文管理系统设计全解析

🕒 发布时间:2026/10/2 20:51:05 📁 来源:尧图网络
让大模型拥有长期记忆cgft-llm AI记忆与上下文管理系统设计全解析【免费下载链接】cgft-llmcgft-llm 是一个学习大语言模型LLM开发的开源资源。它提供代码、文档和视频教程帮助用户通过实践掌握前沿核心 LLM 技术项目地址: https://gitcode.com/echonoshy/cgft-llmcgft-llm 开源仓库中的「AI记忆与上下文管理」专题完整拆解了一套让大模型LLM拥有长期记忆的 Agent 系统从记忆分类、混合检索、语义压缩到三层上下文组装帮助新手快速看懂 AI 记忆系统如何落地。一、为什么大模型需要长期记忆打开任意一个聊天机器人关掉窗口再打开它就不认识你了。这是因为LLM 本身是无状态的——每次请求只处理当前上下文窗口内的内容一旦对话超过窗口上限早期信息就会被丢弃。要做出越用越懂你的 AI 助手必须解决三个核心问题痛点说明 上下文窗口有限长对话超出 Token 上限后早期信息丢失 跨会话连续性没有记忆每次对话都从零开始 个性化不足无法积累用户偏好回复永远千人一面cgft-llm 的方案是给 AI 配一个持久、可检索、会进化的记忆系统而不是把它当成一个无状态对话窗口。 完整设计蓝图见01-agent-sys/memory-context/memory.html二、三层上下文架构一次对话如何组装记忆系统每次响应用户时会从三个层次组装上下文注入 LLM┌─────────────────────────────────────────┐ │ 第1层 Evergreen 常青记忆始终注入 │ │ 用户的长期事实偏好、关系、目标 → 系统提示词 │ ├─────────────────────────────────────────┤ │ 第2层 Knowledge 知识检索按相关性检索 │ │ 混合搜索召回最相关的历史知识 → 系统提示词 │ ├─────────────────────────────────────────┤ │ 第3层 Session 会话上下文近期未压缩消息 │ │ 保持当前对话连贯 → 作为 Messages 历史 │ └─────────────────────────────────────────┘三层分工一目了然Evergreen 常青记忆如用户是一名后端工程师、用户偏好简洁回复。全量注入无需搜索。Knowledge 知识检索从统一知识库中按当前问题做混合搜索取最相关的 Top-K 片段。Session 会话上下文当前会话尚未压缩的消息保证即时连贯性超阈值自动触发压缩。 这样设计的妙处长期信息永远在场历史信息按需召回近期对话原样保留——三层互补既不浪费 Token又不会失忆。三、四种记忆类型把对话变成结构化知识对话产生的原始消息经提取器加工后会变成四类可检索的知识条目记忆类型英文作用示例 情节记忆Episode对一段对话的叙事性总结类似人类回忆用户讨论了周末去杭州旅行的计划 事件日志Event提取出的原子事实独立可检索用户的生日是 3 月 15 日 前瞻预测Foresight推断出的未来事件附时间窗口与证据链用户下周可能请假有医院预约 常青记忆Evergreen长期稳定事实始终注入上下文用户养了一只叫小橘的猫所有条目统一存储在knowledge_entries知识表中写入前会向量化1024 维 embedding支持后续语义检索。四、混合检索向量 全文 时间衰减 MMR记住了只是第一步关键是如何精准找回。系统采用四步混合检索流水线1️⃣ 双路召回向量搜索查询向量化后做余弦相似度匹配擅长意思相近但用词不同全文搜索基于 PostgreSQL 的 tsvector/ts_rank擅长精确关键词命中2️⃣ 分数融合score 0.7 × 向量相似度 0.3 × 全文排名3️⃣ 时间衰减score × exp(-ln(2)/30 × 记忆年龄天数) # 半衰期 30 天记忆不会被删除但一个月前的权重降至 50%两个月前降至 25%——新鲜记忆自然获得更高优先级。4️⃣ MMR 重排序在相关性基础上惩罚与已选结果过于相似的条目兼顾相关性 多样性最终输出 Top-K默认 10 条。这套向量全文的混合策略正是 RAG 知识库的核心思路可与仓库中的 llama-index RAG 实战 和 rag-knowledge-base 高效 RAG 知识库 对照学习。五、记忆生命周期与语义压缩Token 不够用了怎么办一条记忆从诞生到被检索经历完整生命周期产生 → 提取 → 存储 → 检索 对话边界检测 三提取器并发 向量化写入 混合搜索召回 生成 MemCell (情节/事件/前瞻) PostgreSQL 注入对话上下文而当会话消息 Token 数超过阈值64000时语义压缩Semantic Compaction自动触发对会话加行级锁防止并发重复压缩消息按 20 条分段并行调用 LLM 生成摘要创建compaction_summary摘要消息原消息标记is_compactedtrue压缩后早期对话浓缩为摘要保留在上下文里——既省下 Token又不丢失关键信息。后台压缩采用 fire-and-forget 异步任务完全不阻塞用户响应。 数据流细节见01-agent-sys/memory-context/architecture.html六、工程实践这套系统是怎么搭起来的从 工程设计文档 可以看到几个值得学习的工程决策设计点实现方式技术栈Python 3.13 FastAPI PostgreSQL 17 pgvector向量与关系数据统一存储免去独立向量数据库可插拔 ProviderLLM / Embedding 通过工厂模式热插拔本地 vLLM 与云端 API 同一套 OpenAI 兼容协议并发安全SELECT ... FOR UPDATEskip_locked行级锁杜绝重复压缩异步任务压缩、记忆提取均为后台任务API 立即返回 task_id前端轮询进度双语提示词prompts/en 与 prompts/zh 镜像组织配置一键切换提取语言整体架构为React 前端 ⇄ FastAPI 后端 ⇄ PostgreSQLpgvector ⇄ LLM/Embedding 服务前后端通过 SSE 流式渲染聊天。七、配套学习资料导航 想深入这套 AI 记忆与上下文管理系统建议按以下顺序阅读仓库资料 记忆与上下文核心设计01-agent-sys/memory-context/memory.html️ 项目架构与数据流01-agent-sys/memory-context/architecture.html⚙️ 工程设计技术选型/并发控制01-agent-sys/memory-context/engineering.html Agent 服务架构总览01-agent-sys/agent-service-architecture.html 关联实战llama-index 实现 RAG、构建高效 RAG 知识库八、写在最后大模型的记忆不是玄学而是一套清晰的工程体系分类存储四种记忆类型精准召回混合检索空间管理语义压缩分层注入三层上下文。cgft-llm 把这个体系从设计到落地完整开源了出来对想入门Agent 记忆系统设计、LLM 上下文管理、RAG 检索的同学来说是一份难得的可阅读、可复现的完整教材。动手 clone 下来边读边改你也能让自己的大模型应用过目不忘。【免费下载链接】cgft-llmcgft-llm 是一个学习大语言模型LLM开发的开源资源。它提供代码、文档和视频教程帮助用户通过实践掌握前沿核心 LLM 技术项目地址: https://gitcode.com/echonoshy/cgft-llm创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
上一篇/下一篇内容由系统自动关联 返回资讯列表 →