AI Agent 的四根支柱:LLM、工具、记忆与规划是如何协同的

AI Agent 的四根支柱:LLM、工具、记忆与规划是如何协同的

很多人第一次接触 AI Agent 时,脑海里蹦出的第一个词往往是「大模型」。似乎只要接上一个大语言模型,再让它能调几个 API,一个「智能体」就诞生了。但真正跑起来之后你很快会发现:任务执行到一半,模型忘了前面做过什么;工具调用的 JSON 参数填错;复杂目标永远拆不成可以落地的步骤。这些问题都指向同一个结论------Agent 不是「大模型 + 几个函数」的拼装,而是一个由多个组件精密协作的系统工程。

本文就从头拆解一下,一个能自主完成任务的 Agent,底层到底由哪些核心组件构成,它们各自负责什么,又是如何串成一条完整工作链的。

LLM:负责决策的「大脑」

LLM 是整个 Agent 的中枢。用户的指令、工具返回的结果、从记忆里调出来的历史信息,最终都要经过 LLM 来理解和决策。它唯一要回答的问题是:下一步该做什么?是继续推理、调用某个工具,还是已经可以给出最终答案。没有它,其余组件只是一堆没有指挥的零件。

不过,一个容易被忽略的关键是 System Prompt(系统提示词)。你可以把它理解为给「老板」的一份岗位说明书,在 Agent 开工之前就定义好了它的角色、行为边界和输出格式。比如一个客服 Agent 的 System Prompt 里会写「只回答产品相关问题,不确定就说不确定,不要编造答案」。这段话看起来简单,却直接决定了 Agent 的「人格」和准则,工程实践中,System Prompt 的调优往往占据相当一部分开发时间。

另一个更实际的问题是选模型。Agent 需要多步决策,模型的推理能力直接决定了它能不能正确拆解任务、选对工具。近年来专门为推理优化的模型(Reasoning Model)越来越多,比如 OpenAI 的 o1/o3 系列、DeepSeek-R1,它们在复杂任务拆解上表现更好,但代价是延迟更高、token 消耗更大。因此成熟的工程做法通常是「大小模型搭配」:用强推理的大模型做核心决策,用更快更便宜的小模型做意图分类、格式提取这类简单活。此外,工具调用的稳定性(生成的 JSON 是否规范)和上下文窗口大小,也是选型时必须考量的硬指标。这一「大模型 + 规划 + 记忆 + 工具」的架构划分,最早可追溯到 OpenAI 应用研究主管 Lilian Weng 于 2023 年提出的经典框架。

工具系统:连接外部世界的「接口」

LLM 本质上是一个纯粹的语言处理器,它不能上网、不能读文件、不能执行代码。这些限制都要靠工具来突破。搜索引擎、数据库查询、代码执行器、发邮件的 API,任何能被函数封装的能力,都可以变成 Agent 的工具。

工具的定义格式非常纯粹:只有「名字、描述、参数说明」三件事,没有任何执行逻辑。模型读了这份「说明书」,决定该调哪个工具、参数填什么,把决策以 JSON 形式返回,再由你的代码真正去执行,最后把结果回传给模型。这个「决策与执行分离」的设计,是理解 Agent 工作方式的关键,也是面试里最容易被追问的点。

这里有一个被严重低估的细节:工具描述(description)的质量直接影响 Agent 的表现。模型是依据描述来判断「什么时候该用这个工具」的。如果描述只写了含糊的「查询数据」,模型可能在用户问天气时也跑去查数据库;而写成「查询公司内部销售数据库,支持按日期、产品类别筛选」,模型就能精准判断调用时机。工具描述的调优重要性,不亚于 prompt 工程。

当工具越来越多,标准化就成了刚需。Anthropic 在 2024 年底提出的 MCP(Model Context Protocol,模型上下文协议)正是为了解决这一问题。它基于 JSON-RPC,把能力标准化为三类:Tools(会改变外部世界的操作)、Resources(只读的数据源)、Prompts(预定义的提示词模板),并采用 Host、Client、Server 三层架构。工具提供方只要按 MCP 标准实现一个 Server,任何支持 MCP 的 Agent 都能自动发现和调用。它就像工具世界的「USB-C 接口」,插口标准统一了,什么设备都能连。2025 年 12 月,Anthropic 把 MCP 捐给了 Linux 基金会旗下的 Agentic AI Foundation,生态进一步壮大。到了 2026 年 7 月发布的 MCP 2.0 规范,更是通过「无状态化」大幅简化了 LLM 与外部工具、数据的集成路径,让工具接入的门槛进一步降低。

记忆系统:让 Agent 不「失忆」

记忆系统分两个层次,可以类比人的记忆来理解。

短期记忆是当前这轮任务的上下文,装在 context window 里,相当于人的「工作记忆」------容量有限,任务结束就清空。Agent 在一次执行中靠它记住中间状态:第一步搜到了什么,第二步的执行结果是什么。

