Skip to content

AI Agent 面试题详解 ​

本系列与 AI Agent 面试问题汇总中的 191 道题一一对应。每篇标题使用汇总页中的完整题目,并采用“30 秒回答 → 机制 → 示例 → 工程边界 → 面试收束”的结构。

交付标准 ​

  • 每道题至少包含一个与答案直接相关的视觉表达。
  • 参考题按原页面正文图数量设置最低视觉预算;新增题至少一图。
  • 概念隐喻优先使用原创模型图片,精确时序、依赖与状态使用 Mermaid。
  • 所有模型图片必须通过文件、尺寸、OCR 和人工目视检查后才能进入正文。
  • 引用参考页面只用于标明题目来源和事实核对,不下载或修改原站带水印图片。

当前进度 ​

专题已完成回答题目总数已完成视觉模型图片
Agent 架构、规划与记忆25251560
工具调用、协议与 Multi-Agent27271490
RAG 与知识库35351530
Agent 框架与生产工程2323850
AI 编程与 Coding Agent2626260
大模型与 Transformer 原理24241270
模型训练、微调与对齐1616300
安全、评估、部署与成本1515330
合计1911917590

当前强制图片生成端点返回默认占位图,未将其写入正式目录。已完成页面使用可验证的 Mermaid 图解保证技术关系与视觉数量;图片端点恢复后,再按清单生成并验收原创手绘概念图。

一、Agent 架构、规划与记忆 ​

1、核心概念与设计范式 ​

  1. 什么是 Agent?它与普通大模型、Chatbot、Copilot 和 Workflow 有什么本质区别?
  2. Agent 的基本架构由哪些核心组件组成?
  3. 什么任务应该使用 Agent,什么任务使用确定性 Workflow 更合适?
  4. Workflow、Agent 和 Tool 三者分别承担什么职责?
  5. ReAct 的 Thought、Action、Observation 循环如何实现?
  6. ReAct、Plan-and-Execute、Reflection 和 Multi-Agent 有什么区别?如何选型?
  7. Agent Loop 到底在循环什么?完成、失败和中断状态如何定义?
  8. 复杂任务为什么需要拆分?如何设计任务依赖和完成条件?
  9. 如何赋予大模型规划能力,并避免计划与执行状态脱节?
  10. Agent 的反思机制如何实现?什么情况下反思只会增加成本而不能提升质量?
  11. 为什么工程实践中有时选择手写 Agent,而不是直接使用成熟框架?

2、状态、记忆与上下文 ​

  1. Agent 的短期记忆和长期记忆分别解决什么问题?
  2. 对话、事件、事实、用户偏好和任务状态应该以什么粒度保存?
  3. Agent Memory、RAG 和上下文窗口有什么区别?
  4. Agent 记忆压缩有哪些方法?如何避免摘要丢失关键约束?
  5. Agent 的上下文工程应该如何设计?
  6. 长任务中如何进行上下文压缩、状态快照和中断恢复?
  7. Agent 多轮对话状态如何管理?如何防止目标逐轮跑偏?
  8. 上下文漂移是如何产生的?如何检测、归因和治理?
  9. 哪些信息应该长期保留,哪些信息应该过期或主动遗忘?

3、循环控制与质量 ​

  1. Agent 为什么会出现路径震荡、重复调用和死循环?
  2. 如何通过最大步数、预算、重复动作检测和无进展检测终止循环?
  3. Agent 的任务幻觉、工具幻觉和结果幻觉分别是什么?
  4. 如何避免 Agent 没有执行工具却声称任务已经完成?
  5. 如何评估 Agent 的任务完成率、轨迹质量、工具正确率和恢复能力?

二、工具调用、协议与 Multi-Agent ​

1、Function Calling、MCP 与 Skill ​

  1. 什么是 Function Calling?从模型输出到函数执行的完整链路是什么?
  2. LLM 是如何学习工具调用能力的?
  3. Function Calling 能力通常如何训练?
  4. 并行 Function Calling 如何实现?如何处理调用依赖和部分失败?
  5. 什么是模型上下文协议(Model Context Protocol,MCP)?它解决了什么问题?
  6. MCP 的 Host、Client、Server、Tool、Resource 和 Prompt 分别是什么?
  7. MCP 与 Function Calling 有什么区别?二者如何协同?
  8. 什么场景使用 Function Calling,什么场景更适合 MCP?
  9. 为什么部分模型或推理模式不适合直接进行 MCP 工具调用?
  10. Skill 是什么?它与 Prompt、Tool 和 MCP 有什么区别?
  11. Function Calling、MCP 和 Skill 应该如何组合成完整能力?
  12. 什么是 A2A(Agent-to-Agent)协议?它与 MCP 有什么区别?

