本文深入解析了 Agent 的六大核心支柱:Agent Loop、记忆系统、工具系统、Context Engine、推理引擎和上下文压缩。通过底层原理讲解,帮助读者理解 Agent 是如何运作的,以及为什么这样设计。文中穿插了 Hermes、OpenClaw 等具体 Agent 的实现案例,并强调了通用架构视角与具体实现方式的区别。理解这些核心支柱,才能设计出真正有用的 Agent 系统。
“很多人用 Agent,但很少人理解 Agent 内部是怎么运作的。搞懂这些,你才能设计出真正有用的 Agent。”
最近我面试了很多候选人。聊到 Agent,几乎所有人都说:“我用过 LangChain、LangGraph,能搭 workflow。”
但当我问:“Agent 内部是怎么运作的?Agent Loop 是什么?Context 怎么管理?” —— 大部分人答不上来。
这让我意识到一个普遍问题:很多人用 Agent,但很少人理解 Agent 内部机制。他们把 Agent 当成"框架API调用",而不是一个完整的系统。
所以,我决定写这篇文章。我要从底层原理讲清楚 Agent 的六大核心支柱,让你不只是"会用框架",而是真正理解 Agent 是什么、怎么运作、为什么这样设计。
为了避免只讲抽象概念,文中会穿插 Hermes、OpenClaw 这类 Agent 的实现作为例子。需要注意:六大支柱是通用架构视角,MEMORY.md、USER.md、SOUL.md、Frozen Snapshot 等是具体实现方式,不是所有 Agent 的统一标准。
1. Agent Loop——心跳
2. 记忆系统——长期大脑
3. 工具系统——手脚
4. Context Engine——调度中枢
5. 推理引擎——思考核心
6. 上下文压缩——内存管家
理解这六点,你才能真正理解 Agent,才能设计出有用的 Agent 系统。
一、Agent Loop——Agent 的"心跳"
先从最核心的概念开始:Agent Loop。
1.1 什么是 Agent Loop?
想象一个场景:你要让 AI 帮你"部署一个网站"。
一轮 LLM 调用通常会怎么做?它直接输出一堆部署步骤,然后你就得自己去执行。你执行到一半遇到问题,再回去问 AI,AI 再给你一个答案……
Agent 不一样。它会自己执行:
1. 推理(Reason):分析任务,制定计划
2. 行动(Act):调用工具,执行操作
3. 观察(Observe):看执行结果,判断是否成功
4. 迭代(Iterate):如果失败,调整策略,继续循环
这就是 Agent Loop——一个持续运行的"推理-行动-观察"闭环。
用伪代码表示:
def agent_loop(task, max_iterations=50): context = {"task": task, "history": [], "state": "planning"} for i in range(max_iterations): # 1. 推理:分析当前状态,决定下一步 thought = model.reason(context) # 2. 行动:调用工具或生成回复 if thought.action_type == "tool_call": result = execute_tool(thought.tool_name, thought.tool_args) else: result = thought.response # 3. 观察:记录结果,更新状态 context.history.append({"thought": thought, "result": result}) # 4. 判断:任务完成了吗? if is_task_complete(context): return final_response(context) # 5. 迭代:继续循环 return "任务超时,未能完成"1.2 Agent Loop 的关键设计
迭代上限:防止无限循环(不同系统差异很大,常见做法是按任务类型设置 10-100 次不等)
状态管理:记录每次迭代的 thought + result
早停机制:任务完成或遇到不可恢复错误时提前退出
人机交互:高危操作需要用户确认(approval)
1.3 与普通 LLM 调用的本质差异
这里的"普通 LLM",指的是没有工具、没有循环控制、没有状态管理的一轮模型调用。现代 ChatGPT、Claude、Gemini 等产品本身也可能内置工具能力,所以更准确的对比是:
| 一轮 LLM 调用 | Agent 系统 |
|---|---|
| 输入一次,输出答案 | 多轮循环,持续推进 |
| 用户负责执行步骤 | Agent 可调用工具执行 |
| 状态主要靠对话历史 | 有显式任务状态和观察结果 |
| 主要产出文本 | 可以操作文件、命令、浏览器、API |
比喻:一轮 LLM 调用像"租来的顾问",给你方案但不动手;Agent 像"带工具的执行者",会边做边看结果,再调整下一步。
二、记忆系统——Agent 的"长期大脑"
Agent Loop 解决了"如何执行"的问题。但还有一个关键问题:Agent 怎么记住你的偏好、历史、上下文?
这就是记忆系统。
2.1 记忆系统的三个组件
Agent 的记忆由三个组件构成:
| 层级 | 存储 | 生命周期 | 用途 |
|---|---|---|---|
| 短期 | Context Window | 单次对话 | 当前任务上下文 |
| 中期 | Session | 会话期间 | 本次对话历史 |
| 长期 | 持久化存储 | 永久 | 跨会话记忆 |
下面用 Hermes 的记忆设计举例,它大致可以拆成三层:
┌────────────────────────────────────────────┐ │ 第一层:MEMORY.md + USER.md │ ← 长期记忆 │ - MEMORY.md:Agent 的笔记(2,200 chars) │ │ - USER.md:用户画像(1,375 chars) │ ├────────────────────────────────────────────┤ │ 第二层:外部 Memory Provider │ ← 可选扩展 │ - mem0、letta 等 │ ├────────────────────────────────────────────┤ │ 第三层:Session Search(SQLite FTS5) │ ← 本地兜底 │ - 所有历史对话 → 关键词搜索 + LLM 摘要 │ └────────────────────────────────────────────┘2.2 Frozen Snapshot 模式
有个问题:如果每一轮请求都把频繁变化的记忆混在 prompt 前缀里,就很难利用 LLM 的 prefix cache;如果完全实时读取,又会增加 token 成本和上下文噪音。
Hermes 的解决方案:Frozen Snapshot。
- Session 启动时,把 MEMORY.md + USER.md 注入 system prompt
- Session 运行期间,记忆修改即时持久化到文件
- 当前 session 继续使用启动时的快照,下一个 session 才读取新版本(保证缓存友好)
2.3 检索策略
| 方案 | 优点 | 缺点 |
|---|---|---|
| 向量检索 | 语义匹配,适合模糊召回 | 依赖 embedding,成本和维护复杂度更高 |
| FTS5 关键词 | 粒度细,速度快,容易本地化 | 缺少语义理解,依赖关键词命中 |
| 混合方案 | 兼顾召回和精度 | 系统复杂度更高 |
Hermes 更偏向本地 FTS5 + LLM 摘要;OpenClaw 这类系统通常会把本地记忆、会话搜索和更细粒度的检索能力结合起来,避免只依赖一种召回方式。
2.4 记忆管理实战
大小限制:例如 Hermes 默认MEMORY.md约 2,200 chars(避免长期记忆无限膨胀)
压缩策略:定期用 LLM 摘要,提炼精华
遗忘机制:低价值信息自动清理(flush_memories)
三、工具系统——Agent 的"手脚"
Agent Loop 解决执行循环,记忆系统解决持久化。但要真正"做事",Agent 还需要工具。
3.1 工具注册与发现
Agent 不是天然"知道"有什么工具可用。多数工程实现会把工具注册成结构化描述,让模型在推理时看到工具名、用途和参数约束:
# 工具注册 tool_registry.register({ "name": "execute_command", "description": "在终端执行 shell 命令", "parameters": { "command": {"type": "string", "description": "要执行的命令"}, "timeout": {"type": "integer", "default": 30000} }, "risk_level": "high", # 高危操作 "requires_approval": True }) # 工具发现 available_tools = tool_registry.list_all() tool_schema = tool_registry.get_schema("execute_command")3.2 MCP 协议:统一接口标准
有个痛点:如果每个 Agent 都要为每个工具写 custom integration,生态会很碎片化。
MCP(Model Context Protocol) 解决了这个问题:
- 类比:MCP = AI 界的 USB-C
- 好处:工具可以按统一协议暴露,Agent 侧只需对接 MCP Client
- 架构:数据源、API、开发工具等可以封装成 MCP Server,供支持 MCP 的 Agent 调用
┌──────────────┐ ┌──────────────┐ │ Agent │ │ MCP Server │ │ (MCP Client)│◄────►│ (工具提供者) │ └──────────────┘ └──────────────┘ │ │ │ ┌───────────┴───────────┐ │ │ │ ▼ ▼ ▼ PostgreSQL GitHub Slack3.3 工具选择策略
LLM 怎么决定调用哪个工具?
核心机制:Tool Description + 参数 Schema + LLM 推理
{ "tools": [ { "name": "execute_command", "description": "在终端执行 shell 命令。适合文件操作、系统管理、脚本执行。", "input_schema": { "type": "object", "properties": { "command": {"type": "string"} } } }, { "name": "web_search", "description": "搜索互联网获取信息。适合查询实时数据、新闻、文档。", "input_schema": { "type": "object", "properties": { "query": {"type": "string"} } } } ] }LLM 根据任务语义 + 工具描述,选择最合适的工具。
3.4 如何设计一个好的 Tool
清晰描述:让 LLM 能理解工具用途
参数 Schema:明确输入类型和约束
风险评估:高危操作标记requires_approval
错误处理:失败时返回清晰错误信息
四、Context Engine——Agent 的"调度中枢"
工具、记忆都有了。但 Agent 怎么把所有信息组装成一个完整的 prompt?
这就是 Context Engine。
4.1 Prompt 组装流程
以 Hermes 为例,prompt_builder.py负责把多类上下文组装成完整 prompt:
┌────────────────────────────────────────────┐ │ System Prompt 组装 │ ├────────────────────────────────────────────┤ │ 1. SOUL.md — Agent 身份和风格 │ │ 2. USER.md — 用户偏好 │ │ 3. MEMORY.md — 长期记忆 │ │ 4. Skills — 按需加载的领域知识 │ │ 5. MCP Tools — 当前可用的工具声明 │ │ 6. Session History — 本次对话历史 │ │ 7. Dynamic Context — 任务相关的动态信息 │ └────────────────────────────────────────────┘4.2 Frozen Snapshot vs 动态注入
| 方案 | 特点 | 适用场景 |
|---|---|---|
| Frozen Snapshot | Session 启动时固定注入 | 基础上下文(SOUL/USER/MEMORY) |
| 动态注入 | 每次迭代实时更新 | Session History + Dynamic Context |
为什么分两种?
- Frozen 部分可以利用 Anthropic Prompt Caching(节省成本)
- Dynamic 部分必须实时更新(否则 Agent 不知道发生了什么)
4.3 Context Budget 管理
有个现实问题:当模型支持 200K tokens 级别上下文时,应该怎么分配?
一个可参考的分配策略:
| 内容 | 预算 | 说明 |
|---|---|---|
| System Prompt(Frozen) | 10K | 固定,可缓存 |
| Tool Declarations | 5-20K | MCP 按需加载 |
| Session History | 50-100K | 动态增长 |
| Working Memory | 10K | 当前任务上下文 |
| 响应输出 | 10K | Agent 输出空间 |
4.4 缓存策略
Anthropic 提供 Prompt Caching。它的核心价值是:当 prompt 前缀稳定、缓存命中时,可以减少重复处理长上下文的成本和延迟。
- Frozen 部分尽量放在稳定前缀中,提高缓存命中率
- 官方说法是长 prompt 场景下成本最高可降低约 90%,但前提是缓存命中、前缀稳定、缓存未过期
五、推理引擎——Agent 的"思考核心"
Context 组装好了,工具就绪了。接下来是推理引擎——Agent 的"大脑"。
5.1 模型选择:不同任务用不同模型
不是所有任务都需要最强模型。很多 Agent 系统会采用 Auxiliary 模型 机制:主模型负责复杂推理,辅助模型负责图片理解、网页抽取、压缩、摘要等子任务。
以 Hermes 的配置思路为例:
| 辅助模型 | 用途 | 示例配置 |
|---|---|---|
| vision | 图片分析 | Claude Haiku |
| web_extract | 网页抓取 | 轻量模型 |
| compression | 上下文压缩 | 便宜且长上下文友好的模型 |
| session_search | 历史搜索摘要 | 轻量模型 |
| approval | 危险命令审批 | GPT-4o-mini |
省钱原理:主模型专注复杂决策,低成本模型处理可拆分的辅助任务。
5.2 DSPy + GEPA:自我进化实验
注意:这是 Hermes 的独立项目hermes-agent-self-evolution,目前只有 Phase 1(Skill 文件优化)已实现,Phase 2-5 尚在规划中。
DSPy:把 LLM 当成可编程模块,自动优化 prompt
GEPA(Genetic-Pareto):一种反思式 prompt 优化方法,用演化搜索和 Pareto 选择改进文本组件
核心思路:读取执行轨迹来理解为什么失败,然后针对性改进 Skill 文件。
工作流程:
读取当前 skill ──► 生成 eval 数据集 │ ▼ GEPA Optimizer │ ▼ Candidate variants ──► 评估 │ 防护措施(测试、大小限制) │ ▼ Best variant ──► PR 提交(人工审核)成本:每次优化运行 $2-10,不需要 GPU。
现状:Phase 1 已实现(Skill 文件),Phase 2-5(Tool description、System prompt、代码、持续循环)仍在规划。
5.3 推理链策略
| 策略 | 特点 | 适用场景 |
|---|---|---|
| CoT(Chain-of-Thought) | 显式推理步骤 | 复杂逻辑问题 |
| ReAct | 推理 + 行动交替 | 需要调用工具的任务 |
| Plan-and-Execute | 先规划再执行 | 大型多步骤任务 |
六、上下文压缩——Agent 的"内存管家"
Context 不会无限增长,历史越长越接近 token limit。这时候需要压缩。
6.1 为什么需要压缩?
问题:
- 200K tokens 是上限,不是无限
- Session History 会持续增长
- 成本随 tokens 增加(Prompt Caching 只覆盖 Frozen 部分)
后果:
- 超过限制 → 早期信息被截断或必须被摘要
- 成本上涨 → 长任务的 API 调用费用明显增加
6.2 压缩策略
| 策略 | 原理 | 代价 |
|---|---|---|
| 有损摘要 | LLM 提炼核心信息 | 损失细节 |
| 关键信息提取 | 只保留重要节点 | 可能漏掉有用信息 |
| 滑动窗口 | 只保留最近 N 条 | 丢失历史 |
| 分层压缩 | 不同层级不同策略 | 复杂度高 |
6.3 Hermes 的 context_compressor
核心逻辑:
def compress_context(history, max_tokens=10000): # 1. 识别关键节点 key_nodes = identify_key_events(history) # 工具调用、重要决策 # 2. 有损摘要 summary = auxiliary_model.summarize(history, max_tokens) # 3. 合并 compressed = { "summary": summary, "key_events": key_nodes, "recent_messages": history[-10:] # 保留最近 10 条 } return compressed6.4 实战建议
何时压缩:当 Session History 接近 budget 上限
压缩什么:低价值对话(闲聊)、冗余信息
保留什么:关键决策、工具调用结果、任务状态
总结:六大支柱协同运作
回顾一下 Agent 的完整架构。更准确地说,这不是一条严格的单向流水线,而是一组相互协作的模块:
┌──────────────────────────┐ │ 用户输入 │ └────────────┬─────────────┘ ▼ ┌────────────────────────────────────────────────────────┐ │ Context Engine │ │ 组装 System Prompt、用户偏好、记忆、Skills、Tools、历史 │ └──────────────────────────┬─────────────────────────────┘ ▼ ┌────────────────────────────────────────────────────────┐ │ Agent Loop │ │ │ │ ┌────────────┐ ┌────────────┐ ┌────────────┐ │ │ │ 推理引擎 │ ──► │ 工具系统 │ ──► │ 观察结果 │ │ │ │ Reason │ │ Act │ │ Observe │ │ │ └─────▲──────┘ └────────────┘ └─────┬──────┘ │ │ │ │ │ │ └──────────── Iterate / Update ◄──────┘ │ └──────────────────────────┬─────────────────────────────┘ ▼ ┌──────────────────────────┐ │ 输出给用户 │ └──────────────────────────┘ 旁路能力: - 记忆系统:沉淀用户偏好、项目事实、历史经验 - 上下文压缩:在历史过长时摘要、提取关键节点 - Session Search / Retrieval:在需要时召回历史信息核心洞察:
- Agent Loop 是骨架——持续循环是 Agent 的本质
- 记忆系统 是大脑——持久化让 Agent"越用越懂你"
- 工具系统 是手脚——真正做事的能力
- Context Engine 是调度——统筹所有信息
- 推理引擎 是思考——决定策略和模型
- 上下文压缩 是管家——管理有限资源
架构演进趋势
Agent 还在快速演进。几个值得关注的趋势:
1. MCP 标准化:MCP 已进入 Linux Foundation 旗下 AAIF,主流 Agent 生态会越来越多兼容
2. 自我进化:DSPy + GEPA 自动优化 Skill 和 Prompt(仍在实验阶段)
3. 多 Agent 协作:Subagent 隔离上下文,分工协作
4. 持续压缩:Context Budget 管理越来越智能
行动建议
如果你想深入理解 Agent:
1. 理解 Agent Loop:这是 Agent 的核心,抓住这个就抓住了本质
2. 观察 Context Budget:看看不同任务消耗多少 tokens
3. 配置一个 MCP Server:连接 PostgreSQL 或 GitHub,体验统一接口
4. 体验记忆系统:跨会话对话,感受持久化的威力
理解原理,才能设计出真正有用的 Agent。
最后
2026年技术圈的分化愈发明显:降薪裁员潮持续蔓延,传统开发、测试等岗位大批缩水,不少从业者陷入职业焦虑;与之形成鲜明对比的是,AI大模型相关岗位迎来疯狂扩招,薪资逆势飙升150%,大厂更是直接开出70-100W年薪,疯抢具备实战能力的大模型人才,甚至放宽年龄限制,只求能快速落地技术、创造价值!
很多程序员、职场新人纷纷入局大模型领域,绝非盲目跟风,而是实实在在看到了不可替代的价值优势,这也是2026年最值得抓住的职业风口:
1、窗口期红利,入门门槛友好:不同于成熟赛道的“内卷式招聘”,2026年大模型人才缺口巨大,简历只要达标(掌握基础AI应用+具备简单项目经验),年龄、学历均非硬性要求,小白可快速入门,转行程序员也能无缝衔接;
2、技术可复用,上手速度翻倍:如果你有前后端开发、测试、数据分析等基础,在大模型落地、系统部署、Prompt工程等环节会更具优势,无需从零开始,复用原有技术能力就能快速进阶;
3、懂业务更吃香,竞争力翻倍:单纯懂技术已不够,2026年大厂更看重“技术+业务”的复合型人才,有垂直领域(金融、医疗、工业等)经验者,能精准定位模型落地痛点,薪资比纯技术岗高出30%以上;
更重要的是,即便没有转型需求,用AI大模型工具为工作赋能、提升效率,也已经成为80%企业的硬性要求——不会用大模型提效,未来很可能被行业淘汰!
那么2026年,小白/程序员该如何高效学习大模型?
很多人想入门大模型,却陷入两大困境:要么到处搜集零散资料,不成体系,越学越懵;要么被收费高昂的课程割韭菜,花了钱却学不到实战技能,白白浪费时间走弯路。
今天就给大家精心整理了一份2026年最新、免费、系统化的AI大模型学习资源包,覆盖从零基础入门到商业实战、从理论沉淀到面试通关的全流程,所有资料均已整理归档,无需拼凑,直接领取就能上手学习,小白可照做,程序员可进阶!
👇👇扫码免费领取全部内容👇👇
1、大模型系统化学习路线
这份学习路线结合2026年行业趋势和新手学习规律,由行业专家精心设计,从零基础到精通,每一步都有明确指引,帮你节省80%的无效学习时间,少走弯路、高效进阶,避免踩坑。
2、从0到进阶大模型学习视频教程
从入门到进阶这里都有,跟着老师学习事半功倍。
3、大模型学习书籍&电子文档
涵盖2026年最新技术要点,包括基础入门、Transformer核心原理、Prompt工程、RAG实战、模型微调与部署等内容
4、AI大模型最新行业报告
报告包含腾讯、阿里、甲子光年等权威机构发布的核心内容,还有2026年中文大模型基准测评报告、AI Agent行业研究报告等,帮你站在行业前沿,把握技术风口。
5、大模型项目实战&配套源码
项目包含Deepseek R1、GPT项目、MCP项目、RAG实战等热门方向,还有视频配套代码,手把手教你从0到1完成项目开发,既能练手提升技术,又能丰富简历,为求职和职业发展加分。
6、2026大模型大厂面试真题
2026年大模型面试已全面升级,不再单纯考察基础原理,而是转向侧重技术落地和业务结合的综合考察,很多程序员和新手因为缺乏针对性准备,明明技术不错,却在面试中失利。
适用人群
四阶段学习规划(共90天,可落地执行)
第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
硬件选型
带你了解全球大模型
使用国产大模型服务
搭建 OpenAI 代理
热身:基于阿里云 PAI 部署 Stable Diffusion
在本地计算机运行大模型
大模型的私有化部署
基于 vLLM 部署大模型
案例:如何优雅地在阿里云私有部署开源大模型
部署一套开源 LLM 项目
内容安全
互联网信息服务算法备案
…
👇👇扫码免费领取全部内容👇👇
7、这些资料真的有用吗?
这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理,现任上海殷泊信息科技CEO,其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证,服务航天科工、国家电网等1000+企业,以第一作者在IEEE Transactions发表论文50+篇,获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。
资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的技术人员,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。
这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】