记忆与多 Agent 面试题(M01–M20)
20 道记忆生命周期、共享状态与协作题。
说明状态归属、通信成本、错误传播与终止条件。
建议先口答 60~90 秒,再展开【追问问题】。不要背句子,要说清判断依据和取舍。
M01|State、Context、Memory、Knowledge Base 如何区分?
简明答案: State 是系统当前事实,Context 是本次给模型看的信息,Memory 是跨步骤/会话可召回信息,Knowledge Base 是外部组织知识。它们可重叠,但生命周期与责任不同。
【追问问题】
- 聊天历史属于哪个?
- 为什么不能都放向量库?
关联知识: 状态、上下文与记忆
M02|语义、情景、程序性记忆分别是什么?
简明答案: 语义记忆保存事实与偏好,情景记忆保存经历和结果,程序性记忆保存稳定规则与技能。不同类型应有不同写入、检索和过期策略。
【追问问题】
- 用户画像属于哪种?
- 失败经验怎样存?
关联知识: 记忆类型与生命周期
M03|记忆写入 Pipeline 怎样设计?
简明答案: 从对话或任务抽取候选事实,做敏感信息处理、去重、冲突检查和价值判断,再 ADD/UPDATE/DELETE/NOOP,并记录来源、时间、置信度和版本。
【追问问题】
- 谁决定写入?
- 如何避免模型猜测固化?
关联知识: 记忆写入与冲突
M04|记忆检索 Pipeline 怎样设计?
简明答案: 按 namespace 和权限过滤,再结合语义相关、时间、新鲜度、显著性与类型召回,重排后只注入少量信息,并标明来源。
【追问问题】
- Recency boost 会有什么问题?
- 用户画像是否每轮都注入?
关联知识: 记忆检索与遗忘
M05|如何处理记忆冲突?
简明答案: 保留新旧版本与来源,不直接覆盖;按用户明确纠正、权威来源、时间和置信度决策。高影响冲突请求用户确认。
【追问问题】
- 同一偏好随时间变化怎么办?
- 冲突记忆是否都进入上下文?
关联知识: 记忆写入与冲突
M06|Agent 为什么需要遗忘?
简明答案: 过期、无关和错误记忆会增加成本、隐私风险并污染决策。通过 TTL、低价值淘汰、用户删除、事件结束和定期压缩实现可控遗忘。
【追问问题】
- 删除向量够吗?
- 审计记录与删除权如何平衡?
关联知识: 记忆检索与遗忘
M07|Checkpoint 与 Memory 有何区别?
简明答案: Checkpoint 为恢复同一运行保存精确状态;Memory 为未来运行提供可选信息。Checkpoint 强调一致性和可重放,Memory 强调相关性和生命周期。
【追问问题】
- 任务完成后 Checkpoint 怎么处理?
- 哪些工具结果只存引用?
关联知识: Checkpoint 与事件溯源
M08|多 Agent 共享状态有哪些模式?
简明答案: 可用中心状态库、黑板、消息传递或事件流。中心库一致性好但耦合高,消息自治强但容易重复和乱序;选择取决于并发、审计和恢复。
【追问问题】
- 黑板模式适合什么?
- 如何防止覆盖?
关联知识: 多 Agent 通信与共享状态
M09|Manager 与 Handoff 如何选择?
简明答案: 需要统一最终答案、组合多个专家或集中 Guardrail 时用 Manager;需要专家接管对话和指令时用 Handoff。二者可混用但控制权必须清晰。
【追问问题】
- Handoff 后历史如何过滤?
- 专家能再交接吗?
关联知识: 多 Agent 编排模式
M10|黑板模式是什么?
简明答案: 多个 Agent 通过共享工作区读取问题、发布中间结果和领取任务,协调者或规则决定下一步。适合异步协作,但要解决并发、垃圾信息和权限。
【追问问题】
- 与群聊有何区别?
- 谁负责清理过期条目?
关联知识: 多 Agent 通信与共享状态
M11|多 Agent 如何分配任务?
简明答案: 按能力、权限、负载、成本和上下文需求匹配;任务合同包含输入、期望输出、deadline、预算和成功条件。复杂拆分可由 Orchestrator 提议,但系统负责验证。
【追问问题】
- 任务粒度怎么选?
- 失败后重新分配吗?
关联知识: 多 Agent 任务分配
M12|多 Agent 意见冲突如何处理?
简明答案: 先用统一证据与可执行验证器;无法验证时按领域权威、来源质量和决策责任处理,必要时转人。无限辩论或简单多数票都不可靠。
【追问问题】
- 怎样发现隐性冲突?
- 谁拥有最终决策权?
关联知识: 多 Agent 冲突与终止
M13|多 Agent 为什么会放大错误?
简明答案: 上游错误会作为可信上下文传给下游,消息摘要还可能丢失限制;更多节点增加工具、权限和停止点。需要来源标签、Schema、独立验证和预算。
【追问问题】
- 如何隔离不可信子 Agent?
- 什么时候应退回单 Agent?
关联知识: 多 Agent 冲突与终止
M14|多 Agent 如何避免死锁和活锁?
简明答案: 定义状态机、超时、租约、消息幂等和最大回合;检测等待环和重复状态,指定协调者或人工中断。仅靠提示词说不要循环不够。
【追问问题】
- 死锁与活锁区别?
- 并发 Handoff 如何处理?
关联知识: 多 Agent 冲突与终止
M15|Agent 间消息应该包含什么?
简明答案: 包含任务 ID、发送者、目标、输入引用、结构化产物、状态、错误、预算和 trace context;避免复制全部聊天和敏感信息。
【追问问题】
- 消息 Schema 如何版本化?
- 大文件怎样传?
关联知识: 多 Agent 通信与共享状态
M16|如何做多 Agent 可观测性?
简明答案: 在同一 trace 下记录每个 Agent、消息、工具和 Handoff 的 span,统计路由、等待、重复、冲突、成本与最终贡献。
【追问问题】
- 如何判断某子 Agent 无价值?
- 并行分支怎样显示?
关联知识: 多 Agent 可观测性
M17|如何评测多 Agent 系统?
简明答案: 除最终成功率,还比较单 Agent 基线、通信开销、路由正确、重复工作、错误传播、各 Agent 边际贡献和安全边界。
【追问问题】
- 如何做 Agent 消融?
- 多数 Agent 一致就算正确吗?
关联知识: 多 Agent 可观测性
M18|多 Agent 是否一定更便宜?
简明答案: 不一定。并行和专家小模型可能降低关键路径,但额外消息、协调、重复和重试常增加总 Token。应按成功任务成本与延迟实测。
【追问问题】
- 何时并行能省时?
- 如何限制团队预算?
关联知识: 成本与性能
M19|如何保护 Agent 间隐私?
简明答案: 按任务最小化共享字段,使用资源引用而非原文,跨组织时重新授权并脱敏;子 Agent 不能继承主 Agent 全部凭据。
【追问问题】
- Handoff 是否继承身份?
- 如何审计数据流向?
关联知识: 多 Agent 安全
M20|什么时候适合 Swarm/去中心化协作?
简明答案: 任务高度并行、节点自治且局部失败可容忍时可以考虑;强一致、严格合规或清晰流程通常更适合中心编排。去中心化不是默认高级方案。
【追问问题】
- 如何发现全局完成?
- 消息风暴怎么控制?
关联知识: 多 Agent 编排模式