2、通信与工具治理 ​

  1. MCP 常见的 stdio、HTTP 和 SSE 通信方式分别适合什么场景?
  2. WebSocket、Server-Sent Events(SSE)和 WebRTC 有什么区别?
  3. 大模型网关解决了哪些鉴权、路由、限流、观测和成本问题?
  4. 工具数量很多时,Agent 如何进行 Tool Routing 并减少上下文消耗?
  5. Tool Registry 为什么是 Agent 的安全边界?
  6. 工具参数非法、调用超时、结果过大或执行失败时,Agent 如何容错?
  7. 哪些工具错误可以重试?如何通过幂等键避免重复副作用?

3、Multi-Agent ​

  1. 什么是 Multi-Agent?它与 Single-Agent 有什么区别?
  2. Multi-Agent 系统有哪些常见编排模式?
  3. 主 Agent 和子 Agent 如何传递任务、上下文、证据和结果?
  4. 什么时候应该使用子 Agent,什么时候只需要普通 Tool?
  5. 什么是 Agent-as-Tool?
  6. 如何设计多 Agent 的协作和动态切换机制?
  7. Multi-Agent 如何处理子 Agent 超时、失联和部分失败?
  8. 多个 Agent 并发修改同一状态或文件时如何解决冲突?

三、RAG 与知识库 ​

1、基础链路与数据治理 ​

  1. RAG 是什么?它主要解决大模型的哪些问题?
  2. 一个完整 RAG 系统的离线链路和在线链路分别是什么?
  3. RAG 与直接微调相比有哪些优缺点?
  4. 文档、Chunk、Embedding 和元数据通常如何存储?
  5. PDF、Word、Markdown、表格、图片和代码应该如何预处理?
  6. 文档切分应该遵循哪些原则?固定长度、递归、语义和结构化切分如何选择?
  7. Chunk 太大或太小分别有什么问题?Chunk Overlap 应该如何设置?
  8. 如何避免标题、代码块、表格和跨段语义被错误切断?
  9. RAG 知识库如何实现增量更新、版本管理和失效数据清理?
  10. 不同来源的文档发生知识冲突时,系统应该如何确定可信来源?

2、Embedding、索引与召回 ​

  1. Embedding 是什么?为什么语义相近的内容在向量空间中距离更近?
  2. 常见 Embedding 算法和模型有哪些?应该如何选择和评估?
  3. 什么是向量数据库?FAISS、Milvus、Qdrant 等方案如何选型?
  4. 向量数据库的数据规模、索引类型和性能瓶颈应该如何评估?
  5. 向量检索与关键词检索有什么区别?
  6. 纯向量检索有哪些缺陷?为什么错误码、专有名词和版本号更适合关键词检索?
  7. 什么是混合检索?BM25 与向量结果如何通过 RRF 等算法融合?
  8. 什么是多路召回?如何避免多路结果重复和分数不可比?
  9. Query Rewrite、Query Expansion 和 HyDE 分别适合什么场景?
  10. Parent-Child Retrieval 和 Small-to-Big Retrieval 解决了什么问题?

3、重排、生成与评估 ​

  1. Rerank 是什么?为什么召回之后还需要重排序?
  2. Bi-Encoder 和 Cross-Encoder 有什么区别?
  3. RAG 检索效果不好时,应该如何从语料、切分、索引、查询和重排逐层排查?
  4. 如何减少“没有召回”“召回但未使用”和“使用证据后仍答错”三类失败?
  5. RAG 中的幻觉有哪些类型?如何通过引用、拒答和忠实度约束降低风险?
  6. 如何分别评估召回、排序、上下文和最终生成效果?
  7. Recall@K、MRR、nDCG、Faithfulness 和 Answer Correctness 分别衡量什么?
  8. 如何构造 RAG 评测集,并避免只使用容易检索的正样本?
  9. 传统 RAG 与 Agentic RAG 有什么区别?
  10. 在实际落地中,RAG 最难的环节通常是什么?

4、GraphRAG ​

  1. 什么场景下应该使用图数据库或 GraphRAG 增强向量检索?
  2. GraphRAG 的实体抽取、关系构建、社区发现和查询链路是什么?
  3. GraphRAG 与传统知识图谱有什么关系?
  4. GraphRAG 和 LightRAG 应该如何选型?
  5. GraphRAG 在实体消歧、图规模、增量更新和一致性方面有哪些难点?

四、Agent 框架与生产工程 ​

