本文深入解析了 AI Agent 的技术栈,包括模型层、框架层、记忆层、工具层、编排与运行层、观测与评估层,并详细阐述了 Agent 的思考、动手、记事、规划等核心原理。通过一次完整的调用流程,帮助读者理解 LLM 在 Agent 中的实际应用。文章还提供了实用的技术选型建议,适合想要学习大模型开发的程序员参考。
一、先给全景:Agent 技术栈的六层楼
理解任何复杂系统,最好的办法都是分层。网络有 OSI 七层,Web 开发有前端后端数据库。Agent 也一样,可以拆成六层:

从下往上说。
L1 模型层,一切的地基。没有足够强的 LLM,上面的都是空中楼阁。2024 年之前大家基本只有 GPT-4 能选,现在不一样了:GPT-4o、Claude 4 系列、DeepSeek、Qwen3、GLM,开源闭源都有能打的。选模型看三件事:推理能力(决定 Agent 的规划质量)、上下文长度(决定能记多少事)、工具调用稳定性(决定 Function Calling 会不会抽风)。
L2 框架层,帮你把模型包装成 Agent。这一层又分两类:写代码的(LangChain、LlamaIndex)和不写代码的(Dify、Coze)。前者灵活但要编程,后者拖拽就能用,适合快速验证。注意 Coze 和 Dify 严格说不只是框架,它们把 L2 到 L5 都打包了,这也是它们上手快的原因。
L3 记忆层,解决 LLM 的健忘问题。LLM 本身是无状态的,每次调用都是一张白纸,「记住你上周说过什么」这件事要靠外部系统来做。短期记忆就是往 prompt 里塞历史对话,长期记忆一般用向量数据库(Milvus、Pinecone、Chroma),更讲究的会用 Zep、MemGPT 这类专门做 Agent 记忆的服务。
L4 工具层,Agent 的手脚。Function Calling 是模型原生的工具调用能力,MCP 是 Anthropic 推的标准化协议,浏览器自动化(Browser Use、Playwright 系)和代码执行(E2B、Docker 沙箱)是两个增长最快的工具类型。
L5 编排与运行层,管 Agent 怎么干活。单个 Agent 不需要这层,一旦涉及多步骤、多 Agent、复杂状态机,就需要 LangGraph 这样的编排框架了。CrewAI 和 AutoGen 主打多 Agent 协作,LangGraph 主打精细的状态控制。
L6 观测与评估层,告诉你 Agent 干得怎么样。Agent 最大的工程难题之一是「它为什么这样决策」,没有 trace 你就是瞎子。LangSmith、Langfuse 做调用链追踪,Ragas 做 RAG 质量评估。
这里有个初学者最容易犯的判断错误:以为选了一个框架就搞定了所有层。不是的。你用 LangChain 写 Agent,记忆还是要自己接向量库,工具还是要自己写,观测还是要自己接 LangSmith。框架只是胶水,不是全家桶。Coze 和 Dify 例外,它们是打包方案,代价是定制空间小。
二、原理一:Agent 为什么会"思考"
聊架构之前,先搞清楚最底层的问题:一个只会「预测下一个 token」的模型,怎么就表现出「思考」了?
答案藏在提示词里。2022 年 Google 那篇 Chain-of-Thought 论文发现了一个朴素的事实:你让模型「一步步想」,它就真的会一步步想,而且准确率比直接问答案高得多。
但 CoT 有个硬伤:它只能在脑子里推演,不能跟外部世界交互。算个 24 点可以,让它查今天股价就歇菜了,因为它的知识停在训练数据里。

