Skip to content

6.1 概念题

检验你对 Agent 核心概念的理解。先自己想答案,再展开查看参考解答。


题目 1:Agent 与 Chat 的本质区别

:Agent 和普通 Chat 都基于大语言模型,它们的根本区别是什么?请从「执行模式」和「能力边界」两个角度回答。

参考解答
  • 执行模式:Chat 是「输入→输出」的单次交互;Agent 是「思考→行动→观察→反思」的循环执行
  • 能力边界:Chat 只能生成文本;Agent 能通过工具与外部世界交互(读文件、跑命令、调 API)
  • 本质:Agent 多了三种能力——工具使用、循环执行、目标追踪

题目 2:自主性选择

:以下三个场景,你分别推荐什么自主性级别?为什么?

  1. 在项目中搜索所有 TODO 注释
  2. 重构用户认证模块
  3. 删除测试环境中的过期数据
参考解答
  1. Level 4(高度自主):只读操作,无风险,Agent 可以自主完成
  2. Level 2-3(半自主到自主):重构涉及核心功能,修改需人工确认,但分析和定位可自主
  3. Level 0-1(被动或建议):涉及数据删除,即使测试环境也应人工确认

题目 3:设计模式匹配

:以下任务分别适合哪种设计模式?

  1. 调研竞争对手的产品功能,写一份分析报告
  2. 实现一个复杂的新功能模块
  3. 写一段高质量的工具函数
参考解答
  1. Plan-Execute:调研任务步骤明确,先规划(调研哪些方面)再执行(逐个调研),防走偏
  2. Plan + ReAct:先做整体规划,执行中灵活调整,应对意外依赖和设计问题
  3. Reflexion:写完后自我审查,检查边界条件和代码质量,多轮改进

题目 4:记忆层次

:Agent 在修复一个跨文件的 Bug 时,以下信息分别属于哪层记忆?

  1. "当前已修复 2/5 个文件"
  2. "用户说要用统一的错误处理格式"
  3. "上次类似的问题,我们通过添加中间件解决了"
  4. "这个项目偏好用 TypeScript"
参考解答
  1. L1 工作记忆:当前任务的中间状态
  2. L2 短期记忆:当前会话中的对话内容
  3. L3 长期记忆:跨会话的历史经验
  4. L4 用户记忆:关于用户/项目的持久偏好

题目 5:context: fork

:Claude Code 的子代理使用 context: fork 隔离运行,这意味着什么?说出两个优势和两个限制。

参考解答

优势

  1. 子代理在独立上下文中运行,不会污染主对话——大量中间结果不会挤占主对话的上下文窗口
  2. 子代理之间互不干扰,可以安全地并行执行

限制

  1. 子代理没有对话历史——必须把所有必要信息写进调度指令
  2. 只返回摘要——详细的中间过程会丢失,不利于深度调试

题目 6:失败模式识别

:以下场景分别属于哪种失败模式?

  1. Agent 添加了 try-catch 但 catch 块是空的,程序不报错了但数据没保存
  2. Agent 修改了 API 接口但没有更新调用方
  3. 页面显示「提交成功」但数据库里没有记录
参考解答
  1. #9 异常与错误处理(最常见模式)——用空 catch 吞掉异常
  2. #8 代码库感知不足——修改了一处但没更新依赖
  3. #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 层(自动化测试)——长期来看,测试是成本效益最高的防御层。


下一节:设计题 →