01
60 秒回答模板
我会把 Agent 框架理解成一个围绕 LLM 的闭环决策系统,核心通常包括 Planner、Memory、Tools、Executor、Evaluator,再加上状态管理、权限控制和日志观测等工程模块。Planner 把用户目标转成可执行步骤;Memory 提供短期对话状态和长期知识、偏好、历史经验;Tools 把模型能力扩展到搜索、数据库、代码执行、业务 API 等外部动作;Executor 负责调度工具、推进步骤、维护中间状态;Evaluator 判断每一步和最终结果是否满足目标,并触发重试、改写计划或人工接管。实际设计时要避免组件边界混乱:Planner 不应直接执行副作用工具,Tools 不应承担业务决策,Evaluator 不能只看模型自评,还要结合规则、测试、业务校验和用户反馈。
考点 不要只背框架名
难度 真实面经题
回答目标 让面试官相信你能从工程架构角度设计和拆解 Agent 系统,而不是只会调用现成框架。
02
深入解析
01 组件边界
Planner 解决“下一步做什么”,Executor 解决“怎么把这一步跑完”,Tools 解决“能调用哪些外部能力”,Memory 解决“需要记住和取回什么”,Evaluator 解决“结果是否可靠”。边界清晰后,问题定位也更容易:计划错了看 Planner,工具参数错了看 Executor 或 Tool schema,信息缺失看 Memory,输出质量不稳定看 Evaluator。
02 控制流闭环
典型链路是用户目标进入 Planner,Planner 生成步骤或任务图;Executor 按步骤构造上下文并调用模型或工具;工具返回结果后写入状态和必要记忆;Evaluator 判断是否继续、重试、改计划或结束。这个闭环让 Agent 不只是一次 prompt,而是一个可以多轮推进、纠错和收敛的系统。
03 Memory 设计
Memory 通常分短期和长期。短期记忆保存当前任务状态、最近对话、工具返回和未完成约束;长期记忆保存用户偏好、历史案例、领域知识或可复用经验。关键取舍是召回率与污染率:记太多会挤占上下文并引入噪声,记太少会丢失关键约束,所以要有摘要、检索、过期、去重和置信度机制。
04 Tools 与安全
Tools 是 Agent 产生实际效果的地方,风险也最高。工具需要清晰 schema、参数校验、权限边界、幂等设计、超时和错误码。对写数据库、发消息、扣款、发布代码这类副作用操作,应加入审批、dry-run、回滚或补偿机制,避免模型把“看起来合理”的动作直接变成不可恢复的业务事故。
05 Evaluator 与观测
Evaluator 可以是规则校验、测试用例、检索一致性检查、业务指标检查、模型评审或人工反馈的组合。它不只是最后打分,也可以在每一步判断是否偏题、是否缺证据、是否工具失败。工程上还要记录 plan、tool call、输入输出、错误和评估结论,便于复盘和持续优化。
03
易错点
- 只列 Planner、Memory、Tool 等名词,不解释职责边界和协作流程。
- 把 Agent 框架说成单次 prompt 调用,忽略执行、观察、评估、重试的闭环。
- 过度依赖模型自评,没有规则校验、测试、日志和人工兜底。
- 忽略工具副作用、权限、幂等和回滚,无法说明真实业务落地风险。
04
面试官追问
Planner 生成错计划怎么办?
可以限制计划粒度、引入任务模板、让 Evaluator 检查计划是否满足目标,也可以在关键步骤执行前做可解释预览。复杂任务可采用分层 Planner:先生成高层阶段,再逐步展开,不一次性生成过长计划。
Memory 应该什么时候写入?
不应每条信息都写入长期记忆。通常只写稳定偏好、任务结论、可复用事实和人工确认过的信息;临时工具结果留在短期状态中。写入前要做去重、摘要、敏感信息过滤和置信度标记。
Tools 如何让模型更不容易调错?
工具定义要少而清晰,schema 字段语义明确,必填项和枚举值完整,错误信息可被模型理解。还可以提供示例调用、参数校验、dry-run 结果和可恢复错误码。
Evaluator 可以完全由 LLM 做吗?
不建议。LLM 评审适合语义质量、完整性和风格判断,但事实正确性、权限、数值、代码测试、业务规则应尽量用确定性校验。高风险场景需要人工审批或外部系统确认。