ReAct(Reasoning + Acting)补上了这一半。思路直白得让人拍大腿:让模型交替输出「思考」和「行动」。思考的时候像 CoT 一样推理,推理出一个需要外部信息的动作,就输出一个行动指令,系统去执行,把结果喂回去,模型接着想。
关键是,这个循环的每一步,LLM 实际看到的都是同一份不断变长的文本。我直接给你看一次真实的循环里,模型收到的 prompt 长什么样:
你是一个助手。你可以使用以下工具:
search: 搜索互联网。输入:搜索关键词。
calculator: 计算器。输入:数学表达式。
使用以下格式:
Question: 用户的问题
Thought: 你现在的想法
Action: 工具名
Action Input: 工具的输入
Observation: 工具返回的结果
...(这个 Thought/Action/Observation 可以重复多次)
Final Answer: 最终答案
开始!
Question: 特斯拉现在的股价比上周涨了多少?
Thought: 我需要先查特斯拉现在的股价。
Action: search
Action Input: 特斯拉 股价
模型生成到这里,会自己停下来(因为训练时学了,生成到 Action Input 就该停)。你的代码拿到 “search” 和 “特斯拉 股价”,去调搜索 API,把结果拼进文本:
Observation: 特斯拉当前股价 $248.50,上周收盘价 $232.10。
Thought:
然后模型接着生成:
Thought: 我知道了当前股价和上周股价,需要计算涨幅。
Action: calculator
Action Input: (248.50 - 232.10) / 232.10 * 100
再执行,再拼,最后模型输出 Final Answer: 特斯拉股价比上周上涨了约 7.07%。
看明白了吗?所谓 Agent 的「思考」,就是一场精心设计的文本接龙。模型每一步生成的内容,都会被你的代码解析、执行、回填。循环的终止条件是模型自己输出 Final Answer,或者撞到你设置的最大循环次数。

这也是为什么很多 Agent 会陷入死循环:如果模型一直不输出 Final Answer,或者工具一直返回它不想要的结果,它就会一圈一圈转下去,Token 哗哗地烧。生产环境里最大循环次数和 Token 上限是必选项,不是可选项。
三、原理二:Agent 怎么"动手"
上面那种用纯文本协议驱动的 ReAct,是理解原理的最好教材,但生产环境基本没人这么写了。因为纯文本解析太脆:模型万一输出格式错了、多了个标点,你的解析器就崩了。
现在主流是 Function Calling(OpenAI 叫 tools,Claude 叫 tool use)。原理变了,本质没变。
Function Calling 的核心就一句话:你把工具的 JSON Schema 告诉模型,模型不输出自然语言的 “Action: search” 了,而是直接输出一个结构化的 tool_calls 字段。
真实的交互长这样。你发给 API 的请求里带 tools 定义:
{
"model": "gpt-4o",
"messages": [
{"role": "user", "content": "查一下特斯拉股价"}
],
"tools": [
{
"type": "function",
"function": {
"name": "search",
"description": "搜索互联网",
"parameters": {
"type": "object",
"properties": {
"query": {"type": "string", "description": "搜索关键词"}
},
"required": ["query"]
}
}
}
]
}
模型返回的不是文本,是这个:
{
"role": "assistant",
"content": null,
"tool_calls": [
{
"id": "call_abc123",
"type": "function",
"function": {
"name": "search",
"arguments": "{/"query/": /"特斯拉 股价/"}"
}
}
]
}
你的代码执行 search(“特斯拉 股价”),把结果以 tool 角色塞回 messages,再调一次 API,模型基于结果生成最终回答。整个过程没有文本解析,全是结构化的 JSON,出错率比 ReAct 文本协议低了一个数量级。

那 MCP 又是什么?
Function Calling 解决了「模型怎么调工具」,但没解决「工具从哪来」。以前每接一个外部系统,你都得自己写一套封装:接 Slack 写一套,接 Notion 写一套,接数据库再写一套。N 个 Agent 框架 × M 个外部系统,就是 N×M 的地狱。
MCP(Model Context Protocol)的思路是把「工具提供方」和「工具使用方」解耦。工具方实现一个 MCP Server,暴露自己的能力;Agent 框架作为 MCP Client 去连。任何框架连上同一个 MCP Server,就能用同一套工具。N+M 替代 N×M。
所以社区叫 MCP 是「Agent 的 USB-C 接口」,这个比喻是贴切的。USB 之前,每种设备一种接口;USB 之后,大家都用一根线。MCP 想干的就是这件事。
MCP 的架构分三层:Host(宿主应用,比如 Claude Desktop 或你的 Agent 框架)、Client(宿主里的协议客户端,和 Server 一对一连接)、Server(能力提供方,比如一个 GitHub MCP Server、一个数据库 MCP Server)。Server 可以暴露三类东西:Tools(可调用的函数)、Resources(可读取的数据,类似 GET 接口)、Prompts(预置的提示词模板)。传输层支持 stdio(本地进程)和 HTTP(远程服务)两种。