1、框架与图编排 ​

  1. 常见 Agent 开发框架有哪些?应该从哪些维度选型?
  2. LangChain 的 Chain、Agent、Tool 和 Memory 分别是什么?
  3. LangChain 的底层架构和运行机制是什么?
  4. 使用 LangChain 构建 Agent 的核心步骤是什么?
  5. LangChain 如何注册工具并实现短期记忆与长期记忆?
  6. LangChain 与 LlamaIndex 有什么区别?
  7. LangChain 与 LangGraph 有什么区别?
  8. LangGraph 相比普通 Chain 在状态、循环、持久化和恢复方面有哪些优势?
  9. LangChain4j 主要解决了哪些 Java 生态问题?
  10. Deep Research 类型 Agent 的实现逻辑和适用场景是什么?
  11. Plan-and-Execute 如何落地为有向无环图(Directed Acyclic Graph,DAG)执行器?
  12. Graph Engineering 中节点、边、状态和条件路由分别表示什么?
  13. 如何实现 Checkpoint、并行执行、局部重规划和人在回路?

2、Harness 与生产治理 ​

  1. 什么是 Harness Engineering?为什么仅有 Prompt 和 Skill 仍不足以构建生产级 Agent?
  2. Prompt Engineering、Context Engineering 和 Harness Engineering 有什么区别?
  3. 如何为 Agent 划分确定性控制骨架与模型自治区域?
  4. Agent 如何进行模型路由、工具路由和级联降级?
  5. 一个 Agent Trace 至少应该记录哪些信息?
  6. 如何监控任务完成率、工具正确率、Token、延迟和成本?
  7. 线上 Agent 延迟升高时,如何通过 Trace 定位问题?
  8. 如何把线上失败样本转化为可重复执行的回归评测集?
  9. Agent 如何支持超时、重试、补偿、回滚和人工接管?
  10. 如何设计一个只能诊断、不能直接执行高危动作的数据库运维 Agent?

五、AI 编程与 Coding Agent ​

1、Vibe Coding 与工程能力 ​

  1. 什么是 Vibe Coding?它与传统 AI 辅助编程有什么区别?
  2. AI 编程能力越来越强,工程师不可替代的核心能力是什么?
  3. 哪些任务适合交给 AI,哪些任务必须由人掌控?
  4. 如何审查 AI 生成代码的业务语义、正确性、安全性和可维护性?
  5. AI 代码引发线上故障时,应该如何止血、定位和复盘?
  6. AI 编程工具的 Token 和推理成本如何控制?
  7. 如何通过模型路由、上下文管理和 Prompt Caching 降低成本?

2、Coding Agent 架构 ​

  1. Coding Agent 与普通聊天模型有什么本质区别?
  2. Coding Agent 的 ReAct 或 Agent Loop 如何运行?
  3. 为什么 Coding Agent 需要 Read、Edit、Glob、Grep 等专用工具?
  4. 为什么不能只给 Coding Agent 一个通用 Bash 工具?
  5. 子 Agent 如何隔离代码探索过程并压缩主线程上下文?
  6. 代码 Agent 的上下文窗口为什么很快耗尽?
  7. Auto-Compact 应该保留哪些约束、证据和未完成状态?
  8. 项目规则文件、历史记忆和代码索引如何帮助 Agent 理解项目?

3、代码检索、安全与规格 ​

  1. 为什么部分 Coding Agent 优先使用 Grep、Glob 和 Read,而不是向量 RAG?
  2. 代码检索和普通文档检索有什么区别?
  3. 什么场景下代码库仍然适合使用 RAG?
  4. Coding Agent 如何实现权限检查、危险命令审批和沙箱隔离?
  5. 如何防止 Agent 修改无关模块、误操作数据库或破坏 Git 历史?
  6. 什么是规格驱动开发(Spec-Driven Development,SDD)?
  7. 为什么 AI 写代码越快,越需要明确规格和验收标准?
  8. SDD 与 PRD、TDD、BDD 有什么区别?
  9. 如何将模糊需求转换为规格、计划、任务和验收标准?
  10. OpenSpec、Superpowers、gstack 等方案分别解决什么问题?
  11. 如何通过小步提交、备份、测试、灰度和回滚控制 AI 编程风险?

