CodeRoadMap
首页路线题库资源库文章社区
CodeRoadMap

程序员的学习成长路线图。内容免费开放,登录后可同步路线图与课时进度。

由 程序员柏风 独立维护 · 关于作者

学习

  • 路线图
  • 课程
  • 面试题
  • 文章
  • 我

更多

  • 资源
  • 社区
  • 关于作者
  • 内容说明

© 2026 CodeRoadMap

津ICP备2026012044号-1·津公网安备12011002026155号·coderoadmap@126.com
AI 智能体进阶/课时/记忆与 RAG
RawBlame
课时目录12 节

AI 智能体进阶

  1. 01Agent 与 LLM 基础
  2. 02模型参数与推理
  3. 03提示词工程
  4. 04工具与函数调用
  5. 05记忆与 RAG
  6. 06Agent 架构模式
  7. 07框架生态
  8. 08MCP 深入
  9. 09测试与评测
  10. 10可观测性
  11. 11安全与合规
  12. 12综合练习

记忆与 RAG

短期/长期记忆、向量检索、摘要压缩。

35 分钟

记忆与 RAG

Agent 的「记忆」分 短期(对话上下文) 与 长期(外部存储)。agt-rag 讲了检索流水线;本课讲 何时写记忆、如何压缩、向量检索与摘要如何配合——补全 ai-agents 路线图 的记忆架构节点。

学习目标

  • 区分短期记忆、长期记忆、工作记忆(scratchpad)
  • 设计摘要压缩与向量检索的触发条件
  • 避免「把一切都 embed」导致的 stale 与成本

三层记忆

层存什么典型实现
短期当前会话 messages滑动窗口、截断
工作本轮计划、中间结论单独 message / Redis
长期用户偏好、项目事实向量库 + metadata
def after_turn(user_id, messages, summary_store, vector_store):
    if token_count(messages) > 12_000:
        summary = llm.summarize(messages[:-4], keep="decisions,tool_results")
        summary_store.save(user_id, summary)
        messages = [system, {"role":"user","content":summary}] + messages[-4:]
    facts = extract_durable_facts(messages[-2:])  # 如「默认用 Python」
    if facts:
        vector_store.upsert(user_id, facts, metadata={"type":"preference"})

向量检索在 Agent 中的位置

  • 知识问答:离线索引文档 → 在线 search_docs(见 agt-vectors)
  • 会话记忆:仅 embed 可复用事实,不是每句聊天都入库
  • Hybrid:关键词过滤 slug + 向量语义,降低错检索
策略适用
top_k=5 + rerank讲义、长文档
metadata 过滤多租户、按 track/项目隔离
拒答最高分低于阈值 → 不生成

摘要压缩

长调研 Agent 在读多文件后 必须压缩,否则 context 爆掉:

每 N 次 tool_result 后 → 摘要「已确认事实 / 未解决问题 / 下一步」
丢弃原始网页 HTML,只留 citation id

风险:摘要丢细节 → 关键数字错误;重要 observation 可 原文存档 到工作记忆,摘要只留指针。

练习

  • 画短期 / 工作 / 长期记忆在一轮 Agent 中的读写时机
  • 写一条规则:何种信息进向量库、何种只留 session
  • 设计「检索分数低于 0.7 则拒答」的 prompt + 代码双保险
  • 小结

    记忆不是越长越好:短期控 token,长期存可检索事实,中间层用摘要扛长任务。 下一课 Agent 架构模式,把记忆与工具编排成 ReAct、Planner 等可复用结构。

    加载本节练习…
    ← 上一课工具与函数调用下一课 →Agent 架构模式