# Agent学习教程 **Repository Path**: tbaofoot/agent-learning-tutorial ## Basic Information - **Project Name**: Agent学习教程 - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: dev - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-08-14 - **Last Updated**: 2026-08-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Agent 开发工程师面试教程 > 一套面向 Agent 开发工程师求职面试的系统教程:从大模型基础出发,深入 Agent 核心原理与 RAG,覆盖主流协议与框架,落到工程实践,最后完成面试冲刺。 ## 教程定位 本教程面向准备应聘 **Agent 开发工程师 / LLM 应用工程师 / AI 应用开发工程师** 岗位的求职者。这类岗位的面试考察高度集中在六个方向,项目实战贯穿其中,本教程逐一覆盖: | 模块 | 面试考察重点 | 对应章节 | | --- | --- | --- | | LLM 基础 | 模型工作原理、Prompt 工程、Function Calling 与结构化输出 | 第 01-03 章 | | Agent 核心原理 | Agent 架构、ReAct 执行循环、规划与反思、记忆系统、工具设计 | 第 04-08 章 | | RAG | 检索增强生成全流程、Embedding 与向量数据库、高级优化技术 | 第 09-11 章 | | 协议与框架 | MCP 协议、LangChain / LangGraph、AutoGen / CrewAI、Dify / Coze | 第 12-15 章 | | 工程实践 | 多智能体系统设计、评估与测试、生产部署与可观测性、安全与风险 | 第 16-19 章 | | 面试冲刺 | 经典论文与前沿方向、高频面试题精讲 | 第 20-22 章 | | 项目实战 | 四个由浅入深的动手项目、开源参考地图、项目讲述训练 | 第 23-27 章 | 本教程的写作原则: - **深入原理**:不做名词罗列,每个知识点都追问「为什么」,能支撑面试官层层追问。 - **面向表达**:每章末尾固定「常见误区与踩坑」和「面试高频问题与答题思路」,帮你把知识组织成说得出口的答案。 - **代码落地**:关键概念配完整可读的 Python 示例,面试能手写代码、项目能讲清实现,才是硬实力。 - **不追版本号**:框架与模型迭代极快,本教程聚焦稳定概念与演进脉络,具体 API 以官方最新文档为准。 ### 这个教程不做什么 明确边界同样重要,避免错误的期待: - **不替代官方文档**:LangChain、LangGraph、MCP SDK 等都在快速演进,教程讲概念与设计意图,动手时以官方最新文档为准。 - **不提供「背了就能过」的话术**:面试追问是层层深入的,背答案在第二层追问就会露馅。教程提供的是能支撑追问的知识结构。 - **不覆盖模型训练工程**:预训练、分布式训练、推理引擎内核属于算法/Infra 岗位范畴,本教程只在应用开发者需要理解的层面触及。 - **不承诺覆盖所有面试题**:教程覆盖高频与高价值问题,面试中遇到没见过的题是常态,掌握原理才能现场推导。 ### Agent 开发工程师面试的典型流程 了解对手怎么出题,才能针对性准备。典型面试分三轮: | 轮次 | 考察重点 | 典型问法 | 对应准备 | | --- | --- | --- | --- | | 一面(基础面) | LLM 原理、Prompt、Function Calling、编码能力 | 「讲讲 self-attention」「temperature 的作用」「手写一个工具调用解析」 | 第 01-03 章 + 第 21 章 | | 二面(项目面) | 项目深挖、Agent 原理、系统设计 | 「你的 RAG 为什么这样分块」「ReAct 循环失败了你怎么办」「设计一个客服 Agent」 | 第 04-15 章 + 第 23-27 章实战项目 | | 三面(综合面) | 工程成熟度、评估与安全、技术判断力 | 「你怎么评估 Agent 效果」「线上出了幻觉事故怎么排查」「多智能体值不值得上」 | 第 16-19 章 + 第 22 章 | 规律很明显:**一面考知识,二面考动手,三面考判断**。越往后,「为什么这样选、有没有别的方案、出了问题怎么办」越多。本教程的知识组织就是按这个递进设计的。 再往深一层,面试官最终要确认三件事:**你是否理解它为什么 work**(原理)、**你是否真的解决过真实问题**(项目)、**你是否能在生产环境可靠交付**(工程)。所有准备工作都应该围绕这三个问题展开。 ## 前置知识要求 开始学习前,建议具备以下基础(不要求精通,但要能动手): - **Python 基础**:熟悉语法、函数与类、模块管理,会用 `pip` / `venv`;了解 `asyncio` 异步基础更好。 - **大模型基本用法**:调用过任意一家 LLM 的 API(OpenAI 兼容接口即可),理解对话接口、`system` / `user` / `assistant` 角色、流式输出等基本概念。 - **基本的 HTTP / JSON 知识**:理解请求与响应、状态码、Header,能读懂 JSON 结构并用 Python 处理。 加分项(没有也可以边学边补): - 了解 Transformer 与注意力机制的大致思路; - 用过 LangChain、Dify 等任意一个应用框架或平台; - 接触过向量数据库或做过简单的知识库问答。 ### 前置知识自检清单 逐条过一遍,前四项有两条以上做不到,建议先花一周补基础再进入正文: - [ ] 能独立写一个 Python 脚本:读文件、调第三方库、把结果写成 JSON 输出; - [ ] 能说清 list、dict、函数参数传递的基本行为; - [ ] 调用过 LLM 对话接口,能解释 messages 里各角色的作用; - [ ] 知道一次 HTTP 请求由方法、URL、Header、Body 组成,能看懂 JSON 响应; - [ ] 听说过 token、上下文窗口、embedding 这几个词(不要求理解,正文会讲)。 ## 教程使用约定 为了高效使用本教程,请先了解以下约定。 ### 结构约定 - 每章文件以 `# 一级标题` 开头,紧随「本章导读」:3-5 行说明本章讲什么、为什么对面试重要; - 正文用 `##` / `###` 组织,重要结论以表格或列表给出,代码示例完整可运行; - 每章末尾固定两个小节,用法不同: - `## 常见误区与踩坑`:列举考生与工程中的高频错误,复习时用它做自查; - `## 面试高频问题与答题思路`:每题给出答题要点,先自己口头作答再看要点,切忌直接背。 ### 代码约定 - 所有示例使用 Python,完整可读,不用伪代码占位; - 凭据一律通过环境变量注入(如 `OPENAI_API_KEY`),不硬编码在代码中; - 模型调用统一基于 OpenAI 兼容接口约定,切换 `base_url` 与 `model` 即可对接大多数模型服务; - 示例中的模型名仅为演示,实际使用时替换为你环境里可用的任意模型。 ### 与官方文档的关系 教程讲概念、设计与取舍,框架与 SDK 的具体用法以官方最新文档为准。两者不一致时,以官方文档为准——这不代表教程错了,而是生态在演进;理解概念与演进脉络,正是面试追问中立于不败之地的原因。 ## 知识体系总览 七大模块的依赖关系可以用下面这张文字版知识图谱表示: ```text [01-基础篇] LLM 原理 / Prompt 工程 / Function Calling │ │ 地基:理解模型如何生成、如何被指令驱动、如何调用工具 ▼ [02-Agent 核心原理篇] 架构总览 / ReAct 执行循环 / 规划与反思 / 记忆系统 / 工具设计 │ ├────────────────────────┐ ▼ ▼ [03-RAG 与知识库篇] [04-协议与框架篇] 检索流程 / 向量化 / MCP / LangChain 与 LangGraph / 高级 RAG 优化 AutoGen 与 CrewAI / Dify 与 Coze │ │ │ 给 Agent 外接知识 │ 给 Agent 标准化的工具与编排 └───────────┬────────────┘ ▼ [05-工程实践篇] 多智能体系统 / 评估与测试 / 部署与可观测性 / 安全与风险 │ ▼ [06-面试冲刺篇] 经典论文与前沿方向 / 高频面试题(基础原理 + 工程实战) [07-项目实战篇] 贯穿第 2-6 周:手写 ReAct Agent / RAG 知识库问答 / LangGraph 业务 Agent / MCP Server + 开源参考地图 ``` 模块关系解读: - **01-基础篇是地基**。Agent 的一切行为最终都是「模型在特定 Prompt 下的生成」,不理解自回归生成、上下文窗口、Function Calling,就无法解释 Agent 为什么时灵时不灵。 - **02-Agent 核心原理篇是主干**。面试中被追问最多的是 ReAct 循环、规划反思、记忆与工具设计,这一篇决定你能否把「用过框架」讲成「理解原理」。 - **03-RAG 与知识库篇**与 **04-协议与框架篇**是 Agent 的两大扩展:前者解决「知识从哪来」,后者解决「工具怎么接、流程怎么编排」。二者互相独立,可并行学习。 - **05-工程实践篇**回答「怎么把 Demo 做成生产系统」:评估、部署、可观测性、安全。这是区分「玩具项目」与「工程经验」的分水岭,也是中高级岗位面试的重点。 - **06-面试冲刺篇**做汇总:把前五篇的知识压缩成论文要点与可直接复述的答题思路。 - **07-项目实战篇**贯穿全程:四个项目分别落地 Agent 原理、RAG、流程编排与 MCP,配开源参考地图与项目讲述训练,是二面项目深挖的主战场。 ### 各模块的面试权重与学习投入 | 模块 | 面试权重 | 难度 | 建议投入 | 特点 | | --- | --- | --- | --- | --- | | 01-基础篇 | 高 | 中 | 2 周 | 一面必考,概念密度大,是后续一切讨论的语言 | | 02-Agent 核心原理篇 | 最高 | 高 | 2 周 | 追问最深的区域,决定面试官对你「懂不懂原理」的判断 | | 03-RAG 与知识库篇 | 高 | 中 | 1 周 | 企业落地场景多,几乎必考,且常结合项目问 | | 04-协议与框架篇 | 中 | 中 | 1 周 | 考察重点是取舍与对比,不是 API 细节 | | 05-工程实践篇 | 高(中高级岗更高) | 高 | 1 周 | 区分候选人段位的关键区 | | 06-面试冲刺篇 | —— | 低 | 贯穿最后一周 | 输出训练,把知识变成答案 | | 07-项目实战篇 | 最高(二面核心) | 中 | 贯穿第 2-6 周 | 项目深挖的素材来源,边学边做 | 时间有限时的优先级:**02 > 01 > 03 > 05 > 04 > 06**(06 是汇总性质,不能跳过但压缩空间大)。07-项目实战篇不单独占用整块时间,按周计划随对应章节并行推进。 ## 学习路线建议 整体按 7 周设计,每周投入约 10-15 小时。基础好可以压缩,基础弱宁可放慢。 ### 总体周计划 | 周次 | 学习内容 | 本周产出(可检验) | | --- | --- | --- | | 第 1 周 | 第 01-02 章 | 能讲清 LLM 生成原理;写出一份结构化 prompt 并测试效果 | | 第 2 周 | 第 03 章 + 项目一启动(第 23-24 章) | 手写 Function Calling 解析;ReAct Agent 跑通最小循环 | | 第 3 周 | 第 04-06 章 | ReAct Agent 完成双工具支持;能讲清规划与反思机制 | | 第 4 周 | 第 07-08 章 + 项目二启动(第 25 章) | 给 Agent 加上记忆与错误处理;RAG 数据管道搭好 | | 第 5 周 | 第 09-15 章 + 项目三、四冲刺(第 26-27 章) | RAG 完成 rerank 与评估;LangGraph 项目跑通 interrupt;MCP Server 可被调用 | | 第 6 周 | 第 16-19 章 | 能画出多智能体方案与评估体系;项目文档补齐数据与结论 | | 第 7 周 | 第 20-22 章 | 高频题全部口头过一遍;两次模拟面试完成 | ### 阶段一:基础篇(第 1-2 周) - **学习内容**:第 01-03 章。 - **目标**:能讲清自回归生成、上下文窗口、采样参数;能写出结构化的 Prompt;能手写 Function Calling 调用并解析工具参数。 - **检验标准**:合上教程,能向别人解释「模型是怎么一句话一句话生成的」「为什么 Agent 场景用低 temperature」。 ### 阶段二:核心原理 + RAG + 框架篇(第 3-5 周) - **学习内容**:第 04-15 章。 - **目标**:能手写一个 ReAct 循环;理解记忆系统的分层设计;独立搭出带 rerank 的 RAG 流程;用 LangGraph 跑通一个有状态 Agent;理解 MCP 的协议结构与价值。 - **检验标准**:能在白板上画出 Agent 执行循环和 RAG 全流程,并指出每个环节常见的失败模式。 ### 阶段三:工程实践 + 面试冲刺(第 6-7 周) - **学习内容**:第 16-22 章。 - **目标**:掌握多智能体协作模式与评估体系;能讲清生产部署、可观测性与安全防护方案;刷完高频面试题;把项目经历打磨成可讲述的 STAR 结构。 - **检验标准**:模拟面试 45 分钟,能连续接住三轮追问而不塌方。 ### 每日时间分配建议 针对在职学习者的时间切分参考: - **工作日每天 2 小时**:1 小时读正文,1 小时动手(敲代码、做笔记卡片); - **周末每天 5-6 小时**:以实战项目为主,加当周「面试高频问题」的口头练习; - **碎片时间**:不开新知识,只复习笔记卡片与 badcase 记录。 ### 常见学习误区 - **只看不写**:读起来都懂,一动手就废。每章的代码示例必须亲手敲一遍并运行。 - **只学框架不学原理**:会用 LangGraph 但说不清 ReAct 循环,二面项目深挖必然翻车。 - **收藏代替学习**:攒了一堆资料不等于进度,本教程 + 官方文档 + 动手项目,三件事足够。 - **跳过评估章节**:大多数人只关心「怎么搭起来」,而面试官更关心「你怎么知道它有效」。第 17 章是性价比最高的差异化内容。 ### 推荐实战项目 面试中「项目深挖」是重头戏。以下 4 个项目由浅入深,建议至少完成前 3 个,每个都要能讲清**为什么这样设计、遇到什么问题、如何验证效果**。每个项目的完整动手指南(需求与验收标准、架构设计、分阶段实现代码、评估方法、开源参考与讲述要点)见 **07-项目实战篇**(第 23-27 章),其中第 23 章提供开源参考项目地图与项目档案模板: #### 项目一:不用框架手写一个 ReAct Agent - **内容**:直接调用 OpenAI 兼容接口,自己实现「思考 → 调用工具 → 观察 → 继续」的循环,支持至少 2 个工具(如搜索、计算器)。 - **实操要点**:自己定义工具描述的 JSON 结构;实现最大轮数限制防死循环;工具执行异常要把错误信息回传给模型;记录每一轮的输入输出用于调试。 - **面试价值**:证明你理解框架之下的原理,能回答「LangGraph 帮你做了什么」这类问题。 - **面试表达点**:循环终止条件怎么定、工具报错怎么处理、上下文随轮数膨胀怎么办。 #### 项目二:搭建一个带 rerank 的 RAG 知识库问答 - **内容**:文档解析 → 分块 → Embedding → 向量库检索 → rerank 重排 → 生成,并做简单的检索质量评估。 - **实操要点**:分块策略要有依据(段落语义完整性 + 重叠窗口);准备 30-50 条问答评测集;对比「有/无 rerank」「不同 top-k」的命中率变化。 - **面试价值**:RAG 是面试必考题,有完整链路与评估数据的项目远胜「调了一下 API」。 - **面试表达点**:为什么选这个分块粒度、检索 badcase 长什么样、怎么定位是分块问题还是检索问题。 #### 项目三:用 LangGraph 实现一个带 human-in-the-loop 的业务 Agent - **内容**:选一个真实业务场景(如报销审批、工单处理),用 LangGraph 建状态图,在关键节点加入人工确认(interrupt)。 - **实操要点**:状态结构显式定义(输入、中间结果、待确认项);中断与恢复的状态持久化;设计至少一条异常回退路径。 - **面试价值**:覆盖状态管理、流程编排、人工介入等高频追问点。 - **面试表达点**:哪些节点必须人工确认、状态如何持久化、流程变更时图结构怎么改。 #### 项目四:编写一个 MCP Server 并接入客户端 - **内容**:把一个自有能力(如内部数据查询、文件处理)封装成 MCP Server,暴露 tools / resources,接入支持 MCP 的客户端验证。 - **实操要点**:工具命名与描述按「写给模型看」的标准打磨;处理鉴权与错误返回;记录客户端实际调用日志,观察模型是否正确使用你的工具。 - **面试价值**:MCP 是当前生态热点,亲手写过 Server 的人很少,是明显的差异化优势。 - **面试表达点**:MCP 解决了什么「M×N 集成」问题、你的 Server 如何被模型正确选择、与直接写 Function Calling 的区别。 ## 完整目录导航 ### 01-基础篇 | 章节 | 文件 | 一句话简介 | | --- | --- | --- | | 第 01 章 | `01-基础篇/01-大模型原理入门.md` | 自回归生成、Transformer、训练三阶段与推理参数,理解 LLM 的工作方式 | | 第 02 章 | `01-基础篇/02-Prompt工程.md` | Prompt 结构化设计、思维链技巧与工程化管理方法 | | 第 03 章 | `01-基础篇/03-Function-Calling与结构化输出.md` | Function Calling 协议原理与可靠 JSON 输出的实现 | ### 02-Agent 核心原理篇 | 章节 | 文件 | 一句话简介 | | --- | --- | --- | | 第 04 章 | `02-Agent核心原理篇/04-Agent架构总览.md` | Agent = LLM + 规划 + 记忆 + 工具,建立整体架构视图 | | 第 05 章 | `02-Agent核心原理篇/05-ReAct与Agent执行循环.md` | Reason + Act 循环的原理、实现与失败模式分析 | | 第 06 章 | `02-Agent核心原理篇/06-规划与反思机制.md` | Plan-and-Execute、Reflexion 等规划与自我修正策略 | | 第 07 章 | `02-Agent核心原理篇/07-记忆系统设计.md` | 短期与长期记忆、上下文压缩与外部记忆存储设计 | | 第 08 章 | `02-Agent核心原理篇/08-工具设计与调用实战.md` | 工具描述编写、参数校验、错误处理与调用稳定性 | ### 03-RAG 与知识库篇 | 章节 | 文件 | 一句话简介 | | --- | --- | --- | | 第 09 章 | `03-RAG与知识库篇/09-RAG原理与流程.md` | 检索增强生成的完整链路:为什么需要、每个环节做什么 | | 第 10 章 | `03-RAG与知识库篇/10-Embedding与向量数据库.md` | 文本向量化原理、相似度计算与向量数据库选型 | | 第 11 章 | `03-RAG与知识库篇/11-高级RAG优化技术.md` | 分块策略、查询改写、rerank、混合检索等优化手段 | ### 04-协议与框架篇 | 章节 | 文件 | 一句话简介 | | --- | --- | --- | | 第 12 章 | `04-协议与框架篇/12-MCP协议详解.md` | Model Context Protocol 的设计理念、协议结构与开发实践 | | 第 13 章 | `04-协议与框架篇/13-LangChain与LangGraph实战.md` | 用主流框架构建有状态、可中断的 Agent 应用 | | 第 14 章 | `04-协议与框架篇/14-多智能体框架AutoGen与CrewAI.md` | 两大流行多智能体框架的设计理念、对比与实践 | | 第 15 章 | `04-协议与框架篇/15-Dify与Coze应用开发平台.md` | 低代码 Agent 平台的能力边界、适用场景与取舍 | ### 05-工程实践篇 | 章节 | 文件 | 一句话简介 | | --- | --- | --- | | 第 16 章 | `05-工程实践篇/16-多智能体系统设计模式.md` | 编排者、对等协作等典型协作模式与选型原则 | | 第 17 章 | `05-工程实践篇/17-Agent评估与测试体系.md` | 评估指标、评测集构建、LLM-as-Judge 与回归测试 | | 第 18 章 | `05-工程实践篇/18-生产部署与可观测性.md` | 部署架构、链路追踪、监控告警与成本控制 | | 第 19 章 | `05-工程实践篇/19-Agent安全与风险防护.md` | Prompt 注入、越权调用、输出审核等安全工程实践 | ### 06-面试冲刺篇 | 章节 | 文件 | 一句话简介 | | --- | --- | --- | | 第 20 章 | `06-面试冲刺篇/20-经典论文与前沿方向.md` | ReAct、Reflexion 等关键论文要点与前沿方向梳理 | | 第 21 章 | `06-面试冲刺篇/21-高频面试题-基础原理篇.md` | 原理类高频面试题集中训练与参考答案要点 | | 第 22 章 | `06-面试冲刺篇/22-高频面试题-工程实战篇.md` | 工程与项目类高频面试题集中训练与答题框架 | ### 07-项目实战篇 | 章节 | 文件 | 一句话简介 | | --- | --- | --- | | 第 23 章 | `07-项目实战篇/23-项目实战导读与开源参考.md` | 实战篇总纲:项目与知识点映射、开源项目三层阅读法、参考仓库地图与项目档案模板 | | 第 24 章 | `07-项目实战篇/24-项目实战一-手写ReAct-Agent.md` | 不用框架手写完整 ReAct 循环:三阶段实现、自建评测集与项目讲述要点 | | 第 25 章 | `07-项目实战篇/25-项目实战二-RAG知识库问答.md` | 从零搭建带 rerank 的 RAG 全链路:分块、检索、评估指标与 badcase 排查 | | 第 26 章 | `07-项目实战篇/26-项目实战三-LangGraph业务Agent.md` | 用 LangGraph 实现报销审批 Agent:状态图、interrupt 人工确认与状态持久化 | | 第 27 章 | `07-项目实战篇/27-项目实战四-MCP-Server.md` | 编写 SQLite 查询 MCP Server:工具设计、安全约束、客户端接入与调用验证 | ## 使用建议 ### 如何结合自身情况使用本教程 - **应届生 / 无相关工作经验**:严格按三阶段路线走,把 4 个实战项目做扎实。你没有生产经验可讲,项目就是唯一抓手——每个项目都要有明确的评估数据(哪怕是自建的评测集),面试时主动讲「我怎么验证它有效」。 - **后端 / 全栈转岗**:你在工程实践篇有天然优势,重点补齐 LLM 基础与 Agent 原理(第 01-11 章),把已有经验往 Agent 场景迁移:部署、可观测性、稳定性治理这些话题要能结合 Agent 特点讲出新意(如非确定性输出的测试策略)。 - **算法 / NLP 转岗**:原理篇可以快速过,把时间花在框架生态(第 12-15 章)与工程实践(第 16-19 章)。面试官会重点考察你「能不能把模型能力落成产品」,准备好从评测、成本、延迟角度谈取舍。 - **所有人通用**:每章学完后,合上教程用自己的话把「面试高频问题」回答一遍,答不顺的地方回炉重读。输出倒逼输入,比反复阅读有效得多。 ### 单章学习法:读、想、做、说 - **读**:通读正文,遇到不懂的先标记,不打断节奏; - **想**:回头处理标记点,追问每个结论的「为什么」,想不通就查资料或问模型,直到能自圆其说; - **做**:亲手敲一遍章内代码并运行,改动一个参数观察行为变化; - **说**:合上教程,口头回答本章「面试高频问题与答题思路」的全部问题,说得顺才算过关。 ### 如果只有两周时间 在职求职常常没有 7 周预算,压缩策略如下: - **第 1 周**:第 01、02、03、05 章(基础 + ReAct,面试出现频率最高的四章)+ 完成项目一。 - **第 2 周**:第 09、11 章(RAG 主干)+ 第 17、19 章(评估与安全,性价比最高的差异化内容)+ 第 21、22 章刷题。 - **取舍原则**:放弃框架篇的细节对比(能讲出「用过什么、为什么选它」即可),保住原理和项目表达。 - **底线**:再赶也要做完项目一。没有可深挖的项目,二面基本无解。 ### 学习产出模板 学习效果靠积累,建议从第一天起就维护三份产出: 1. **章节笔记卡片**:每章一张,用自己的话写「核心概念 + 为什么 + 一个高频问法」,三分钟写完,冲刺期复习极快。 2. **项目档案**:每个实战项目写一份 README,包含背景与目标、架构图、关键设计决策及理由、评估数据、已知问题与改进方向。这份 README 就是面试项目讲述的底稿。 3. **Badcase 记录**:实验中遇到的每一次模型意外行为(输出跑偏、选错工具、检索不中),记录现象、分析与对策。面试被问「遇到过什么坑」时,这是最有说服力的素材。 ### 推荐辅助资料 除本教程外,只需要以下几类官方资料(均以官方最新版本为准): - **OpenAI 兼容接口文档**:本教程示例代码基于该约定,主流模型厂商的 API 基本兼容; - **LangChain / LangGraph 官方文档**:第 13-14 章与项目三的动手参考; - **MCP 官方文档**:第 12 章与项目四的动手参考; - **经典论文原文**:第 20 章提到的 ReAct、Reflexion 等论文可直接按标题检索,读论文抓「问题 → 方法 → 实验 → 局限」主线,不抠公式; - **模型厂商技术报告**:理解工具调用、长上下文、推理模型等能力演进的一手来源; - **开源参考项目**:第 23 章整理了按项目分类的 GitHub 参考仓库清单(手写 Agent、RAG、LangGraph、MCP 各类),做项目前先读该章的「三层阅读法」。 ### 面试前一周做什么 1. **停止学新东西**,只做三件事:复习、模拟、表达。 2. **过两遍高频题**:第 21、22 章逐题口头作答,每题控制在 2 分钟内,先结论后展开。 3. **打磨项目讲述**:每个项目准备 1 分钟版本(背景、方案、结果)与深挖版本(设计取舍、失败案例、优化数据),写成逐字稿并讲出声。 4. **至少两次模拟面试**:找同事或朋友提问,重点练习「被追问时不慌」——答不上来就承认,然后给出你的分析思路。 5. **准备反向提问**:团队的 Agent 技术栈、评估体系、业务场景,问出有信息量的问题也是加分项。 6. **检查简历一致性**:教程中学到的表述要与简历项目描述对齐,避免面试时前后矛盾。 ### 面试现场小贴士 - **先结论后展开**:第一句话直接给答案,再分层解释,让面试官立刻知道你会。 - **承认不会不丢分,硬编会丢分**:Agent 工程师最忌讳「幻觉」,面试现场就是第一次考察。 - **主动引导到你擅长的项目**:回答中自然带出「这个我在某某项目里验证过」,把追问引向准备充分的区域。 - **把问题接住再拆解**:遇到大而开放的设计题,先复述确认需求边界,再分模块展开,展示的是工程思维而不是背诵。 ## 术语速查表 阅读过程中遇到陌生名词可先在此速查,详细讲解见对应章节。 | 术语 | 一句话解释 | 详见 | | --- | --- | --- | | Agent | 以 LLM 为决策核心、能自主规划并调用工具完成任务的系统 | 第 04 章 | | Token | 模型处理文本的最小单位,由 tokenizer 切分产生 | 第 01 章 | | 采样策略 | 从概率分布中选择生成 token 的方法统称 | 第 01 章 | | 上下文窗口 | 模型一次能处理的输入加输出 token 上限 | 第 01 章 | | KV Cache | 缓存历史 token 的 Key / Value,用显存换计算 | 第 01 章 | | Prefill / Decode | 推理的输入并行处理阶段 / 输出逐 token 串行生成阶段 | 第 01 章 | | Temperature | 控制生成分布尖锐程度的采样参数 | 第 01 章 | | 幻觉 | 模型生成流畅但与事实不符或无依据的内容 | 第 01 章 | | CoT | 思维链,让模型输出中间推理步骤以提升复杂任务表现 | 第 02 章 | | Few-shot | 在 prompt 中提供示例,示范期望的输入输出映射 | 第 02 章 | | 指令遵循 | 模型服从 prompt 中规则、格式与边界约束的能力 | 第 02 章 | | Prompt 注入 | 在数据中夹带指令劫持模型行为的攻击 | 第 02 / 19 章 | | Function Calling | 模型按协议输出结构化工具调用参数的能力 | 第 03 章 | | 结构化输出 | 保证生成结果符合 JSON 等指定结构的机制 | 第 03 章 | | ReAct | 推理与工具调用交替进行的 Agent 执行循环 | 第 05 章 | | Plan-and-Execute | 先生成完整计划再逐步执行的 Agent 模式 | 第 06 章 | | Reflexion | 通过自我反思失败经验改进下一次尝试的机制 | 第 06 章 | | 短期记忆 | 上下文窗口内的对话与工作状态 | 第 07 章 | | 长期记忆 | 跨会话持久化的外部记忆存储 | 第 07 章 | | 微调 | 用特定数据对模型继续训练以调整行为或能力 | 第 01 章 | | RAG | 检索增强生成,先检索外部知识再交给模型生成 | 第 09 章 | | Embedding | 把文本映射为向量,使语义相似度可计算 | 第 10 章 | | 向量数据库 | 存储向量并提供近似最近邻检索的服务 | 第 10 章 | | Rerank | 用精排模型对初筛检索结果重新排序 | 第 11 章 | | MCP | Model Context Protocol,模型连接工具与数据的标准协议 | 第 12 章 | | Human-in-the-loop | 在关键节点暂停流程等待人工确认的设计 | 第 13 章 | | 多智能体 | 多个 Agent 分工协作完成任务的系统形态 | 第 14 / 16 章 | | LLM-as-Judge | 用模型给另一模型的输出打分的评估方法 | 第 17 章 | | TTFT | Time To First Token,首 token 延迟 | 第 18 章 | | 可观测性 | 让 Agent 内部执行链路可见、可追踪、可诊断的能力 | 第 18 章 | ## 常见问题(FAQ) **Q:必须用 Python 吗?我用 TypeScript / Java。** 教程示例统一用 Python,因为它是 Agent 生态的第一语言。面试考察的是原理与设计,语言不是硬门槛,但建议至少能读懂 Python 示例;若你的目标团队技术栈不同,用熟悉的语言复刻项目即可,讲述时说明语言选型原因。 **Q:没有付费模型 API 还能做项目吗?** 可以。多家厂商提供免费额度,开源模型也可通过本地推理工具暴露 OpenAI 兼容接口。教程代码只需换 `base_url` 与 `model`。注意:用开源模型时,面试可以顺势聊「为什么这样部署、量化与成本」,反而是加分项。 **Q:需要背论文吗?** 不需要逐篇精读。把 ReAct、Reflexion、RAG 等代表性工作记成「解决什么问题 → 方法主线 → 效果与局限」三段式,并能与自己的项目挂钩即可。面试官要的是理解,不是复述。 **Q:教程内容和最新框架文档不一致,以谁为准?** 以官方文档为准。教程刻意不追版本,讲的是稳定概念与设计取舍——这正是面试追问考察的东西。发现不一致时,把它当成理解演进脉络的机会。 **Q:项目一定要做得很大很完整吗?** 闭环大于规模。一个有明确设计取舍、有评测数据、能讲清失败与改进的小项目,远胜一个庞大但说不清细节的半成品。四个推荐项目按最小闭环做即可。 **Q:时间实在不够,优先级最高的单一内容是什么?** 项目一(手写 ReAct Agent)加第 05 章、第 09 章。项目深挖与 ReAct、RAG 原理题是出现频率最高的两类问题,这一组合的投入产出比最高。 ## 版本说明 - 当前版本:v1.2,全 27 章齐备; - 更新记录: - 2026-08(v1.2)新增 **07-项目实战篇**(第 23-27 章):基于 GitHub 与全网调研,为四个推荐项目补齐完整动手指南——需求与验收标准、架构设计、分阶段实现代码(均经语法校验与桩环境运行验证)、评估方法、开源参考仓库地图与 STAR 讲述要点;README 同步更新目录导航、知识图谱与学习权重表; - 2026-08(v1.1)完成一轮联网调研后的内容更新——补充 2024 下半年至 2026 年的生态演进(MCP 规范演进与 A2A v1.0、LangChain/LangGraph 1.0、AutoGen 至 Microsoft Agent Framework 的格局变化、Agentic RAG 与 Contextual Retrieval、推理模型与约束解码、Letta/Mem0/Zep 记忆框架、多智能体实践之争、OWASP LLM/Agentic 清单与真实安全事件等),各章同步丰富业务案例、类比与新增面试题; - 更新策略:教程不追框架与模型的具体版本号,仅在稳定概念或生态格局发生实质变化时修订; - 代码示例:均为语法完整的 Python 代码,按文内说明安装依赖即可运行; - 阅读顺序:建议按章节编号顺序学习,各章一句话简介见「完整目录导航」。 祝面试顺利。