六、大模型与 Transformer 原理 ​

  1. 什么是大语言模型(Large Language Model,LLM)?它与传统自然语言处理(Natural Language Processing,NLP)模型有什么区别?
  2. Transformer 的整体架构是什么?Encoder 和 Decoder 分别承担什么职责?
  3. Self-Attention 的计算过程是什么?Query、Key、Value 分别有什么作用?
  4. 为什么需要 Multi-Head Attention?单头注意力有什么局限?
  5. Multi-Head Attention(MHA)、Multi-Query Attention(MQA)、Grouped-Query Attention(GQA)和 Flash Attention 分别解决什么问题?
  6. Transformer 为什么需要位置编码?没有位置编码会发生什么?
  7. 正弦位置编码、旋转位置编码(Rotary Position Embedding,RoPE)和 ALiBi 有什么区别?
  8. Encoder-Only、Encoder-Decoder 和 Decoder-Only 架构分别适合什么任务?
  9. GPT、Claude、LLaMA 等生成式模型为什么普遍采用 Decoder-Only 架构?
  10. 残差连接、Layer Normalization 和前馈网络(Feed-Forward Network,FFN)分别起什么作用?
  11. Transformer 的 O(n²) 复杂度从何而来?它对长上下文有什么影响?
  12. Transformer 存在哪些局限?Mamba、RWKV 等替代架构解决了什么问题?
  13. 大模型的分词器有什么作用?BPE、WordPiece 和 SentencePiece 有什么区别?
  14. 大模型通常经过哪些训练阶段?
  15. 什么是 Scaling Law?模型为什么会出现“涌现能力”?
  16. 混合专家模型(Mixture of Experts,MoE)是什么?DeepSeek、Qwen 等模型为什么采用 MoE?
  17. 上下文窗口为什么存在上限?为什么会出现 Lost in the Middle?
  18. 大模型生成文本时有哪些解码策略?贪心、Beam Search 和采样分别适合什么场景?
  19. Temperature、Top-K 和 Top-P 分别控制什么?如何根据任务设置?
  20. 什么是思维链(Chain of Thought,CoT)?它为什么有效,又有哪些局限?
  21. KV Cache 和 Prompt Caching 的原理是什么?它们分别减少了什么开销?
  22. 大模型量化是什么?INT8、INT4、AWQ 和 GPTQ 应该如何选择?
  23. 大模型为什么会产生幻觉?模型、数据、检索和系统层面分别如何缓解?
  24. 如何比较和选择不同的大模型?应该关注哪些能力、成本和部署指标?

七、模型训练、微调与对齐 ​

  1. Prompt、检索增强生成(Retrieval-Augmented Generation,RAG)和模型微调应该如何选型?
  2. 全量微调和参数高效微调(Parameter-Efficient Fine-Tuning,PEFT)有什么区别?
  3. LoRA 的原理是什么?除了减少训练参数,它还有哪些优点和局限?
  4. SFT、RL、RLHF、PPO、DPO、GRPO 和拒绝采样分别是什么?
  5. 监督微调(Supervised Fine-Tuning,SFT)、人类反馈强化学习(Reinforcement Learning from Human Feedback,RLHF)和直接偏好优化(Direct Preference Optimization,DPO)是什么关系?
  6. SFT 应该用于注入知识还是控制模型行为?为什么动态业务知识通常不适合直接写入模型参数?
  7. 基座模型越来越强,垂直领域微调还有哪些不可替代的价值?
  8. 哪些场景不应该进行模型微调?
  9. 如何设计高质量 SFT 数据、指令数据和偏好数据?
  10. RLHF 如何让模型学习人类或业务偏好?
  11. PPO 在 RLHF 中承担什么角色?它和 DPO 有什么区别?
  12. DPO 为什么不需要单独训练 Reward Model?
  13. 什么是 Reward Hacking?如何检测并降低奖励投机?
  14. 如何避免微调导致灾难性遗忘、能力退化或风格过拟合?
  15. 如何通过离线评测和线上指标证明微调真正带来了收益?
  16. 如何利用知识蒸馏把大模型能力迁移到小模型,并在固定场景下降低成本?

八、安全、评估、部署与成本 ​

  1. 为什么 Prompt 无法构成可靠的安全边界?
  2. 如何防御来自用户、网页、文档和工具结果的 Prompt Injection?
  3. Agent 连接数据库时,如何防止越权、敏感数据泄漏和查询幻觉?
  4. 高风险工具为什么同时需要最小权限、人工审批和幂等控制?
  5. 如何对输入、工具参数、工具结果和最终输出进行分层校验?
  6. 如何测试具有非确定性的 LLM 或 Agent 系统?
  7. LLM-as-a-Judge 有哪些偏差?如何通过 Rubric 和人工抽检校准?
  8. 大模型能力评测应覆盖哪些基准、业务和安全指标?
  9. RAG、Agent 和模型微调为什么需要不同的评测体系?
  10. 如何设计版本化评测集并防止数据泄漏和测试集污染?
  11. 大模型部署有哪些主流方案?vLLM、TGI、llama.cpp 和 SGLang 如何选型?
  12. 部署时如何权衡吞吐、首 Token 延迟、并发、显存和模型质量?
  13. 如何通过量化、缓存、批处理、模型路由和限流降低推理成本?
  14. 线上系统应该监控哪些质量、安全、延迟和成本指标?
  15. 模型、Prompt、知识库、工具和评测集应该如何进行版本管理和回滚?

参考资料 ​

ICP 备案号待补充 · Gitee 主页