长期记忆则通常用向量数据库实现,把重要信息 embedding 之后存起来,需要时再做语义检索。它容量大、可以跨天保留,但需要主动「回忆」才能调出。借用认知科学的分类来理解长期记忆的组织方式:语义记忆存事实性知识(比如「用户是金融行业从业者」),情景记忆存具体经历(比如「上次退款查询发现订单已过退款期」),程序性记忆则沉淀「怎么做事」的方法论(比如处理退款的标准流程),让 Agent 下次碰到类似任务时能直接套用高效流程。

记忆系统在工程实践中藏了不少坑。短期记忆最大的问题是上下文窗口有限,一个复杂任务跑十几步,每步的工具返回都可能塞爆上下文。解决办法无非是摘要压缩或滑动窗口,但无论哪种都会丢失信息,如何在「记得够多」和「不撑爆上下文」之间取舍,是记忆工程最核心的设计难题。长期记忆的难点则在于「什么该存、什么不该存」。比较好的做法是在存入前做一轮重要性评估,只持久化真正有价值的信息。此外还有记忆衰减(Memory Decay)机制------给每条记忆加时间权重,越久远的权重越低,检索时自然排在后面,避免 Agent 被一堆过时信息淹没。

规划模块:把复杂目标拆成步骤

简单任务一步就能完成,但面对「帮我写一份竞品分析报告」这种目标,Agent 必须先把它拆解成搜索资料、整理数据、对比分析、撰写报告等子步骤,这就是规划模块的职责。

规划模块的底层依赖 LLM 的推理能力,提升推理能力有几个递进的技术手段。最基础的是 CoT(Chain of Thought,思维链),核心思想是「把思考过程写出来」,让模型在输出最终答案前展开中间步骤。因为 LLM 的 token 生成是逐步进行的,每一步的输出会成为下一步的输入,展开中间步骤等于给了模型更多「思考空间」。在此基础上还有 ToT(Tree of Thoughts,思维树),它在每个推理节点展开多个可能分支并评估质量,选最优路径继续,适合创造性思考或复杂决策,但计算成本更高。

有了这些推理技术打底,规划模块在实际运作中有两种主流模式。一种是「先规划后执行」的 Plan-and-Execute,先让 LLM 输出完整步骤列表再按顺序执行,结构清晰、便于人工审核,但中途结果偏离预期时需要重新调整。另一种是「边执行边规划」的 ReAct,每走一步就根据当前结果重新思考下一步,灵活性极高,但容易「走偏」,因为每一步都是局部最优决策。在实际工程里,成熟的 Agent 很少只押一个范式,更常见的做法是三者叠加:局部推理用 CoT 提升思考质量,具体执行用 ReAct 做动态交互,全局调度用 Plan-and-Execute 管任务拆解与重规划。

四个组件如何协同:一个精简的运行闭环

