尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

Agent 记忆长期化:从短期上下文到持久知识库的架构设计

Agent 记忆长期化:从短期上下文到持久知识库的架构设计
📅 发布时间:2026/7/6 13:33:46

Agent 的记忆能力决定了它能否“越用越聪明”。没有记忆的 Agent 每次交互都是从零开始,无法记住用户偏好、历史任务和关键事实。长期记忆系统让 Agent 能够跨越会话、跨越任务,持续积累知识,从而提供更个性化、更连贯的服务。本文将探讨 Agent 记忆长期化的架构设计与工程实践。

一、Agent 记忆的三层模型从工程角度看,Agent 记忆通常分为三个层次:### 1. 短期记忆(Short-Term Memory)短期记忆保存当前对话或任务中的上下文,通常就是 LLM 的上下文窗口内容。它的特点是:- 读写速度快- 容量有限- 任务结束或会话超期后丢失pythonshort_term_memory = [ {"role": "user", "content": "帮我订一张明天去北京的高铁票"}, {"role": "assistant", "content": "好的,请告诉我您的出发城市和 preferred seat class"}, {"role": "user", "content": "从上海出发,prefer 商务座"}]text### 2. 工作记忆(Working Memory)工作记忆是当前任务中需要临时维持的关键信息。例如,Agent 在执行一个多步骤任务时,需要记住中间结果、下一步计划和待验证假设。工作记忆通常以结构化形式存储,例如:pythonworking_memory = { "task": "预订高铁票", "current_step": "查询车次", "collected_info": { "origin": "上海", "destination": "北京", "date": "2026-07-06", "seat_class": "商务座" }, "pending_questions": []}text### 3. 长期记忆(Long-Term Memory)长期记忆是跨会话、跨任务持久化的知识。它让 Agent 能够记住:- 用户基本信息和偏好- 历史任务结果和反馈- 领域知识和最佳实践- 重要的实体和关系长期记忆通常需要外部存储系统,如向量数据库、图数据库和关系数据库。## 二、长期记忆系统的架构设计### 1. 记忆写入不是每个交互都值得长期保存。写入长期记忆前需要经过筛选:-重要性评估:判断信息是否值得记忆。可以用 LLM 打分或规则判断。-去重与更新:避免重复记录相同事实,而是更新已有记忆。-摘要与压缩:将长对话压缩为关键事实,减少存储和检索成本。pythondef should_remember(message, context): prompt = f"""判断以下信息是否值得长期记忆。值得记忆的标准:- 包含用户偏好、事实或重要决策- 对未来交互有帮助- 不是临时性、可重复获取的信息信息:{message}请回答:YES 或 NO""" return llm_judge(prompt) == "YES"text### 2. 记忆表示长期记忆可以有不同的表示形式:-文本片段:原始对话或摘要,适合向量检索。-实体关系:用户、项目、偏好等实体及其关系,适合图数据库。-键值对:结构化事实,如{"key": "user.preferred_language", "value": "zh"}。-事件序列:用户行为历史,适合时序分析。### 3. 记忆检索当 Agent 处理新请求时,需要从长期记忆中检索相关信息。检索策略包括:-语义检索:用向量相似度找到与当前查询相关的记忆。-关键词检索:用 BM25 或全文搜索补充精确匹配。-图遍历:从当前实体出发,找到相关实体和事实。-时间衰减:给近期记忆更高权重,给旧记忆较低权重。pythondef recall_memories(query, user_id, k=5): vector_results = vector_store.search(query, user_id, k=k) keyword_results = keyword_index.search(query, user_id, k=k) graph_results = graph_db.query_related(user_id, query, k=k) return rerank_and_merge(vector_results, keyword_results, graph_results)text### 4. 记忆遗忘与更新长期记忆不是只增不减。需要设计:-过期机制:临时信息设置过期时间。-冲突解决:新记忆与旧记忆冲突时,如何取舍或保留多个版本。-用户控制:允许用户查看、修改、删除自己的记忆。## 三、长期记忆与 RAG、工具系统的协同长期记忆不是孤立的,它需要与 RAG 和工具系统协同工作:-RAG:提供企业知识和外部文档,长期记忆提供用户个性化信息。-工具:工具调用结果可以补充或更新长期记忆。例如,用户通过 Agent 预订了机票,Agent 应将行程信息写入记忆。-Prompt:检索到的记忆需要被恰当地组织到 prompt 中,避免信息过载。pythondef build_prompt(query, user_id): memories = recall_memories(query, user_id) rag_context = retriever.retrieve(query) prompt = f"""用户背景信息:{memories}参考资料:{rag_context}用户问题:{query}""" return prompttext## 四、工程选型建议长期记忆系统涉及多种存储技术,常见组合:-向量数据库:Milvus、Qdrant、Weaviate、Pinecone,用于语义检索。-图数据库:Neo4j、NebulaGraph,用于实体关系推理。-关系数据库:PostgreSQL、MySQL,用于结构化事实和事务性更新。-缓存:Redis,用于短期记忆和快速访问。-对象存储:S3、MinIO,用于存储原始对话和多媒体记忆。## 五、总结Agent 记忆的长期化是 Agent 从“玩具”走向“产品”的必经之路。短期记忆保证对话连贯,工作记忆支撑任务执行,长期记忆赋予 Agent 个性化和持续学习能力。构建长期记忆系统需要解决写入、表示、检索、更新和遗忘等一系列工程问题,并与 RAG、工具系统深度协同。对于希望打造真正智能 Agent 的团队来说,记忆架构的设计优先级不应低于模型选择和工具集成。

相关新闻

  • QQ群数据采集神器:3分钟批量获取精准社群信息的完整指南
  • 用 100 行代码手搓一个 MCP Server,让 LLM 直接读你本地文件
  • Spark 流式处理:从入门到实战

最新新闻

  • 深度探索C++对象模型 学习笔记 第七章 站在对象模型的尖端(1)
  • Xiaomi Cloud Tokens Extractor:解锁小米智能家居设备的专业令牌提取工具
  • Kindle Comic Converter终极指南:三步打造完美Kindle漫画阅读体验
  • 用 grill-me 推导盘前简报 MVP:12 题钉边界 + schema 收束
  • 模板基础与 SFINAE
  • 高空气象探空站目录采集:用 Python 把编号型站点资料规整入库

日新闻

  • AI智能体安全防护框架AgentGuard:从原理到实战部署指南
  • KMX63与PIC18F26K40硬件组合及低功耗设计实践
  • 基于YOLO13改进的门体检测模型:C3k2模块与PoolingFormer技术解析

周新闻

  • 基于YOLOv12的番茄成熟度智能检测系统开发
  • 终极RimWorld模组管理指南:用RimSort告别模组冲突烦恼
  • AI Agent框架开发:从理论到实践的完整指南

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号