AI Agent 完全指南:LangChain Agent、ReAct、Copilot-Agent 模式、Manus、Computer Use 与记忆机制 -- pd的后端笔记
文章目录
-
- [AI Agent 完全指南:LangChain Agent、ReAct、Copilot-Agent 模式、Manus、Computer Use 与记忆机制 -- pd的后端笔记](#AI Agent 完全指南:LangChain Agent、ReAct、Copilot-Agent 模式、Manus、Computer Use 与记忆机制 -- pd的后端笔记)
- [🎯 先把总问题说透:为什么今天大家不再只讨论"聊天模型",而开始讨论"Agent"?](#🎯 先把总问题说透:为什么今天大家不再只讨论“聊天模型”,而开始讨论“Agent”?)
- [🧠 一、先建立一张图:Agent 到底比普通 LLM 应用多了什么?](#🧠 一、先建立一张图:Agent 到底比普通 LLM 应用多了什么?)
- [🚀 二、什么是 LangChain Agent?别再只把它理解成"工具调用封装"](#🚀 二、什么是 LangChain Agent?别再只把它理解成“工具调用封装”)
-
- [1. LangChain Agent 的本质组成](#1. LangChain Agent 的本质组成)
- [2. 为什么 LangChain Agent 常被当成入口层?](#2. 为什么 LangChain Agent 常被当成入口层?)
- [3. 一个最小心智模型](#3. 一个最小心智模型)
- [4. 一个简单示意代码](#4. 一个简单示意代码)
- [✅ 一句话答案](#✅ 一句话答案)
- [🔥 三、ReAct 是什么?为什么它几乎成了 Agent 时代的基础范式?](#🔥 三、ReAct 是什么?为什么它几乎成了 Agent 时代的基础范式?)
-
- [1. 它为什么重要?](#1. 它为什么重要?)
- [2. ReAct 的原理拆解](#2. ReAct 的原理拆解)
- [3. 为什么 ReAct 很适合工具时代的大模型?](#3. 为什么 ReAct 很适合工具时代的大模型?)
- [4. 工程上要注意的一点](#4. 工程上要注意的一点)
- [⚠️ ReAct 的局限](#⚠️ ReAct 的局限)
- [🆚 四、Copilot 模式和 Agent 模式,到底差在哪?](#🆚 四、Copilot 模式和 Agent 模式,到底差在哪?)
-
- [1. 用最直白的话讲](#1. 用最直白的话讲)
- [2. 一张表彻底讲清楚](#2. 一张表彻底讲清楚)
- [3. 为什么行业在从 Copilot 走向 Agent?](#3. 为什么行业在从 Copilot 走向 Agent?)
- [4. 一个更准确的理解](#4. 一个更准确的理解)
- [🌍 五、什么是 Manus?为什么它会被看作 2025-2026 年这一波通用型 Agent 的代表?](#🌍 五、什么是 Manus?为什么它会被看作 2025-2026 年这一波通用型 Agent 的代表?)
-
- [1. 为什么说它不是"换个壳的对话模型"?](#1. 为什么说它不是“换个壳的对话模型”?)
- [2. Manus 真正值得关注的点是什么?](#2. Manus 真正值得关注的点是什么?)
-
- (1)它把"Agent"从概念演示往产品交付拉近了一步
- (2)它强调的不是单点模型能力,而是系统编排能力
- [(3)它把 Browser Operator / Computer Use 放到了核心位置](#(3)它把 Browser Operator / Computer Use 放到了核心位置)
- [3. 那 Manus 是不是已经等于 AGI 了?](#3. 那 Manus 是不是已经等于 AGI 了?)
- [🖥️ 六、Computer Use 是什么?它的原理到底是什么?](#🖥️ 六、Computer Use 是什么?它的原理到底是什么?)
-
- [1. 什么叫 Computer Use?](#1. 什么叫 Computer Use?)
- [2. 它的运行原理](#2. 它的运行原理)
- [3. 为什么 Computer Use 难?](#3. 为什么 Computer Use 难?)
- [4. 工程上通常怎么提高成功率?](#4. 工程上通常怎么提高成功率?)
- [5. 一个关键判断](#5. 一个关键判断)
- [🧩 七、长短期记忆机制,通常怎么实现?](#🧩 七、长短期记忆机制,通常怎么实现?)
- [⚠️ 八、把这些概念真正串起来,你就会发现 Agent 的核心挑战根本不是"会不会调工具"](#⚠️ 八、把这些概念真正串起来,你就会发现 Agent 的核心挑战根本不是“会不会调工具”)
- [📊 九、面试速查表:把这 6 个问题一次讲清楚](#📊 九、面试速查表:把这 6 个问题一次讲清楚)
- [🎤 十、如果面试官只给你 1 分钟,你可以这样回答](#🎤 十、如果面试官只给你 1 分钟,你可以这样回答)
- [✅ 总结](#✅ 总结)
- [📚 参考资料](#📚 参考资料)
🎯 先把总问题说透:为什么今天大家不再只讨论"聊天模型",而开始讨论"Agent"?
如果你最近在做大模型应用,会很容易碰到一堆概念:
- LangChain Agent
- ReAct
- Copilot 模式
- Agent 模式
- Manus
- Computer Use
- 长短期记忆
表面上看,这些像是几个分散的问题。
但它们背后其实都在回答同一件事:
一个大模型,怎么从"会回答问题",进化成"能理解目标、会拆解任务、能调用工具、还能持续完成任务"的智能体系统。
如果只停留在"Prompt + LLM + 输出文本"的理解层面,你会发现很多现象讲不通:
- 为什么同一个模型,接上工具之后能力会跃迁?
- 为什么 Agent 一旦任务变长,稳定性会明显下降?
- 为什么很多产品开始从"Copilot"转向"Agent"?
- 为什么 Manus、Computer Use 这种方向会在 2025 到 2026 年间被高度关注?
- 为什么大家重新开始认真讨论记忆机制,而不是只看上下文窗口?
所以这篇文章,我们不按提问顺序机械串烧,而是按一条更适合工程理解的主线来讲:
用户目标
Agent 规划
ReAct 推理-行动循环
工具调用
浏览器 / API / 文件系统 / 数据库
环境反馈
记忆写入
短期记忆 / 长期记忆
读完以后,你不只是知道"这些名词分别是什么",更重要的是:
你会形成一张 Agent 系统的整体地图。
🧠 一、先建立一张图:Agent 到底比普通 LLM 应用多了什么?
先别急着背定义。
你可以先把普通 LLM 应用理解成:
text
输入问题 -> 模型生成 -> 输出答案
而一个 Agent 系统,最核心的变化是:
它不只是生成答案,而是会围绕"目标"持续推进任务。
也就是说,它多了 4 个关键能力:
| 能力 | 普通问答应用 | Agent 系统 |
|---|---|---|
| 目标导向 | 更偏一次性响应 | 更偏持续完成任务 |
| 工具使用 | 很少或固定 | 动态选择工具 |
| 状态管理 | 上下文通常短 | 需要维护任务状态 |
| 环境交互 | 基本不改环境 | 会读网页、点按钮、写文件、调 API |
所以从工程角度看,Agent 并不是"一个更聪明的 Prompt"。
它更像是:
模型 + 工具 + 状态 + 反馈循环 + 记忆 + 安全控制 共同组成的一套运行系统。
下面我们就沿着这张图,一层一层拆。
🚀 二、什么是 LangChain Agent?别再只把它理解成"工具调用封装"
很多人第一次接触 LangChain Agent,会把它理解成:
给模型绑定几个工具,模型需要的时候自己调用一下。
这个理解不算错,但还远远不够。
从 LangChain 当前官方文档的表述来看,Agent 的核心,不只是"能调工具",而是:
让语言模型在一个循环中决定下一步做什么,并逐步朝着目标推进。
这句话有两个关键词:
decide:不是写死流程,而是让模型根据当前状态选择下一步loop:不是只执行一步,而是持续"思考 -> 行动 -> 观察 -> 再决策"
1. LangChain Agent 的本质组成
一个典型的 LangChain Agent,通常至少包含这些部分:
| 组件 | 作用 | 工程含义 |
|---|---|---|
| Model | 负责推理和生成 | 决策核心 |
| Tools | 提供外部能力 | API、搜索、数据库、浏览器、代码执行 |
| State | 保存当前任务上下文 | 当前步骤、历史结果、错误信息 |
| Memory | 保存对话或任务记忆 | 短期窗口、摘要、长期资料 |
| Middleware / Guardrails | 控制调用过程 | 限流、审计、权限、安全策略 |
| Stop Condition | 决定何时结束 | 达成目标、超步数、失败退出 |
所以你会发现:
Agent 不是一个函数,而是一个"带状态的决策循环"。
2. 为什么 LangChain Agent 常被当成入口层?
因为它把很多散落的能力统一成了一套开发抽象:
- 模型输入输出组织
- 工具描述和调用
- 消息状态维护
- 结构化输出
- Agent 运行循环
这也是为什么很多项目会先从 LangChain Agent 起步。
它降低的,不只是代码量;更重要的是降低心智负担。
另外补一句很重要的工程事实:
LangChain 现在的 Agent 能力,底层运行时实际上是落在 LangGraph 之上的。
这意味着什么?
- 上层你看到的是方便的 Agent 开发接口
- 下层承接的是更强的状态图、持久化和中断恢复能力
所以从工程视角看,LangChain Agent 更像"开发入口层",而 LangGraph 更像"运行时承载层"。
3. 一个最小心智模型
你可以把 LangChain Agent 想成下面这个运行框架:
直接回答
调用工具
用户目标
Agent State
LLM 决策
结束
Tool Invocation
获得 Observation
这张图里最关键的不是"Tool Invocation",而是中间那个 Agent State。
因为真正的 Agent,永远不是"当前这一轮在干嘛"这么简单,它还要知道:
- 已经做过什么
- 哪一步失败过
- 上一步观察到了什么
- 离目标还差什么
- 是否该重试、换工具,还是结束
4. 一个简单示意代码
下面这段不是为了背 API,而是为了帮你建立感觉:
python
from langchain.agents import create_agent
def search_docs(query: str) -> str:
return f"docs result for: {query}"
agent = create_agent(
model="openai:gpt-4.1",
tools=[search_docs],
system_prompt="你是一个会先分析任务,再决定是否调用工具的助手"
)
result = agent.invoke(
{
"messages": [
{"role": "user", "content": "帮我总结 LangChain Agent 的核心机制"}
]
}
)
这段代码表面上很像"模型 + 工具"。
但真正重要的是:
- 工具对模型来说不再是外部硬编码流程,而是"可选动作集合"
- 模型不是只负责续写文本,而是在负责"下一步行动决策"
- Agent 运行时要维护消息、工具结果和停止条件
✅ 一句话答案
如果面试里被问到"什么是 LangChain Agent",更推荐这样回答:
LangChain Agent 是一种基于大模型决策循环的应用抽象,它让模型结合工具、状态和记忆,在多轮"思考---行动---反馈"中逐步完成任务,而不是只做单轮文本生成。
🔥 三、ReAct 是什么?为什么它几乎成了 Agent 时代的基础范式?
如果说 Agent 是"能做事的系统形态",那么 ReAct 就是最经典的行为模式之一。
ReAct 来自论文《ReAct: Synergizing Reasoning and Acting in Language Models》,核心思想可以概括成一句话:
让模型在推理(Reasoning)和行动(Acting)之间交替进行。
1. 它为什么重要?
在 ReAct 之前,很多系统要么只让模型"想",要么只让模型"调工具"。
问题在于:
- 只让模型想,容易闭门造车,缺少外部事实反馈
- 只让模型调用工具,又容易变成机械流水线,缺少灵活推理
ReAct 把两者串起来了:
Question / Goal
Thought
Action
Observation
Final Answer
这背后真正厉害的地方在于:
模型不再一次性把答案写完,而是在过程中不断根据环境反馈修正自己的判断。
2. ReAct 的原理拆解
一个典型的 ReAct 循环会经历 4 个步骤:
| 步骤 | 含义 | 典型作用 |
|---|---|---|
| Thought | 当前判断与计划 | 我下一步应该查什么 |
| Action | 执行动作 | 调搜索、查数据库、点网页 |
| Observation | 接收环境反馈 | 搜索结果、接口返回、页面变化 |
| Final Answer | 达成目标后给结果 | 汇总结论或完成任务 |
你可以把它理解成一个"边想边干"的闭环。
这和传统软件里的固定工作流差异很大:
- 固定工作流:先写好每一步,运行时照章办事
- ReAct Agent:运行时根据观察结果动态选择下一步
3. 为什么 ReAct 很适合工具时代的大模型?
因为工具调用天然需要反馈。
比如用户说:
"帮我看一下这个页面的价格,再顺手把结果整理成表格。"
如果没有 ReAct,模型很容易一次性乱写。
而有了 ReAct,它会更像这样:
- 先判断需要打开页面
- 再读取页面内容
- 发现价格区域定位不准,就换一种方式观察
- 读到结果后,再汇总成表格
所以 ReAct 的价值不是"多了一层格式",而是:
它让模型具备了在不确定环境里持续试探、修正和推进任务的能力。
4. 工程上要注意的一点
很多人一提 ReAct,就会想到把完整 Thought 全部暴露出来。
但在生产系统里,通常不会这么做。
更常见的工程实现是:
- 用结构化 scratchpad 保存中间推理痕迹
- 对用户只展示必要解释,不直接暴露全部内部思维链
- 把 Thought 收敛成 plan、tool rationale、state update 等内部字段
这点非常关键。
因为工程系统真正关心的不是"把思维链原样打印出来",而是:
如何让系统保留可控推理能力,同时兼顾安全、成本和可观测性。
⚠️ ReAct 的局限
ReAct 很强,但不是万能。
它最容易踩坑的地方是:
| 风险 | 表现 | 后果 |
|---|---|---|
| 循环过长 | 一直试错不收敛 | 成本高、延迟高 |
| 工具选择错误 | 本该查数据库却去搜网页 | 路径漂移 |
| Observation 噪声大 | 网页结构复杂、OCR 不稳 | 推理污染 |
| 状态污染 | 上一轮错误结论带到下一轮 | 越走越偏 |
所以真正成熟的 Agent 系统,通常都会在 ReAct 外面再包一层控制逻辑:
- 步数上限
- 工具白名单
- 结果校验
- 失败回滚
- 人工接管
🆚 四、Copilot 模式和 Agent 模式,到底差在哪?
这个问题最近很高频,但也最容易说空。
先说明一下:这里说的 Copilot 模式 和 Agent 模式,我按通用产品语境来解释,不特指某一家厂商界面上的按钮名字。
先给一个结论:
Copilot 模式的核心是"人主导、AI 辅助";Agent 模式的核心是"目标主导、AI 自主推进"。
1. 用最直白的话讲
如果是 Copilot:
- 你说一步,它做一步
- 它更像副驾驶
- 控制权主要在你手里
如果是 Agent:
- 你给目标,它自己拆步骤
- 它更像代办执行者
- 控制权部分转移给系统
2. 一张表彻底讲清楚
| 维度 | Copilot 模式 | Agent 模式 |
|---|---|---|
| 交互方式 | 人一步步发指令 | 人给目标,系统自主推进 |
| 决策主体 | 人为主 | 系统为主 |
| 任务粒度 | 单步或短链路 | 多步、长链路 |
| 工具调用 | 通常由人触发或强提示 | 系统按状态自主选择 |
| 错误处理 | 人工纠偏为主 | 系统自纠偏 + 人工兜底 |
| 适合场景 | 写代码、润色、问答、局部操作 | 调研、下单流程、网页操作、任务编排 |
| 风险 | 速度慢但稳 | 效率高但更难控 |
3. 为什么行业在从 Copilot 走向 Agent?
因为很多业务目标,本来就不是一句话能完成的。
比如:
- 帮我筛 20 家竞品并整理调研报告
- 帮我登录后台下载报表后再生成邮件草稿
- 帮我分析告警、定位原因、再创建工单
这些任务有几个共同点:
- 路径长
- 状态多
- 中间依赖环境反馈
- 很难全靠人工逐步点指令完成
这时候 Copilot 的效率就到头了。
所以 Agent 不是要替代 Copilot,而是在解决另一类任务。
4. 一个更准确的理解
现实里的优秀产品,往往不是二选一,而是双模协同:
text
简单任务 -> Copilot 模式
复杂任务 -> Agent 模式
关键节点 -> 人工确认 / 切回 Copilot
也就是说,成熟系统更像"可切换自动驾驶级别",而不是单纯站队。
🌍 五、什么是 Manus?为什么它会被看作 2025-2026 年这一波通用型 Agent 的代表?
先说结论:
Manus 更适合被理解成一个"通用型任务执行 Agent 产品/系统",而不只是一个聊天机器人。
这里我特意用了"产品/系统"这两个词。
因为 Manus 的讨论价值,不在于"它会不会聊天",而在于它把很多 Agent 该有的东西真正往产品化方向推进了:
- 长任务执行
- 多工具协同
- 浏览器操作
- 文件系统中转
- 任务状态持续推进
- 上下文工程(Context Engineering)
1. 为什么说它不是"换个壳的对话模型"?
一个普通聊天产品,核心交付物是回答。
而 Manus 这类系统,核心交付物更偏向:
- 报告
- 表格
- 网页操作结果
- 文件产物
- 一整条任务完成链路
也就是说,它关注的是:
从目标到产出,中间这条执行链能不能闭环。
这就意味着它必须具备更完整的系统能力:
用户目标
任务拆解
检索/浏览
Computer Use
文件生成
多轮状态推进
中间结果写入工作区
最终交付物
2. Manus 真正值得关注的点是什么?
我认为有 3 个。
(1)它把"Agent"从概念演示往产品交付拉近了一步
很多 Agent Demo 很炫,但只能跑短链路。
而 Manus 之所以被关注,是因为它让人看到了一个更完整的方向:
- 能持续执行
- 能处理中间产物
- 能跨步骤推进
- 不只是口头回答,而是真的交付结果
(2)它强调的不是单点模型能力,而是系统编排能力
从 Manus 官方在 2025 年发布的 Context Engineering for AI Agents 文章可以看出,它特别强调的不是"模型多强",而是:
- 上下文怎么组织
- 信息何时写入、何时丢弃
- 文件系统怎么作为外部工作记忆
- 状态机如何帮助任务持续推进
这点非常重要。
因为很多人做 Agent 失败,不是败在模型不够强,而是败在:
上下文乱、状态乱、工具乱、任务推进链断掉。
(3)它把 Browser Operator / Computer Use 放到了核心位置
Manus 在 2025 年下半年公开介绍 Browser Operator,也就是让 Agent 在浏览器环境里执行可视化操作。
这意味着它不再只是"调用几个 API",而是在尝试进入更通用的软件操作空间。
3. 那 Manus 是不是已经等于 AGI 了?
当然不是。
更准确地说,Manus 代表的是这样一种趋势:
通用型 Agent 的竞争重点,正在从"谁更会聊天",转向"谁更能在真实软件世界里完成任务"。
所以如果面试里问"你怎么看 Manus",更推荐这样回答:
Manus 的意义不在于它提出了全新的模型原理,而在于它把通用任务执行、上下文工程、浏览器操作和结果交付整合成了更完整的 Agent 产品形态,因此它常被视作 2025 到 2026 年这一波通用型 Agent 系统的代表案例之一。
🖥️ 六、Computer Use 是什么?它的原理到底是什么?
如果说 Tool Use 是让模型会"调用函数",那么 Computer Use 则是让模型会"操作计算机界面"。
这两者的差别非常大。
1. 什么叫 Computer Use?
一句话概括:
让模型把屏幕界面当作可感知环境,把点击、输入、滚动、快捷键等操作当作可执行动作,从而完成真实软件中的任务。
也就是说,模型面对的不再只是 JSON 工具接口,而是:
- 截图
- 页面元素
- 鼠标点击
- 键盘输入
- 页面刷新后的新状态
2. 它的运行原理
Computer Use 的底层其实还是 Agent 闭环,只不过"环境"从 API 变成了 GUI。
目标
感知当前屏幕
识别关键信息
决定下一步动作
点击 / 输入 / 滚动 / 快捷键
环境变化
拆开来看,通常包含 4 层:
| 层次 | 作用 | 常见实现 |
|---|---|---|
| Perception 感知 | 看懂屏幕现在是什么状态 | 截图理解、OCR、UI 元素识别 |
| Grounding 定位 | 确定该点哪里、输到哪里 | 坐标、DOM、可访问性树、视觉框 |
| Policy 决策 | 当前该执行什么动作 | ReAct / Planner / Policy Model |
| Execution 执行 | 真的发出动作 | click、type、scroll、hotkey |
所以从原理上说,Computer Use 不是单一技术点,而是下面这几个能力的组合:
- 多模态感知
- 状态判断
- 动作规划
- 环境反馈闭环
- 安全控制
3. 为什么 Computer Use 难?
因为 GUI 环境比 API 环境脏得多。
API 世界通常是结构化的:
json
{"price": 99, "currency": "CNY"}
而 GUI 世界经常是这样的:
- 按钮位置会变
- 页面会弹窗
- 元素会遮挡
- 文本可能在图片里
- 不同分辨率下布局不同
- 页面加载慢时状态还没稳定
所以 Computer Use 最大的难点,不是"能不能点一下鼠标",而是:
模型能不能稳定理解一个动态界面,并把动作精确落到正确目标上。
4. 工程上通常怎么提高成功率?
通常会做这些事:
| 方案 | 目的 |
|---|---|
| 先走 API,后走 GUI | 能结构化解决就别走界面 |
| 加状态检查点 | 每步后判断页面是否真的切换成功 |
| 加动作回放日志 | 便于调试和审计 |
| 限制高风险动作 | 支付、删除、提交前要求确认 |
| 结合 DOM / Accessibility Tree | 降低纯视觉识别误差 |
| 页面稳定等待机制 | 避免页面未加载完成就操作 |
5. 一个关键判断
Computer Use 的意义,不只是"替你点网页"。
它真正打开的是:
让 Agent 进入那些没有标准 API、但人类本来可以通过软件界面完成的任务空间。
这也是为什么它会在 2025 年前后成为 Agent 系统的重要方向之一。
🧩 七、长短期记忆机制,通常怎么实现?
这个问题非常关键。
因为很多人会误以为:
上下文窗口大了,记忆问题就解决了。
实际上完全不是这么回事。
上下文窗口只能解决"当前能塞多少信息",但 Agent 真正的记忆问题包括:
- 什么信息该保留?
- 保留多久?
- 什么时候写入?
- 什么时候检索?
- 写错了如何修正?
所以工程上通常会把记忆拆成两层:
- 短期记忆(Short-term Memory):服务当前任务线程
- 长期记忆(Long-term Memory):跨会话、跨任务沉淀用户或系统知识
1. 短期记忆:解决"这次任务别失忆"
短期记忆通常用来保存:
- 当前对话历史
- 本轮任务计划
- 工具调用结果
- 中间结论
- 当前失败状态
它更像"工作内存"。
常见实现方式
| 方式 | 说明 | 适用场景 |
|---|---|---|
| 全量消息窗口 | 把最近消息直接带入上下文 | 短任务、低复杂度 |
| Sliding Window | 只保留最近 N 轮 | 成本受控的聊天场景 |
| Running Summary | 定期把历史压缩成摘要 | 中长任务 |
| Task State Store | 把计划、步骤、结果结构化保存 | Agent 编排 |
| Checkpointer | 任务节点状态持久化 | 可恢复、多步流程 |
短期记忆最重要的设计原则不是"越多越好",而是:
和当前任务推进最相关的信息,必须高密度地保留下来。
2. 长期记忆:解决"下次还记得你"
长期记忆通常是跨会话保存的,更像外部记忆库。
常见会分成 3 类:
| 类型 | 存什么 | 示例 |
|---|---|---|
| Semantic Memory | 稳定事实 | 用户偏好、公司知识、术语定义 |
| Episodic Memory | 过去经历 | 上次排障过程、之前做过的项目 |
| Procedural Memory | 做事方法 | 某类任务的固定 SOP、最佳实践模板 |
常见存储方式
| 存储介质 | 适合存什么 |
|---|---|
| 向量数据库 | 语义检索型记忆 |
| 关系型数据库 | 结构化事实、用户画像 |
| 文档存储 / KV | 会话摘要、状态快照 |
| 文件系统 / 工作区 | 中间产物、报告、草稿、附件 |
3. 一套常见的长短期记忆架构
用户请求
短期记忆加载
长期记忆检索
当前 Agent 推理
工具调用 / 任务推进
状态更新
写回短期记忆
按策略写回长期记忆
这张图里最容易被忽视的是:
长期记忆不是每轮都无脑写,也不是每轮都全量读。
真正成熟的系统会加写入策略和检索策略。
4. 记忆系统最容易踩的坑
| 坑点 | 表现 | 本质问题 |
|---|---|---|
| 什么都记 | 上下文越来越脏 | 没有记忆筛选机制 |
| 写入过早 | 错误结论被永久保存 | 缺乏校验 |
| 检索过多 | 每轮塞一堆不相关记忆 | 召回噪声大 |
| 只存文本 | 无法追踪来源和结构 | 记忆不可验证 |
| 没有过期机制 | 老信息一直污染当前任务 | 缺乏 TTL / versioning |
5. 更推荐的实现思路
短期记忆建议
- 保留最近对话 + 当前任务状态
- 长历史做摘要而不是全量堆叠
- 工具结果结构化存储,不要只拼接自然语言
- 关键节点做 checkpoint,支持中断恢复
长期记忆建议
- 只沉淀高价值、可复用、相对稳定的信息
- 记忆写入前先经过评分或审核
- 给记忆加来源、时间、置信度、版本
- 优先检索相关记忆,而不是全库灌入上下文
✅ 一句话总结
在大模型应用里,记忆机制的本质不是"多存一点上下文",而是:
通过短期状态维护任务连续性,通过长期记忆沉淀跨任务知识,再用检索与摘要机制把正确的信息在正确时机送回推理链路。
⚠️ 八、把这些概念真正串起来,你就会发现 Agent 的核心挑战根本不是"会不会调工具"
到这里,我们把几个看似分散的问题串起来了:
- LangChain Agent:给了你一套 Agent 开发抽象
- ReAct:给了你一套经典的推理---行动闭环
- Copilot vs Agent:说明了产品交互和控制权差异
- Manus:代表了通用型任务执行 Agent 的产品化方向
- Computer Use:把 Agent 从 API 世界带进 GUI 世界
- 长短期记忆:让 Agent 能跨步骤、跨任务持续工作
所以真正的核心挑战是什么?
我认为是 5 个字:
持续可控地完成任务。
这句话看起来简单,但它背后至少包含:
- 能理解目标
- 能拆解步骤
- 能根据反馈修正
- 能调用外部工具
- 能管理上下文和记忆
- 能在高风险动作前接受控制
- 能在失败后恢复或回滚
也就是说,Agent 系统的门槛,早就不是"接个模型 API"了。
它更像一套新的应用运行时。
📊 九、面试速查表:把这 6 个问题一次讲清楚
| 问题 | 推荐回答要点 |
|---|---|
| 什么是 LangChain Agent? | 基于大模型决策循环的 Agent 抽象,结合工具、状态、记忆逐步完成任务 |
| ReAct 是什么? | 推理与行动交替进行的闭环范式,让模型根据 Observation 持续修正下一步 |
| Copilot 和 Agent 有什么区别? | Copilot 是人主导的辅助模式,Agent 是目标主导的自主推进模式 |
| 什么是 Manus? | 通用型任务执行 Agent 产品代表,强调上下文工程、浏览器操作和结果交付 |
| Computer Use 的原理是什么? | 通过屏幕感知、目标定位、动作决策和环境反馈闭环完成 GUI 操作 |
| 长短期记忆怎么做? | 短期记忆保任务状态,长期记忆保跨任务知识,通过摘要、检索、checkpoint 和存储策略实现 |
🎤 十、如果面试官只给你 1 分钟,你可以这样回答
text
Agent 和普通 LLM 应用的区别,在于它不是只生成答案,而是围绕目标持续推进任务。
LangChain Agent 提供的是这类系统的开发抽象,让模型结合工具、状态和记忆完成多步任务。
ReAct 则是最经典的底层范式,通过"推理-行动-观察"的循环,让模型根据外部反馈不断修正路径。
Copilot 模式更偏人主导的辅助,而 Agent 模式更偏目标驱动的自主执行。
Manus 之所以被关注,是因为它把通用任务执行、上下文工程、浏览器操作和结果交付整合成了更完整的产品形态。
Computer Use 则让 Agent 能进入 GUI 世界,而长短期记忆机制决定了 Agent 能不能在长任务和跨任务中保持连续性与稳定性。
✅ 总结
最后收个尾。
如果你问:
Agent 时代真正的分水岭是什么?
我会说,不是模型会不会聊天,而是系统能不能:
- 在复杂环境里持续完成任务
- 在工具和界面之间稳定切换
- 在长链路中不丢状态
- 在需要时记住过去,在不需要时忘掉噪声
所以今天学习 LangChain Agent、ReAct、Manus、Computer Use 和记忆机制,真正的意义不是多记几个名词。
而是要建立这样一个判断:
未来的大模型应用,不会只是"会回答",而会越来越像"能执行、能协作、能恢复、能交付"的软件智能体。
这,才是 Agent 真正值得学的地方。
📚 参考资料
- LangChain Official Docs - Agents
https://docs.langchain.com/oss/python/langchain/agents - ReAct: Synergizing Reasoning and Acting in Language Models
https://arxiv.org/abs/2210.03629 - OpenAI - Computer-Using Agent
https://openai.com/index/computer-using-agent/ - Manus Blog - Context Engineering for AI Agents: Lessons from Building Manus
https://manus.im/blog/context-engineering-for-ai-agents-lessons-from-building-manus - Manus Blog - Manus Browser Operator
https://manus.im/en/blog/manus-browser-operator