把四个组件拼起来,Agent 的核心节奏其实是一段很简洁的循环:规划 → 决策 → 执行 → 结果存入记忆 → 再决策,直到任务完成。下面这张流程图可以直观地看到整个协作链路:
#mermaid-svg-vp2C9k4aPCIRQFHe{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-vp2C9k4aPCIRQFHe .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-vp2C9k4aPCIRQFHe .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-vp2C9k4aPCIRQFHe .error-icon{fill:#552222;}#mermaid-svg-vp2C9k4aPCIRQFHe .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-vp2C9k4aPCIRQFHe .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-vp2C9k4aPCIRQFHe .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-vp2C9k4aPCIRQFHe .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-vp2C9k4aPCIRQFHe .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-vp2C9k4aPCIRQFHe .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-vp2C9k4aPCIRQFHe .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-vp2C9k4aPCIRQFHe .marker{fill:#333333;stroke:#333333;}#mermaid-svg-vp2C9k4aPCIRQFHe .marker.cross{stroke:#333333;}#mermaid-svg-vp2C9k4aPCIRQFHe svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-vp2C9k4aPCIRQFHe p{margin:0;}#mermaid-svg-vp2C9k4aPCIRQFHe .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-vp2C9k4aPCIRQFHe .cluster-label text{fill:#333;}#mermaid-svg-vp2C9k4aPCIRQFHe .cluster-label span{color:#333;}#mermaid-svg-vp2C9k4aPCIRQFHe .cluster-label span p{background-color:transparent;}#mermaid-svg-vp2C9k4aPCIRQFHe .label text,#mermaid-svg-vp2C9k4aPCIRQFHe span{fill:#333;color:#333;}#mermaid-svg-vp2C9k4aPCIRQFHe .node rect,#mermaid-svg-vp2C9k4aPCIRQFHe .node circle,#mermaid-svg-vp2C9k4aPCIRQFHe .node ellipse,#mermaid-svg-vp2C9k4aPCIRQFHe .node polygon,#mermaid-svg-vp2C9k4aPCIRQFHe .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-vp2C9k4aPCIRQFHe .rough-node .label text,#mermaid-svg-vp2C9k4aPCIRQFHe .node .label text,#mermaid-svg-vp2C9k4aPCIRQFHe .image-shape .label,#mermaid-svg-vp2C9k4aPCIRQFHe .icon-shape .label{text-anchor:middle;}#mermaid-svg-vp2C9k4aPCIRQFHe .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-vp2C9k4aPCIRQFHe .rough-node .label,#mermaid-svg-vp2C9k4aPCIRQFHe .node .label,#mermaid-svg-vp2C9k4aPCIRQFHe .image-shape .label,#mermaid-svg-vp2C9k4aPCIRQFHe .icon-shape .label{text-align:center;}#mermaid-svg-vp2C9k4aPCIRQFHe .node.clickable{cursor:pointer;}#mermaid-svg-vp2C9k4aPCIRQFHe .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-vp2C9k4aPCIRQFHe .arrowheadPath{fill:#333333;}#mermaid-svg-vp2C9k4aPCIRQFHe .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-vp2C9k4aPCIRQFHe .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-vp2C9k4aPCIRQFHe .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-vp2C9k4aPCIRQFHe .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-vp2C9k4aPCIRQFHe .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-vp2C9k4aPCIRQFHe .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-vp2C9k4aPCIRQFHe .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-vp2C9k4aPCIRQFHe .cluster text{fill:#333;}#mermaid-svg-vp2C9k4aPCIRQFHe .cluster span{color:#333;}#mermaid-svg-vp2C9k4aPCIRQFHe div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-vp2C9k4aPCIRQFHe .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-vp2C9k4aPCIRQFHe rect.text{fill:none;stroke-width:0;}#mermaid-svg-vp2C9k4aPCIRQFHe .icon-shape,#mermaid-svg-vp2C9k4aPCIRQFHe .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-vp2C9k4aPCIRQFHe .icon-shape p,#mermaid-svg-vp2C9k4aPCIRQFHe .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-vp2C9k4aPCIRQFHe .icon-shape .label rect,#mermaid-svg-vp2C9k4aPCIRQFHe .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-vp2C9k4aPCIRQFHe .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-vp2C9k4aPCIRQFHe .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-vp2C9k4aPCIRQFHe :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 调用工具
任务完成
用户目标
规划模块

拆解为步骤列表
LLM 决策

结合短期与长期记忆
工具系统执行
结果写入短期记忆
返回最终答案

可以看到,LLM 始终是那个做决策的角色,工具系统是执行者,记忆系统让它不会「失忆」,规划模块帮它把大目标拆成小步骤。LangChain、LlamaIndex、AutoGen 这些主流框架,本质上都是围绕这四个组件来设计的,只是封装方式和侧重点各有不同。

写在最后

理解 Agent 的底层结构,不只是一个理论问题,它直接决定了你能不能在真实业务里把 Agent 用好。很多「翻车」的 Agent 项目,问题往往不在模型不够聪明,而在于记忆没有分层、工具描述写得含糊、规划模式选错。下一次当你准备动手搭建一个 Agent 时,不妨先问自己四个问题:大脑选什么模型、工具怎么标准化、记忆如何分层管理、复杂任务怎么规划------把这四根支柱立稳了,Agent 才算真正有了自主完成任务的底气。

题:大脑选什么模型、工具怎么标准化、记忆如何分层管理、复杂任务怎么规划------把这四根支柱立稳了,Agent 才算真正有了自主完成任务的底气。

相关推荐
Black_Rock_br1 小时前
本地AI工具更新,#DSH Desktop桌面端# 正式发布迭代
人工智能·python·开源·运维开发·开源软件
Henry-SAP1 小时前
小米自研AI芯片亮相
人工智能·云原生·sap·erp
林澈在路上1 小时前
AI做歌用哪个最好 2026国产AI音乐工具评测
大数据·人工智能·aigc·音视频·音频
AI服务老曹1 小时前
抽烟识别算法接入 AI 视频分析平台的流程与误报优化指南
人工智能·算法·音视频
静开1 小时前
Skills和MCP 到底什么区别
前端·人工智能
阳明山水1 小时前
销量预测2025—2026:技术演进、实证发现与系统架构的系统性综述
人工智能·深度学习·算法·机器学习·架构
伯远医学1 小时前
RIP-seq 高分文献案例分享
java·前端·javascript·人工智能·算法·eclipse·html
beiju1 小时前
统一入口不是终点:从 Ask Gemini 看 Agent 工作台的三层架构
人工智能
镭封1 小时前
短视频创作效率升级:免费配音+转文字全流程工具实测
人工智能·音视频