主题
8 周 AI Agent 学习路线收官:350 篇博客与一份生产简历
一个 8 年 Java 后端,用 8 周时间把手写 ReAct、Spring AI、LangGraph4j、MCP、Dify、RAG 评估、Multi-Agent 全部走了一遍,沉淀了约 350 篇博客,最终落地了一个投产的企业级 Agent。
这篇不是教程,是收官复盘——哪些做对了,哪些砍掉了,哪些东西面试时最值钱。
一、8 周路线全景
Week 1-2 手写 Agent + Spring AI
└─ OkHttp 手撕 LLM 调用 / Function Calling / ReAct / RAG 全链路
└─ Spring AI ChatMemory / Advisor / @Tool / Qdrant
Week 3 LangGraph4j + MCP
└─ 状态图 / 条件边 / Checkpoint 持久化 / MCP 工具解耦
Week 4 Dify 低代码平台
└─ Docker Compose 私有部署 / 知识库 / 工作流 / vs LangGraph 对比
Week 5 RAG 工程化 + 评估
└─ Rerank / HyDE / Query 改写 / Ragas 三层指标 / v2 集成报告
Week 6 Multi-Agent
└─ 四种架构模式 / Planner→Searcher→Writer→Critic / CrewAI 对比 / A2A
Week 7 简历冲刺 + 学习收官
└─ 简历 v0→v2 / RAG v2 报告 / 10 模块 350 篇系统博客全部收官
Week 8 简历定稿 + 投递准备(本周)完整的文章索引见博客侧边栏 AI 应用分类。
二、最值钱的三个产出
1. 生产级 Agent:租中助手
这是整个学习路线里分量最重的东西,也是简历上唯一的生产 AI 项目。
五层架构,独立设计开发,已投产:
钉钉机器人(交互层)
↓
OpenClaw(Agent 运行时:Skill 装载 / 意图路由 / token 管理)
↓
MCP 协议工具层(订单查询、地址查询等原子能力)
↓
Dify Workflow(流程编排:意图识别 + 执行引擎 + 循环控制)
↓
ERP 系统(业务数据与状态流转)单笔退租业务从人工 5 分钟降到对话 30 秒,10 倍效率提升。
这个项目的价值不在于"用了 Dify",在于解决了几个生产环境才会遇到的问题:
- MCP 无状态 vs 业务鉴权:MCP 不传 token,OpenClaw 会脱敏敏感字段。最终用「旁路注入」从 Redis/沙箱文件读 token,不破坏协议封装
- LLM 输出不稳定:JSON 被代码块包裹、夹带解释文字、偶发非 JSON,写了解析节点多级兜底
- 意图误判:"我不想取消退租"触发取消意图——用五级优先级 + 命中即停 + 反例修复
- 幻觉阻断:工具描述里强制约束"必须调用工具获取数据,禁止自行编造"
这些问题没有一个是跑 Demo 能遇到的。
2. RAG 评估:从"感觉好"到"证明好"
用 20 条简历问答做语料,花四天做了三层量化评估。最硬的几个结论:
Rerank 生效有结构前提:recall_k 必须大于 final_k。k=3 重排 k=3 数学上必然零增益——不是 Rerank 没用,是实验设计错了。召回窗口扩到 12 再精排到 3,Hit@3 +10pt、MRR +0.162。
HyDE 补词类有效,补实体有害:"写代码几年"→假想文档"8年Java经验"→BM25 从 0 跳到 16.34;但"什么学历"→假想文档编造"上海交大 GPA 3.8"→高 IDF 噪音直接把检索带跑。
拒答 prompt 是 ROI 最高的优化:零成本,Faithfulness 从 0.859 拉到 0.952(+9.3pt)。
Faithfulness 是下限不是质量:三条拒答题模型说"资料没有"然后罗列正确的废话,每句忠实于 context,Faithfulness 0.88-1.0,实际答非所问。
详见 RAG 评估周报。
3. 350 篇系统博客
不是 8 周写了 350 篇——前期先把知识点用周博客形式沉淀,Week 7 用 learn-writer 流水线把 10 个模块的教程式文章一次性补齐。最终覆盖:
- Java 五件套(并发/JVM/Spring/MySQL/Redis)约 170 篇
- 设计模式 12 篇
- MQ / 分布式 / 微服务 / 系统设计约 130 篇
- AI 应用 40 篇
这件事的价值不在"写了多少",在于每个知识点都经过了"学→写→讲"三段。自己看懂 30%,讲懂别人才到 70%。
三、砍掉了什么
Week 7 原计划有「限流/超时/重试/熔断 + 成本控制 + Prompt 缓存」工程化专题,全部砍掉。原因:
- 这些东西对 8 年 Java 后端不是新知识,Sentinel/Hystrix/Resilience4j 都用过,面试问到用嘴说就行
- Agent 的工程化和传统微服务的工程化,模式是通的(超时、重试、熔断、降级、舱壁),换个皮而已
- 简历冲刺比再学一个框架更紧急
Week 8 原计划的 FastAPI+Docker 部署 Demo 也没做。同样的逻辑:Docker 部署对后端来说是基本功,不需要专门写个 Demo 证明。
学习路线最大的陷阱是"什么都想学"。8 周里最值钱的能力不是学了多少,是判断什么不学。
四、面试最能打的几个故事线
如果面试官只给 5 分钟,讲这三个:
故事线 1:从手写到底层框架再到低代码平台 Week 1 用 OkHttp 手撕 ReAct while 循环 → Week 2 Spring AI 的 Advisor 责任链 → Week 3 LangGraph4j 把循环画成图 → Week 4 Dify 用循环节点配置。三层走完,理解每个框架封装了什么、边界在哪。面试官问"Dify 和 LangGraph 怎么选",答案不是背特性表,是"我手写过、我对比过、我知道选型依据是团队构成和迭代节奏"。
故事线 2:RAG 效果我能量化 不是"我做过 RAG",是"我能告诉你 Rerank 在 recall_k=12 时给 Hit@3 带来 +10pt,HyDE 在口语化 query 上 MRR +0.236 但在实体 query 上有害,拒答 prompt 零成本提 9.3pt Faithfulness"。有数据、有消融、有判据。
故事线 3:生产 Agent 的工程修补 MCP 协议不传 token 怎么办?LLM 输出 JSON 不稳定怎么办?意图误判怎么修?这些问题的答案只能来自真实投产的系统,不是教程里能学到的。
五、给后来者的建议
- 先手写一遍再用框架。直接上 LangChain/LlamaIndex,你不知道框架替你做了什么、出了问题该查哪。手写一次 ReAct 循环,比看十篇架构图都管用
- RAG 一定要做评估。不评估的 RAG 优化就是瞎调参数。Ragas 三指标 + 自己构造 20 条 QA,半天就能搭起来
- Multi-Agent 别上来就用。单 Agent + 好的工具设计能解决 80% 的问题。Multi-Agent 是复杂度翻倍的方案,只在上下文真的爆炸、角色真的冲突时才上
- 有生产项目就别再堆 Demo。一个投产的项目,哪怕技术栈不花哨,也比十个 GitHub Demo 有说服力
- 写博客。不是为了当博主,是写作会逼你把"我以为我懂了"变成"我真的能讲清楚"
六、接下来
8 周学习路线结束,但事情没完。下一步是投简历、面试、根据面试反馈继续补。
博客会继续更新,方向从"系统学习"转向"面试题精选 + 生产经验复盘"。
参考:Week 1-4 周博客合集 / RAG 评估周报 / Multi-Agent 周报