6.1 概念题
检验你对 Agent 核心概念的理解。先自己想答案,再展开查看参考解答。
题目 1:Agent 与 Chat 的本质区别
问:Agent 和普通 Chat 都基于大语言模型,它们的根本区别是什么?请从「执行模式」和「能力边界」两个角度回答。
参考解答
- 执行模式:Chat 是「输入→输出」的单次交互;Agent 是「思考→行动→观察→反思」的循环执行
- 能力边界:Chat 只能生成文本;Agent 能通过工具与外部世界交互(读文件、跑命令、调 API)
- 本质:Agent 多了三种能力——工具使用、循环执行、目标追踪
题目 2:自主性选择
问:以下三个场景,你分别推荐什么自主性级别?为什么?
- 在项目中搜索所有 TODO 注释
- 重构用户认证模块
- 删除测试环境中的过期数据
参考解答
- Level 4(高度自主):只读操作,无风险,Agent 可以自主完成
- Level 2-3(半自主到自主):重构涉及核心功能,修改需人工确认,但分析和定位可自主
- Level 0-1(被动或建议):涉及数据删除,即使测试环境也应人工确认
题目 3:设计模式匹配
问:以下任务分别适合哪种设计模式?
- 调研竞争对手的产品功能,写一份分析报告
- 实现一个复杂的新功能模块
- 写一段高质量的工具函数
参考解答
- Plan-Execute:调研任务步骤明确,先规划(调研哪些方面)再执行(逐个调研),防走偏
- Plan + ReAct:先做整体规划,执行中灵活调整,应对意外依赖和设计问题
- Reflexion:写完后自我审查,检查边界条件和代码质量,多轮改进
题目 4:记忆层次
问:Agent 在修复一个跨文件的 Bug 时,以下信息分别属于哪层记忆?
- "当前已修复 2/5 个文件"
- "用户说要用统一的错误处理格式"
- "上次类似的问题,我们通过添加中间件解决了"
- "这个项目偏好用 TypeScript"
参考解答
- L1 工作记忆:当前任务的中间状态
- L2 短期记忆:当前会话中的对话内容
- L3 长期记忆:跨会话的历史经验
- L4 用户记忆:关于用户/项目的持久偏好
题目 5:context: fork
问:Claude Code 的子代理使用 context: fork 隔离运行,这意味着什么?说出两个优势和两个限制。
参考解答
优势:
- 子代理在独立上下文中运行,不会污染主对话——大量中间结果不会挤占主对话的上下文窗口
- 子代理之间互不干扰,可以安全地并行执行
限制:
- 子代理没有对话历史——必须把所有必要信息写进调度指令
- 只返回摘要——详细的中间过程会丢失,不利于深度调试
题目 6:失败模式识别
问:以下场景分别属于哪种失败模式?
- Agent 添加了 try-catch 但 catch 块是空的,程序不报错了但数据没保存
- Agent 修改了 API 接口但没有更新调用方
- 页面显示「提交成功」但数据库里没有记录
参考解答
- #9 异常与错误处理(最常见模式)——用空 catch 吞掉异常
- #8 代码库感知不足——修改了一处但没更新依赖
- #1 UI 与行为不一致——界面状态与实际操作不同步
题目 7:MCP 的核心价值
问:MCP 解决了什么问题?如果不用 MCP,Agent 要接入一个新的数据源(比如 Jira),需要做什么?用了 MCP 之后呢?
参考解答
MCP 解决了 M×N 集成问题。不用 MCP 时,M 个 AI 应用 × N 个数据源需要 M×N 个定制集成。用了 MCP,每个应用实现一次 Client,每个数据源实现一次 Server,变成 M+N。
不用 MCP:Claude Code、Cursor、Windsurf 各自实现一套 Jira 集成 用了 MCP:Jira 实现一个 MCP Server,所有支持 MCP 的应用都能直接使用
题目 8:防御金字塔
问:防御金字塔有五层,如果你只有时间做两层,你选哪两层?为什么?
参考解答
推荐选第 2 层(架构与上下文) 和 第 5 层(人工审查):
- 第 2 层投入小(1-2 小时写 CLAUDE.md / .cursorrules),效果大(减少 40% 的问题)
- 第 5 层是最后一道防线,不可跳过——自动化测试可以部分替代,但人工审查对安全、业务逻辑和质量判断不可替代
如果时间更充裕,加上第 4 层(自动化测试)——长期来看,测试是成本效益最高的防御层。