AI Agent 面试全攻略分层记忆系统代码实战短期Redis滑窗长期向量库如何落地【免费下载链接】ai-agent-interview-guideAI Agent 面试全攻略从零到Offer包含200面试题、企业级项目(Python/Java/Go)、简历模板、STAR面试稿、哆啦A梦漫画图解项目地址: https://gitcode.com/gh_mirrors/ai/ai-agent-interview-guideAI Agent 记忆系统是面试中的高频考点短期记忆解决「会话内记住刚才聊了什么」长期记忆解决「跨会话召回用户偏好与历史事实」。本文以开源项目中的真实代码为蓝本带你用 Redis 滑动窗口 LLM 摘要压缩实现短期记忆用向量库Milvus实现长期记忆并给出 MemoryManager 统一调度方案最后附上面试官最爱追问的 5 个问答与应答要点。为什么记忆系统是 AI Agent 面试必考题大模型本身是「无状态函数」——每次请求都像第一次见面。没有记忆Agent 无法多轮一致性避免重复追问、前后矛盾长任务延续工具调用链、子目标状态跨轮保留个性化服务记住用户偏好、术语、禁忌 面试金句「短期记忆服务当下推理长期记忆服务跨会话个性化与知识」——这句话基本可以作为开场答案。分层记忆的整体架构一层管快一层管久项目中把记忆拆成两层各用最适合的存储介质层级存储介质数据特征典型场景短期记忆Redis 列表有序、强时效、Token 受限当前会话的对话历史长期记忆向量数据库无序、跨会话、语义检索用户偏好、历史关键事实核心设计思想热数据放 Redis快冷数据进向量库久由一个统一管理器负责读写调度。短期记忆实战Redis 滑窗 Token 预算短期记忆的实现见 short_term.py关键设计只有 4 点Redis List 存消息每轮对话RPUSH到stm:session:{session_id}读取用LRANGE拿全量历史顺序天然正确滑动窗口默认window_size20只保留最近 20 条消息Token 预算用tiktoken精确计数不可用时退化为len(text) // 4估算超过max_tokens4000即触发压缩双条件触发消息条数 窗口 OR 总 Token 预算任一命中就压缩Go 版本的实现思路完全一致用LPUSH LTRIM实现滑窗并挂 2 小时 TTL 自动过期可对照阅读 short_term.go。关键一步超窗时不是丢弃而是 LLM 摘要压缩这是面试中最容易拉开差距的点。很多实现直接把窗口外的消息丢掉导致「用户 20 轮前说『不要用 Python』」这类硬约束消失。项目中的做法_compress_if_needed方法保留尾部window_size // 2条最新消息对其余历史调用 LLM 生成摘要以[历史摘要]系统消息形式插回列表头部LLM 不可用时降级为截断2000 字符兜底保证主流程不被阻塞一句话答法「滑窗管长度摘要管信息密度——压缩后既控制了 Token 成本又保住了早期关键事实。」长期记忆实战向量库写入与按会话召回长期记忆实现见 long_term.py数据流是写入content → embedding 向量化 → 连同 pk / session_id / metadata 插入 Milvus召回query → embed → 带 session_id 过滤条件的 Top-K 相似度检索 → 返回 MemoryItem 列表三个工程细节值得在面试中主动提及会话隔离检索时表达式强制带session_id xxx且对单引号做了转义防止注入——多租户隔离是生产事故高发区同步 SDK 异步化Milvus SDK 是同步的代码用asyncio.to_thread包一层避免阻塞事件循环见 milvus_client.py可遗忘提供forget(memory_id)按主键硬删除满足「用户要求忘记」这类合规需求MemoryManager统一调度短长期记忆manager.py 中的MemoryManager是对外唯一入口两个方法覆盖所有场景get_context(session_id, query)并发拉取短期历史 长期 Top-5 召回组装成MemoryContext注入 Promptsave(session_id, message)新消息写入短期记忆滑窗与压缩逻辑下沉到ShortTermMemory内部自动执行 面试加分点两层读取都包了try/except任一层故障时降级为空记忆继续对话——记忆挂了不能把聊天主链路拖死这是工程化思维的体现。高频追问面试官最可能问的 5 个问题追问应答要点滑窗丢掉的早期约束怎么办硬约束应走「关键句提取」进长期记忆不能只依赖窗口长期记忆为什么用向量库语义检索能处理「换说法」匹配局限是相似≠正确精确值订单号应走关系库记忆更新怎么防脏数据主键化 memory_id 显式版本 冲突策略最新覆盖/多版本检索怎么排相关性 近期性指数衰减 重要性 三因子加权即 Generative Agents 的思路摘要会误差累积吗会用「增量在线摘要 定期全量重摘要校准」缓解完整的 20 道记忆系统面试题与标准答可直接复习文档 05-记忆系统.md。备战建议三步吃透记忆系统专题先讲机制画出「Redis 滑窗 摘要压缩 向量召回」的架构图能白板默写再讲权衡窗口大小怎么选、Token 预算怎么分配、衰减会不会误删重要记忆最后讲事故面租户串数据、敏感信息进向量库、embedding 模型升级后旧向量需重嵌入建议动手把 project-python/app/core/memory/ 下三个文件通读一遍——代码量不大但滑窗、压缩、隔离、降级这些生产细节全部到位面试时能给出「我实现过」的具体细节远比背八股有说服力 【免费下载链接】ai-agent-interview-guideAI Agent 面试全攻略从零到Offer包含200面试题、企业级项目(Python/Java/Go)、简历模板、STAR面试稿、哆啦A梦漫画图解项目地址: https://gitcode.com/gh_mirrors/ai/ai-agent-interview-guide创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考