很多人学 Agent 学到后面会有一种错觉: “我都懂啊,LLM、Function Calling、RAG、LangGraph、MCP、多智能体我都看过。” 但一上手做项目,还是会退化成一个“会聊天的壳”。
我自己真正走通之后,发现关键不在“看过多少概念”,而在于你有没有跨过这四个分水岭。
分水岭一:从“调用模型”到“控制模型”
最早大家都能写一个 chat.completions.create(),问题是那不叫 Agent 能力,那叫 API 使用。 真正的门槛是:你能不能把模型从“随机发挥”拉到“可控输出”。
这一步我踩过三个坑:
- 消息角色混乱:system 和 user 职责不分,导致模型行为漂移。
- 结构约束虚设:口头说“请返回 JSON”,但没有真正校验与重试。
- 上下文无治理:历史消息只叠不裁,最后模型在噪声里推理。
所以我后来把这一层当“内核工程”处理:
- 模板化调用参数
- 强约束结构输出(解析失败可恢复)
- 上下文裁剪策略可解释
这个阶段不酷,但它决定了你后面所有能力的上限。
分水岭二:从“会回答”到“会执行”(Function Calling)
Function Calling 的意义,不是多了个工具 API, 而是把 Agent 从“语言系统”升级为“行动系统”。
这里最容易“看起来懂了”——因为 demo 很容易跑通。 真正难的是闭环稳定性:
- 何时调用工具,不调用时是否能解释原因
- 参数是否可靠(类型、边界、空值)
- 工具失败后怎么办(重试/降级/中断/人工接管)
- 工具结果如何回填,避免污染后续推理
我后来把它当状态机看,而不是一次函数调用: 意图识别 → 工具选择 → 参数构造 → 执行反馈 → 再决策。 这一步打穿,Agent 才开始“做事”,不是“说事”。
分水岭三:从“脚本拼接”到“系统编排”(LangChain / LangGraph)
当你工具多了、流程长了,代码会自然腐化: prompt 到处散、状态隐式流动、排错全靠 print。
这时候框架的价值才成立。 我自己是先用 LangChain 把组件职责拆干净,再用 LangGraph 处理复杂控制流——这个先后不是教条,是复杂度驱动的。
- LangChain 解决“组件化复用”:Prompt、Memory、Tool、Chain 分层。
- LangGraph 解决“流程可控”:分支、循环、人工节点、状态追踪。
一句话: 前者让你“能扩展”,后者让你“能治理”。 没有治理能力,线上 Agent 一定会出现“偶发性失控且难复现”。
分水岭四:从“能生成答案”到“能对答案负责”(RAG + MCP + 多体协作 + 交付)
这块是多数 Agent 项目最后翻车的地方。
1)RAG 不是“接向量库”,而是证据链工程
真正问题不是“有没有召回”,而是:
- 切分是否破坏语义
- 召回是否覆盖关键证据
- 重排是否把证据顶到前面
- 拼装上下文是否引入噪声
如果你不能回答“这段结论对应哪段证据”,那不叫增强,只是加了个心理安慰层。
2)MCP 的价值是“能力标准化”,不是“再学一个名词”
项目做到一定规模后,最大痛点是工具接入成本和复用性。 MCP 本质是在做“工具协议层”: 把能力从“项目私有函数”提升为“可插拔服务”。 你会明显感到:系统开始从单体脚本转向平台化。
3)多智能体不是堆数量,是做职责分工
真正有效的多 Agent,不是 5 个 agent 一起聊天, 而是明确角色边界:规划、检索、执行、审校,各自负责各自的失效模式。
4)最后必须有交付面(比如 Streamlit)
没有交付层,你永远只能证明“我在本机跑通了”。 有了交互界面、可观测过程和人工介入点,才是可使用系统,而不是技术演示。
为什么我不建议“跳着学”
不是因为顺序神圣,而是因为这些能力存在依赖关系:
- 你没把 LLM 输出控制住,Function Calling 会放大错误。
- 你没有执行闭环,LangChain/LangGraph 只是把混乱结构化。
- 你没证据链能力,RAG 只会让幻觉更像真话。
- 你没协议层,工具生态无法扩展。
- 你没交付层,项目没有真实用户反馈回路。
所以“动态适配”的意思,不是乱序,而是根据你当前卡点回补前置能力。
如果要我用一句话概括我这条路: Agent 不是从聊天到炫技,而是从调用、执行、编排、证据、协议到交付的一次工程升级。
你把这条主线走通,框架换不换、模型换不换,影响都没那么大; 你主线没走通,学再多名词也很难摆脱 demo 感。
如果你现在也有“学了不少但总差一口气”的感觉, 我自己的建议是:别再横着刷概念,按“能力依赖”线性走。
我把这条路上踩坑和代码都整理在仓库里了:
不是那种只讲术语的内容,里面涵盖了所有我关于Agent主要技术栈的思考。
其中有配套可运行代码,也有每章详解的万字博客。 如果你感兴趣,欢迎给我个star,我们一起交流学习。