真实面经题目 · 原创解析

Agent 开发框架通常由哪些核心组件组成,Planner、Memory、Tools、Executor 和 Evaluator 分别负责什么?

这题考察候选人是否能把 Agent 从“调用大模型的应用”拆成可工程化的运行系统。好的回答应说明 Planner 负责把目标拆成步骤,Memory 负责保留和检索上下文,Tools 负责连接外部能力,Executor 负责按计划执行并处理状态,Evaluator 负责判断结果质量和是否需要重试、修正或终止。重点不是背组件名,而是讲清楚组件之间的数据流、控制流、失败兜底和可观测性。

出现于:字节跳动 · AI 应用开发

60 秒回答模板

我会把 Agent 框架理解成一个围绕 LLM 的闭环决策系统,核心通常包括 Planner、Memory、Tools、Executor、Evaluator,再加上状态管理、权限控制和日志观测等工程模块。Planner 把用户目标转成可执行步骤;Memory 提供短期对话状态和长期知识、偏好、历史经验;Tools 把模型能力扩展到搜索、数据库、代码执行、业务 API 等外部动作;Executor 负责调度工具、推进步骤、维护中间状态;Evaluator 判断每一步和最终结果是否满足目标,并触发重试、改写计划或人工接管。实际设计时要避免组件边界混乱:Planner 不应直接执行副作用工具,Tools 不应承担业务决策,Evaluator 不能只看模型自评,还要结合规则、测试、业务校验和用户反馈。

考点 不要只背框架名
难度 真实面经题
回答目标 让面试官相信你能从工程架构角度设计和拆解 Agent 系统,而不是只会调用现成框架。

深入解析

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、输入输出、错误和评估结论,便于复盘和持续优化。

易错点

  • 只列 Planner、Memory、Tool 等名词,不解释职责边界和协作流程。
  • 把 Agent 框架说成单次 prompt 调用,忽略执行、观察、评估、重试的闭环。
  • 过度依赖模型自评,没有规则校验、测试、日志和人工兜底。
  • 忽略工具副作用、权限、幂等和回滚,无法说明真实业务落地风险。

面试官追问

Planner 生成错计划怎么办?

可以限制计划粒度、引入任务模板、让 Evaluator 检查计划是否满足目标,也可以在关键步骤执行前做可解释预览。复杂任务可采用分层 Planner:先生成高层阶段,再逐步展开,不一次性生成过长计划。

Memory 应该什么时候写入?

不应每条信息都写入长期记忆。通常只写稳定偏好、任务结论、可复用事实和人工确认过的信息;临时工具结果留在短期状态中。写入前要做去重、摘要、敏感信息过滤和置信度标记。

Tools 如何让模型更不容易调错?

工具定义要少而清晰,schema 字段语义明确,必填项和枚举值完整,错误信息可被模型理解。还可以提供示例调用、参数校验、dry-run 结果和可恢复错误码。

Evaluator 可以完全由 LLM 做吗?

不建议。LLM 评审适合语义质量、完整性和风格判断,但事实正确性、权限、数值、代码测试、业务规则应尽量用确定性校验。高风险场景需要人工审批或外部系统确认。