面试官冷笑:Agent 核心组件就这?AI Agent 架构全解析(非常详细),大模型开发从入门到精通,收藏这一篇就够了!
这次来学习读者跟我反馈小红书二面遇到的面试题:「Agent 的基本架构由哪些核心组件构成?」
💡 简要回答
我理解 Agent 的基本架构有四个核心组件:LLM、工具、记忆、规划模块。
LLM 是整个系统的大脑,负责理解任务和做决策。
工具让 Agent 能跟外部世界交互,搜索、执行代码、调 API 都靠它。
记忆让 Agent 在任务执行过程中保持状态,不会「失忆」。
规划模块负责把复杂目标拆解成可执行的步骤。
这四个组合在一起,才让 Agent 具备了自主完成任务的能力。
📝 详细解析
理解了 Agent 是什么之后,我们来看它的内部结构,一个完整的 Agent 系统,到底由哪几个核心部件组成。
你可以把整个 Agent 系统类比成一家公司:LLM 是老板,所有决策都经过它拍板;工具系统是外包执行团队,老板说「去搜这个」「去发这封邮件」,他们负责真正干活;记忆系统是公司档案室,各种信息的存档和调档都靠它;规划模块是项目经理,拿到一个大目标后负责拆解成可执行的任务单。四个角色各司其职,才撑起了 Agent 的自主运行能力。

先来说 LLM 核心。它是整个 Agent 的大脑,所有的输入,不管是用户的指令、工具返回的结果还是记忆里调出来的内容,最终都要经过 LLM 来理解和决策。它负责判断:下一步该做什么?是继续思考、调用某个工具、还是已经可以给出最终答案了?没有 LLM,其他三个组件就是一堆零件,没有人来统一指挥。
然后是 工具系统,这是 Agent 和外部世界交互的唯一入口。LLM 本身是个纯粹的「语言处理器」,它不能上网、不能读文件、不能执行代码,但这些限制都可以通过工具来突破。工具可以是搜索引擎、数据库查询、代码执行器、发邮件的 API,任何你能用函数封装的能力都可以变成工具。
工具是怎么定义的?我给你看一个最标准的格式:
# 定义工具的结构(以 OpenAI function calling 格式为例)# 你只需要告诉模型三件事:工具叫什么名、能做什么事、需要哪些参数tools = [ { "type": "function", "function": { "name": "search_web", "description": "搜索互联网上的信息", "parameters": { "type": "object", "properties": { "query": { "type": "string", "description": "搜索关键词" } }, "required": ["query"] } } }]# LLM 决定调用工具时,会返回类似这样的结构:# {"tool_call": {"name": "search_web", "arguments": {"query": "2024年大模型最新进展"}}}# 然后你的代码负责真正执行这个搜索,把结果再塞回给 LLM
你看,工具定义里没有一行执行逻辑,只有「名字、描述、参数说明」。模型读了这份说明书,决定要调哪个工具、参数填什么,把决策以 JSON 格式告诉你,你的代码去真正执行,结果再反馈给模型。整个分工很清晰:模型负责「决定做什么」,程序负责「真正执行」。
接下来是 记忆系统,它分两层,你可以类比人的记忆方式来理解。短期记忆就是当前这轮对话的上下文,装在 context window 里,Agent 在一次任务执行过程中靠它记住中间状态,比如第一步搜索到了什么、第二步执行结果是什么。这就像人的「工作记忆」,容量有限,任务一结束就清空了。所以还需要长期记忆,通常用向量数据库来实现,把重要信息 embedding 之后存起来,下次用的时候做语义检索拿回来。这就像人的「长期记忆」,容量大、可以跨天保留,但需要主动「回忆」才能调出来。
最后是 规划模块,它决定了 Agent 能不能应对复杂任务。简单任务一步就搞定了,但如果你让 Agent「帮我写一份竞品分析报告」,它需要先把这个目标拆解:搜索竞品资料 -> 整理关键数据 -> 对比分析 -> 撰写报告。规划模块就是做这件事的,有些实现是让 LLM 先输出一个完整计划再逐步执行,有些是边执行边规划,根据每步结果动态调整。
这四个组件合在一起,到底是怎么跑起来的?我用一段伪代码来还原整个运行过程,看完你就能理解它们是怎么协作的:
# Agent 运行的核心 loop(伪代码)def agent_run(user_goal: str): # 第一步:规划模块上场,把目标拆成步骤列表 plan = llm.plan(user_goal) memory = [] # 短期记忆,用来存每一步的中间结果 for step in plan: # 第二步:LLM 核心做决策,这一步该怎么做? action = llm.decide( step=step, history=memory, # 把短期记忆传进去,让它知道之前做了什么 long_term=vector_db.search(step) # 从长期记忆里捞出相关历史 ) if action.type == "tool_call": # 第三步:工具系统负责真正执行 result = tools.execute(action.tool_name, action.args) memory.append({"step": step, "result": result}) # 执行结果存入短期记忆 elif action.type == "final_answer": return action.content # LLM 判断任务完成,返回最终答案
看完这段伪代码,你会发现 Agent 的核心节奏其实很简单:规划 -> 决策 -> 执行 -> 结果存入记忆 -> 再决策,循环往复,直到任务完成。LLM 始终是那个做决策的角色,工具系统是执行者,记忆系统让它不会「失忆」,规划模块帮它把大目标拆成小步骤。
LangChain、LlamaIndex、AutoGen 这些主流框架,本质上都是围绕这四个组件来设计的,只是封装方式和侧重点各有不同。
学AI大模型的正确顺序,千万不要搞错了
🤔2026年AI风口已来!各行各业的AI渗透肉眼可见,超多公司要么转型做AI相关产品,要么高薪挖AI技术人才,机遇直接摆在眼前!
有往AI方向发展,或者本身有后端编程基础的朋友,直接冲AI大模型应用开发转岗超合适!
就算暂时不打算转岗,了解大模型、RAG、Prompt、Agent这些热门概念,能上手做简单项目,也绝对是求职加分王🔋

📝给大家整理了超全最新的AI大模型应用开发学习清单和资料,手把手帮你快速入门!👇👇
学习路线:
✅大模型基础认知—大模型核心原理、发展历程、主流模型(GPT、文心一言等)特点解析
✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑
✅开发基础能力—Python进阶、API接口调用、大模型开发框架(LangChain等)实操
✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用
✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代
✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经
以上6大模块,看似清晰好上手,实则每个部分都有扎实的核心内容需要吃透!
我把大模型的学习全流程已经整理📚好了!抓住AI时代风口,轻松解锁职业新可能,希望大家都能把握机遇,实现薪资/职业跃迁~
这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)