这两年,Agent 几乎已经成为 AI 行业里最容易被泛化的一个词。
只要一个系统接入了大模型,再配上一段 Prompt,甚至只要能够调用一个 API,就很容易被包装成“智能体”。
于是我们会看到各种各样的产品:
- 知识库 Agent
- SQL Agent
- 客服 Agent
- 写作 Agent
- 数据分析 Agent
- 工作流 Agent
- 多智能体平台
但如果从工程实现的角度看,其中相当一部分其实并不能算严格意义上的 Agent。
很多所谓 Agent,本质仍然只是:
LLM + Prompt + Tool Call。
真正完整的 Agent,不应该只是“一个会调用工具的大模型”,而应该是一套具备目标驱动、自主决策、状态维护、环境交互和反馈闭环能力的软件系统。
我更愿意这样定义 Agent:
Agent 是一个能够理解目标,在动态环境中自主进行决策,通过规划和执行调用外部能力,并根据环境反馈不断调整行为,最终完成任务的软件实体。
如果用一句更容易理解的话来说:
LLM 是大脑,而 Agent 是一个拥有大脑、记忆、手脚、行动策略和反馈机制的完整系统。
一、为什么很多所谓 Agent,其实并不是真正的 Agent?
我们先看现在非常典型的一类 AI 应用。
用户输入
↓
Prompt 模板
↓
LLM
↓
调用 API
↓
返回结果
例如:
- AI 写邮件
- AI 生成 SQL
- AI 客服
- AI 知识库问答
- AI 文档总结
这些系统当然有价值,但从严格意义上说,它们更接近:
LLM Application。
而不是:
Agent System。
两者真正的区别,不在于有没有调用工具,而在于:
系统内部有没有形成“自主决策闭环”。
二、RAG 应用和 Agent 到底差在哪里?
例如用户问:
帮我分析一下今年销售下降的原因。
一个普通的企业知识库问答系统可能这样处理:
用户问题
↓
Embedding
↓
知识库检索
↓
LLM 总结
↓
返回答案
本质上这是一个标准的:
RAG Application。
整个执行路径在开发阶段就已经基本确定。
模型真正需要做的事情,更多是理解、生成和总结。
但如果用户提出:
帮我分析今年销售下降的原因,并给出改善方案。
一个真正具备 Agent 能力的系统,处理过程可能变成:
理解目标
↓
拆解任务
1. 获取销售数据
2. 分析同比趋势
3. 找出异常区域
4. 查询市场变化
5. 分析可能原因
6. 生成改善方案
7. 生成分析报告
↓
选择工具
SQL 工具
数据分析工具
搜索工具
知识库
报告生成工具
↓
执行任务
↓
发现数据不足
↓
重新调整计划
↓
补充查询
↓
重新分析
↓
生成最终报告
↓
发送给负责人
这里最大的区别是:
执行流程不再完全由开发人员提前写死。
系统会根据目标、当前状态和执行结果决定:
下一步应该做什么。
这才真正开始体现 Agent 的价值。
三、一个完整 Agent 应该包含什么?
如果从生产级系统的角度来看,我认为一个完整 Agent 至少需要具备以下几个核心模块:
用户目标
│
↓
┌──────────────────┐
│ Agent Orchestrator │
└──────────────────┘
│
┌──────────────┼──────────────┐
↓ ↓ ↓
Planner Memory Tools
规划器 记忆系统 工具系统
↓ ↓ ↓
Executor Agent State Environment
执行器 状态 外部环境
│
↓
Feedback
↓
Re-plan
其中任何一个模块都不是孤立存在的。
真正让 Agent 和普通 LLM Application 拉开差距的,是这些能力之间形成了一个完整闭环。
四、Agent Runtime:智能体真正的运行核心
很多人研究 Agent 时,会把注意力全部放在 Prompt 或模型推理上。
但真正进入工程实现以后,会发现:
Agent Runtime 才是整个系统最重要的部分之一。
它有点像 Agent 的操作系统。
Runtime 负责维护:
- 当前任务
- 当前状态
- 消息循环
- 模型调用
- 工具调度
- 超时控制
- 异常恢复
- 上下文管理
- 任务生命周期
一个非常抽象的 Agent Loop,大概可以表示成:
while task_not_finished:
observe()
think()
plan()
act()
evaluate()
整个过程不断循环:
观察
↓
思考
↓
规划
↓
行动
↓
评估
↓
继续行动 / 调整计划 / 结束任务
LangGraph、AutoGen、CrewAI、OpenAI Agents SDK 等框架虽然设计理念不同,但从工程角度看,它们都在一定程度上解决同一个问题:
如何让 Agent 的决策、状态和执行过程真正跑起来。
所以严格来说:
LangGraph 并不是一个 Agent。
它更接近:
Agent Runtime Framework。
五、Reasoning / Planning:Agent 的决策能力
这可能是 Agent 和传统 Chatbot 最明显的区别。
普通 Chatbot 的核心路径通常是:
问题
↓
回答
而 Agent 更接近:
目标
↓
任务拆解
↓
子任务规划
↓
执行顺序
↓
执行
↓
结果判断
↓
动态调整
例如用户说:
帮我做一份竞品分析。
Agent 可能先规划:
Task 1:收集竞品信息
Task 2:分析价格体系
Task 3:分析产品能力
Task 4:分析用户评价
Task 5:总结竞争优势
Task 6:生成报告
Task 7:发送邮件
这部分本质上就是 Planner。
目前比较常见的 Agent 推理方式有几种。
ReAct
经典模式是:
Thought
↓
Action
↓
Observation
↓
Thought
↓
Action
例如:
Thought:
我需要先获取今年的销售数据。
Action:
调用 SQL 查询工具。
Observation:
华东地区销售额同比下降 28%。
Thought:
华东下降明显,需要继续分析原因。
Action:
查询华东地区渠道和客户数据。
整个 Agent 会不断根据 Observation 决定新的 Action。
Plan-and-Execute
另外一种方式是先生成整体计划:
Plan:
1. 查询销售数据
2. 分析趋势
3. 查询外部市场情况
4. 分析原因
5. 输出报告
然后按照计划逐步执行。
这种模式通常比完全开放式的 ReAct 更容易控制,也更适合很多企业场景。
Tree of Thoughts / Graph Reasoning
对于更复杂的问题,还可以同时探索不同路径:
Task
/ | \
方法 A 方法 B 方法 C
\ | /
评估
↓
选择更优路径
这种方式理论上的推理能力更强,但同时也意味着更高的 Token、时间和计算成本。
因此并不是所有 Agent 都需要复杂规划。
企业落地真正需要关注的往往是:
在任务复杂度、可靠性和资源成本之间取得平衡。
六、Memory:Agent 为什么需要记忆?
Memory 是现在 Agent 系统中非常重要的一块。
因为如果没有状态连续性,Agent 每执行一步都像“失忆”一样,那么它就很难完成真正复杂的长任务。
从工程实现上,我习惯把 Agent Memory 拆成几个层级。
1. 短期记忆
也就是当前会话上下文。
例如:
用户:
帮我修改刚才那份报告。
之前:
这是报告内容……
如果没有短期记忆,模型甚至不知道“刚才那份报告”是什么。
这通常对应:
Conversation Memory。
2. 工作记忆
工作记忆更接近 Agent State。
例如当前任务:
任务:生成市场分析报告
当前进度:
数据收集 √
竞品分析 √
用户画像 ×
趋势分析 ×
报告生成 ×
这里保存的不是聊天记录,而是:
任务执行到了什么阶段。
它可能包括:
- 当前 Plan
- 已完成步骤
- 未完成步骤
- 工具执行结果
- 中间产物
- 错误信息
- 重试次数
- 当前上下文
很多企业 Agent 真正重要的 Memory,其实恰恰是这部分。
3. 长期记忆
长期记忆关注的是跨任务的信息。
例如系统逐渐知道:
用户偏好:
报告形式:PPT
语言:中文
重点:技术分析
风格:简洁
下次用户再要求生成报告时,可以自动应用这些偏好。
因此一个完整的 Agent Memory System,未来可能逐渐演变成:
Conversation Memory
+
Structured State
+
Vector Memory
+
Knowledge Memory
+
User Preference Memory
而不是简单做一个向量数据库,就叫“长期记忆”。
七、Tool:工具决定了 Agent 能做什么
如果说 LLM 是 Agent 的大脑,那么 Tool 就是 Agent 的手脚。
Agent 必须能够真正执行动作。
常见 Tool 包括:
- REST API
- 数据库
- SQL
- Python
- Shell
- 浏览器
- 搜索引擎
- 文件系统
- Code Interpreter
- 邮件
- CRM
- ERP
- OA
- 工单系统
- 企业内部接口
- MCP Server
例如一个销售 Agent 可能具备:
CRM Tool
Email Tool
Customer Search Tool
Knowledge Tool
Report Tool
模型负责决定:
什么时候用什么工具。
工具负责真正执行:
对现实系统产生影响。
因此 Tool 的设计,本质上定义了:
Agent 的能力边界。
八、Environment:Agent 不只是回答问题
这是很多所谓 Agent 产品容易忽略的一点。
Agent 的核心不是:
输入
↓
回答
而更接近:
感知环境
↓
理解状态
↓
执行动作
↓
环境发生变化
↓
重新观察
比如一个客服 Agent 的 Environment 可能包括:
订单系统
库存系统
物流系统
退款系统
用户说:
我搬家了,帮我修改还没有发货的订单地址。
真正的 Agent 可能执行:
查询订单
↓
检查是否已经发货
↓
判断订单是否允许修改
↓
修改订单地址
↓
重新查询订单确认
↓
通知用户
这已经不再是“回答问题”。
而是在:
操作环境。
这也是为什么 Agent 的安全问题远比普通 Chatbot 更重要。
九、Reflection / Evaluation:让 Agent 形成真正闭环
如果 Agent 只是:
规划
↓
执行
↓
结束
其实依然很容易出问题。
更成熟的 Agent 系统应该加入:
Evaluation / Reflection。
例如系统完成了一份行业分析报告:
Generate
↓
Critic
↓
Improve
Critic 可以检查:
数据来源是否可靠?
是否遗漏重要竞品?
结论有没有数据支持?
有没有明显逻辑冲突?
用户要求是否全部完成?
如果发现:
缺少竞争对手 B 的分析。
Agent 可以重新进入执行流程:
补充搜索
↓
重新分析
↓
修订报告
于是整个系统形成:
Plan
↓
Execute
↓
Observe
↓
Evaluate
↓
Re-plan
这才是完整的 Agent Loop。
十、多 Agent 并不代表更高级
现在还有一个很常见的误区:
多 Agent = 更先进。
其实完全不是。
一个设计良好的单 Agent:
Planner
+
Executor
+
Memory
+
Tools
+
State
+
Runtime
本身就已经可以完成非常复杂的任务。
Multi-Agent 更适合的是:
职责天然可以拆开的复杂场景。
例如:
Manager Agent
│
┌────────────┼────────────┐
↓ ↓ ↓
Research Agent Coding Agent Review Agent
↓
Writer Agent
每个 Agent 对一种结果负责。
真正有价值的多 Agent,不是为了:
“让几个模型一起聊天。”
而是为了:
做职责划分、能力隔离和复杂任务协作。
如果单 Agent 能稳定完成任务,就完全没必要为了“先进”强行上 Multi-Agent。
十一、Governance:企业 Agent 最容易被忽略的一层
如果 Agent 只能生成文字,出了问题最多回答错。
但一旦 Agent 能够:
- 修改数据库
- 发送邮件
- 提交审批
- 修改订单
- 创建账号
- 操作业务系统
事情就完全不一样了。
所以企业 Agent 必须存在 Governance Layer。
权限控制
Agent 不能因为模型生成了一句:
DELETE FROM customer;
系统就真的执行。
需要明确:
Agent
↓
Permission Layer
↓
Tool
例如:
- 查询可以自动执行
- 修改需要权限
- 高风险操作需要人工确认
- 删除操作默认禁止
- 不同 Agent 使用不同凭证
这其实就是:
最小权限原则。
安全
Agent 还需要防御:
- Prompt Injection
- 越权调用
- 数据泄露
- 恶意工具参数
- 间接 Prompt Injection
- 不可信网页内容
- 工具返回污染
普通 Chatbot 的 Prompt Injection,可能只是“说错话”。
Agent 的 Prompt Injection,却可能直接演变成:
执行错误操作。
可观测
生产环境必须能够看到 Agent 到底做了什么。
完整 Trace 至少应该包含:
用户目标
↓
Planner 决策
↓
模型调用
↓
Tool 选择
↓
Tool 参数
↓
Tool Result
↓
State Change
↓
Evaluation
↓
最终结果
甚至还要记录:
- Token 消耗
- 模型延迟
- 工具耗时
- 重试次数
- 任务成功率
- 失败原因
- Prompt 版本
- 模型版本
这实际上已经开始接近一种:
Agent APM。
十二、什么产品才配叫 Agent?
如果要给目前的 AI 系统做一个比较粗略的能力分级,我可能会分成五个 Level。
Level 0:Chatbot
最基础的模式:
输入
↓
回答
例如传统聊天机器人。
严格意义上不是 Agent。
Level 1:LLM Application
例如:
RAG
+
LLM
或者:
Prompt
+
模型
+
固定 API
典型场景:
- 企业知识库问答
- SQL 生成
- 摘要
- 文档写作
- 信息抽取
这些都属于非常有价值的 AI Application。
但并不一定是 Agent。
Level 2:Agentic Workflow
这是目前企业落地最多的一层。
例如:
用户提交报销
↓
模型判断类型
↓
查询报销规则
↓
提取信息
↓
生成审批单
↓
提交 OA
特点是:
整体流程仍然可预测、可控制。
模型可以在部分节点进行决策,但任务主流程依然受到 Workflow 控制。
很多所谓 Workflow Agent,其实更准确的名称是:
Agentic Workflow。
这并不是贬义。
恰恰相反,它可能是目前最适合企业生产环境的形态。
Level 3:Task Agent
到了这一层,Agent 才真正开始表现出比较明显的自主性。
用户只给目标:
寻找潜在客户,并整理一份销售方案。
Agent 自己决定:
寻找客户
↓
筛选客户
↓
分析公司
↓
分析联系人
↓
生成销售方案
↓
发送邮件
↓
记录 CRM
↓
跟踪回复
这里最核心的变化是:
用户给的是 Goal,而不是 Process。
这已经比较接近真正意义上的 Agent。
Level 4:Autonomous Agent
更进一步就是高度自治 Agent。
例如科研 Agent:
提出假设
↓
搜索论文
↓
分析资料
↓
设计实验
↓
执行实验
↓
分析结果
↓
修改假设
↓
继续实验
理论上,用户只需要提供一个长期目标。
Agent 可以持续规划和探索。
但这一层目前仍存在很多现实问题:
- 错误累积
- 长链路可靠性下降
- Token 成本
- 工具调用失败
- 状态漂移
- 权限风险
- 目标偏移
- 结果难验证
因此距离大规模企业自主运行还有相当长的距离。
十三、怎么看现在市场上的 Agent 产品?
如果按照上面的标准重新看今天的各种 AI 产品,会更加清晰。
例如 ChatGPT Agent 一类的产品,已经具备网页浏览、工具调用、任务执行以及一定的状态管理能力,更接近 Task Agent。
Devin 这类软件工程 Agent,同样具有:
理解任务
规划修改
编写代码
执行测试
发现错误
修复问题
因此也属于比较典型的 Task Agent。
而 Dify、Coze 这类平台,更准确来说不是一个单独的 Agent,而是:
Agent / Workflow Builder。
它们提供的是构建 Agent 所需要的:
- 模型接入
- Workflow
- 知识库
- Tool
- Prompt
- 插件
- Runtime
而 LangGraph 又是另外一个层次。
它更偏向:
Agent Runtime / Orchestration Framework。
很多行业讨论容易混乱,就是因为:
Agent、Agent Framework、Agent Platform 和 Agent Application 被放在了一起讨论。
十四、企业最终需要的不是一个 Agent,而是一整套 Agent Platform
如果 Agent 真正进入企业生产环境,仅仅做一个 Agent 肯定是不够的。
最终更可能形成这样的架构:
Enterprise Agent Platform
│
┌──────────────────┼──────────────────┐
↓ ↓ ↓
Agent Studio Agent Runtime Memory System
↓ ↓ ↓
Tool Platform Knowledge Platform Evaluation
↓
Security Platform
↓
Business Systems
如果再向底层拆:
Enterprise Agent Platform
↓
Agent Harness
↓
Agent Runtime
↓
LLM + Tools
这里的 Agent Harness 可以理解为:
将上下文管理、工具调用、记忆、Tracing、权限、重试、状态等能力统一封装起来的一层基础设施。
真正企业级 Agent 的核心竞争力,很可能并不是:
谁的 Prompt 写得最好。
而是:
谁能够让 Agent 长期、稳定、安全地执行真实业务任务。
十五、未来 2~3 年真正有价值的 Agent 是什么?
我个人并不认为未来企业真正需要的是:
一个万能 Agent。
更现实的方向反而是:
企业场景 Agent
+
可靠 Runtime
+
知识 / 数据能力
+
工具生态
+
安全治理
例如银行不会真的需要一个:
“什么事情都能自己做”的万能 Agent。
它更可能需要:
信贷预审 Agent
风险分析 Agent
客服 Agent
运营分析 Agent
合规 Agent
制造企业可能需要:
生产异常 Agent
质量分析 Agent
设备维护 Agent
供应链 Agent
这些 Agent 的特点都是:
业务边界明确,权限范围清晰,输入输出可验证。
这也更符合企业真正的需求。
十六、Agent 真正的本质是什么?
如果一定要给 Agent 写一个公式,我会这样定义:
完整 Agent
=
LLM
+
Planner
+
Memory
+
State
+
Tools
+
Runtime
+
Environment
+
Feedback
+
Governance
其中:
LLM
=
推理核心
Planner
=
决策系统
Memory
=
信息连续性
State
=
任务执行状态
Tools
=
行动能力
Runtime
=
执行框架
Environment
=
外部世界
Feedback
=
闭环优化
Governance
=
企业安全边界
所以判断一个系统到底是不是 Agent,我认为至少可以问六个问题:
- 它有没有明确的目标,而不只是回答一次问题?
- 它能不能自主决定下一步做什么?
- 它能不能调用外部能力真正执行动作?
- 它是否维护任务状态?
- 它能否根据执行结果重新调整策略?
- 它是否具备安全、权限和可观测能力?
如果这些能力基本不存在,那么它更准确的名字可能只是:
LLM Application。
如果流程仍然主要由开发者控制,只是在部分节点引入模型决策,那么它更适合被称为:
Agentic Workflow。
只有当系统真正形成:
Goal
↓
Plan
↓
Act
↓
Observe
↓
Evaluate
↓
Re-plan
这样的自主决策闭环以后,才真正开始接近我们所说的:
Agent。
结语
现在行业真正有意思的变化,其实并不是“Agent 这个概念越来越火”。
而是大家正在逐渐发现:
让模型会思考并不难,真正困难的是让一个会思考的系统长期稳定地行动。
Demo 阶段,我们关心的是:
模型能不能完成任务?
而进入生产环境以后,问题会迅速变成:
任务失败怎么办?
上下文爆了怎么办?
工具超时怎么办?
执行到一半服务挂了怎么办?
模型做错决策怎么办?
重复执行怎么办?
权限怎么控制?
结果怎么验证?
任务怎么恢复?
出了问题怎么追踪?
于是 Agent 技术最终一定会从:
Prompt Engineering
逐渐进入:
Agent Engineering。
而 Agent Runtime、Agent Harness、Memory、Tool Platform、Evaluation、Tracing、Security 等能力,本质上都在解决同一个问题:
如何把一个看起来很聪明的 Agent Demo,真正变成一个能够进入企业生产环境的软件系统。
也许这才是 Agent 接下来真正值得研究的地方。
