Agent 并不是智能体,而是 LLM 参与决策的业务系统
当一个概念开始被反复拟人化、神秘化、营销化,它往往已经偏离了工程事实。
最近一年,"Agent"这个词被频繁使用:AI Agent、Autonomous Agent、Multi-Agent System......
仿佛只要加上 Agent,系统就从"程序"跃迁成了"智能体"。
"Agent"几乎成了 AI 内容领域的万能关键词。
大量文章、视频、演讲不断强调:Agent 会成长、Agent 有人格、Agent 能自我反思、Agent 像人一样工作、协作、进化。这些说法听起来令人兴奋,也极具传播力。
但如果你站在工程视角,冷静拆解,就会发现一个事实:
Agent 并不是一种新的系统形态,它只是一次决策方式的工程升级。
Agent 服务 = 有状态编排的接口调用系统
一、为什么"Agent"这个词正在被严重误用
在大量文章和演讲中,Agent 被描述成:
- 会自主思考
- 有长期记忆
- 能自我反思
- 甚至"像人一样工作"
这些描述在感受层面成立 ,
但在工程层面几乎全部是错的。
如果你真的按照"智能体"的方式去理解 Agent,
那么你在架构设计、系统边界、失败处理上,一定会踩坑。
二、从 Chat 到 Agent:真正发生变化的地方
先回到一个最基础的问题:
Chat API 是什么?
ts
response = LLM(prompt)
- 无状态
- 无上下文记忆
- 每次调用都是一次性推理
那 Agent 多了什么?
不是模型变了,而是你开始做这些事:
- 多轮调用 LLM
- 根据 LLM 输出决定下一步行为
- 调用外部接口
- 把结果再喂回 LLM
- 控制整个生命周期
于是,系统结构从:
一次调用
变成了:
调度 + 决策 + 调用 + 回写 + 循环
👉 这不是智能进化,而是工程复杂度上升。
三、LLM 是函数,不是状态机
这是理解 Agent 的一个关键前提:
LLM 是一个纯函数。
ts
output = LLM(input)
它不会记住你是谁
不会记住你问过什么
不会记住上一次的输出
如果你不把信息传进去,它就什么都不知道。
四、所谓"记忆",只是被重新注入的上下文
很多人第一次用 Agent 时会产生强烈错觉:
"它记得我之前说过的话。"
但真实情况是:
- 你把历史对话
- 你把摘要
- 你把用户画像
- 你把业务事实
再次拼进了 prompt。
从工程角度看:
Agent 没有记忆能力,
只有上下文管理能力。
所谓 Memory,本质是:
- 数据检索
- 摘要压缩
- 结构化注入
五、Agent 的真实架构:一个普通的业务系统
把"Agent"这个名字拿掉,你会发现它非常熟悉。

传统业务系统
Controller
↓
Service
↓
Rule / Workflow
↓
DB / 外部系统
Agent 系统
API
↓
Agent Orchestrator
↓
LLM(决策函数)
↓
Tool / API
↓
DB / 外部系统
变化只有一处:
原来写死在代码里的决策逻辑,
被替换成了 LLM。
六、决策从 if-else 迁移到了 prompt
过去我们这样写:
ts
if (order.amount > 10000) {
requireApproval()
}
现在我们这样写:
txt
订单金额:10000
规则:金额较大需要审批
请判断是否需要审批
再由程序执行结果。
👉 本质没有变
👉 只是决策方式从"硬规则"变成了"软判断"
七、什么时候应该用 Agent,什么时候不该
这是一个必须讲清楚的问题。
适合 Agent 的场景
- 规则难以穷举
- 判断依赖经验和语境
- 可以容忍不确定性
- 有人工兜底机制
例如:
- 内容审核建议
- 财务分析辅助
- 客服意图判断
- 运维诊断建议
不适合 Agent 的场景
- 强一致性要求
- 精确计算
- 核心交易逻辑
- 法律/合规最终裁决
Agent 不是用来替代确定性的。
八、工程上真正重要的,不是"Agent 有多聪明"
而是:
- 你如何控制上下文
- 如何限制输出边界
- 如何处理失败
- 如何回滚决策
- 如何监控行为
一旦你意识到:
Agent 是业务系统的一部分,而不是独立智能体
你所有的工程决策都会变得清晰。
结语:工程系统不应该被拟人化
Agent 并不"思考",
它只是在你设计的流程里,
用概率模型做判断。
当你把 Agent 当成一个:
LLM 参与决策的业务系统
而不是:
一个会成长的智能体
你才真正走上了可控、可扩展、可维护的工程道路。