我自己的判断:Function Calling 是模型层的标准,已经站稳了;MCP 是生态层的标准,2026 年还处在早期,但势头很猛。现在写新工具,优先做成 MCP Server 形态,复用性会好得多。
四、原理三:Agent 怎么"记事"
LLM 是无状态的。这句话值得说三遍。
你上一次对话里告诉它「我叫张三」,这一次它不知道,因为每次 API 调用都是独立的请求,模型本身没有任何记忆。我们日常觉得 ChatGPT「记得」对话,那是应用层把历史消息每次都重新塞进 prompt。
这就是短期记忆的真相:所谓记忆,就是把历史对话拼进 context window。简单粗暴,但受限于两件事:窗口长度(128K token 听着多,塞长文档加几十轮对话就满了)和注意力衰减(塞得越多,模型对中间内容的关注越差,「lost in the middle」现象)。
长期记忆靠外挂。主流方案是向量检索:把要记的东西切成块,算 embedding 存进向量库,用的时候按语义相似度捞出来塞进 prompt。这就是 RAG,在 Agent 里它不只用来做知识库问答,也是长期记忆的标准实现。

但「什么该记」比「怎么记」难得多。我在项目里趟过坑:一开始无脑记所有对话,三个月后向量库里全是「今天天气怎么样」这种垃圾,检索质量直线下降。后来加了一道「记忆写入闸门」:让一个 LLM 先判断这条信息值不值得记(用户偏好、关键决定、重要事实才记),垃圾一律丢弃。
再往上一个层次是记忆整合。人脑不是简单堆记忆的,会把零散经历整合成经验。Agent 也有类似做法,比如定期让一个后台任务把近一周的记忆块聚类、总结、压缩成几条「经验」,原始细节删掉。MemGPT 和 Zep 这类记忆服务,核心价值就是把这些写入、整合、衰减的策略产品化了,不用你自己造轮子。
一句话总结记忆机制:短期记忆拼 prompt,长期记忆靠向量库,记忆质量取决于写入闸门和整合策略。
五、原理四:Agent 怎么"规划"
会思考、会动手、会记事,还差最后一块:面对复杂任务,怎么安排先后?这就是规划(Planning)。
目前四种主流模式,各有地盘。

ReAct,边想边做。 不预先定计划,走一步看一步,每步根据观察结果决定下一步。优点是灵活、容错好,某步失败了模型能自己换路。缺点是没有全局观,容易短视,做一步忘一步。适合:步骤少、路径不固定的任务,比如查资料、问答。
Plan-and-Execute,先谋后动。 先用一个规划 Agent 把整个任务拆成步骤清单,再由执行 Agent 逐步执行。优点是全局观强,长任务不容易跑偏。缺点是计划赶不上变化,中间一步失败,后续计划全要重来。适合:步骤多、结构清晰的任务,比如「调研某个行业并写报告」。
Reflexion,做完复盘。 在 ReAct 基础上加一步自我批评:每次行动后,让模型评估「我刚才做得对吗?哪里能改?」,把反思记下来指导后续行动。论文里数据很漂亮,实测对代码生成类任务提升明显。代价是每步多一次 LLM 调用,Token 消耗接近翻倍。
Tree of Thoughts,多想几条路。 不再是单线推理,而是同时展开多个推理分支,像下棋一样评估每条分支的前景,砍掉差的,保留好的。理论上最强,实践中 Token 消耗是单线的几倍到十几倍,目前主要用在数学、逻辑谜题这类「值得一掷千金」的难题上。
我的选型经验很简单:默认 ReAct,任务超过五步就上 Plan-and-Execute,代码场景加 Reflexion,ToT 等你有充足的 Token 预算再说。很多团队一上来就追最新的推理模式,其实 80% 的业务场景,ReAct 加好工具就够用了。
六、一次完整的调用流程:跟着一个请求走完全程
原理都拆完了,现在把它们组装起来,看一个真实请求怎么在六层架构里跑完全程。
场景:用户对 Agent 说「帮我看看今天 A 股科技板块怎么样,写个简报发到部门群」。

我按时间顺序走一遍,每一步说明发生在哪一层、LLM 实际收到了什么。
第 0 步,请求进来(L5 编排层启动)。 框架收到用户输入,开始组装系统 prompt。这一坨 prompt 是 Agent 的「出厂设置」:角色设定(你是一个专业的金融助手)、可用工具的 JSON Schema(stock_query、write_doc、send_message)、记忆系统捞出来的相关内容(用户上次说过「简报控制在 200 字」的偏好)、加上 ReAct 的行为指令。组装好,messages 数组初始化完成。
第 1 步,第一次 LLM 调用(L1 模型层)。 模型读完系统 prompt 和用户输入,输出一个 tool_call:调 stock_query,参数是 {“market”: “A股”, “sector”: “科技”}。注意这个决策本身:模型从一堆工具里选对了股票查询,参数也填对了格式,这就是 L1 模型推理能力的直接体现。
第 2 步,工具执行(L4 工具层)。 框架解析 tool_call,调用股票数据 API,拿到真实数据:科技板块今日涨 2.3%,成交额 1200 亿,领涨个股是某某。结果以 tool 角色追加进 messages。
第 3 步,第二次 LLM 调用。 模型看到数据,继续推理:「数据拿到了,接下来要写成简报。」输出第二个 tool_call:调 write_doc,把数据和用户的 200 字偏好组织成简报内容。这里 L3 记忆层的价值体现了:如果没有记忆里那条偏好,简报可能写 800
七、技术选型:我的实用建议
最后落到最实际的问题:你要做 Agent,技术栈怎么选?
先验证想法,别写代码。 用 Coze 或 Dify 拖一个出来。Coze 生态偏国内、插件多;Dify 开源、能私有化,企业里推得动。这个阶段你的目标是确认「这件事 Agent 到底能不能干」,不是追求完美。
要深度定制,上 LangGraph。 当你的流程复杂到拖拽平台装不下(多分支、多状态、要精细控制每一步),LangGraph 是目前最值得投入的选择。它的图状态机模型学习曲线有点陡,但一旦理解,表达力比 LangChain 老版的 AgentExecutor 强太多。
多 Agent 场景,CrewAI 入门,AutoGen/AG2 进阶。 CrewAI 的「角色 + 任务」抽象简单直接,适合做角色分工明确的流水线。AutoGen 的对话式编排更灵活,适合 Agent 之间需要反复协商的场景。
工具接入,新写的直接做 MCP Server。 老的用 Function Calling 包一层也能跑,但新工具做 MCP 形态,以后换框架不用重写。
记忆别自己造。 向量库选 Milvus(自部署)或 Pinecone(托管),记忆策略复杂了就看看 Zep。自己从零写记忆系统的投入产出比很低。
观测从第一天就接上。 Langfuse 开源自部署,LangSmith 托管省心。Agent 出了问题没有 trace,排查难度是普通后端服务的十倍。这个钱和时间不能省。
◆ 小结
-
Agent 技术栈六层:模型、框架、记忆、工具、编排、观测。框架只是胶水,不是全家桶
-
思考的本质:ReAct 就是一场文本接龙,模型输出思考,代码执行行动,结果回填,循环到收敛
-
动手的本质:Function Calling 把文本协议升级成结构化 JSON,MCP 把工具生态从 N×M 变成 N+M
-
记事的本质:短期记忆拼 prompt,长期记忆靠向量库,写入闸门决定记忆质量
-
规划四模式:ReAct 灵活、Plan-and-Execute 全局观强、Reflexion 会复盘、ToT 贵但强
-
生产 Agent 的真实调用:4 次 LLM 调用 + 3 次工具调用,每一步都要防翻车
-
选型:验证用 Coze/Dify,定制用 LangGraph,多 Agent 用 CrewAI,观测第一天就要
最后
2026 年一晃已经过半,AI 大模型的热潮不仅没有降温,反而持续升温!
金融行业用大模型做风控、医疗依靠 AI 解析影像,电商、制造、教育各行各业,都在把 AI 融入日常业务。曾经热闹的 “百模大战”,早就告别单纯比拼模型参数,正式进入落地应用时代。
现在企业疯狂紧缺一类人才:懂业务、懂 AI、能做出可上线项目的大模型开发工程师,岗位缺口大,薪资待遇十分可观。

风口再好,不如手握高薪 offer 实在。行情火热,普通人、程序员该怎样从零入门大模型,抓住这波机会?
今天整理好【2026 最新版】AI 大模型全套免费学习资源,覆盖零基础入门、项目实战、理论知识、大厂面试,从基础一路进阶。所有资料分类归档,没有多余杂料,无套路免费分享给想要入局 AI 赛道的程序员与零基础小白!
👇👇扫码免费领取全部内容👇👇

1、大模型系统化完整学习路线

2、大模型经典书籍&文档

3、AI 大模型最新行业研究报告

4、企业级实战项目 + 完整配套源码

5、大厂大模型面试真题汇总

6、这些资料真的有用吗?
这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理,现任上海殷泊信息科技CEO,其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证,服务航天科工、国家电网等1000+企业,以第一作者在IEEE Transactions发表论文50+篇,获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。
资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的技术人员,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。


这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费】

422



被折叠的 条评论
为什么被折叠?



