跳转到内容

9.1.3 Agent 发展历程

完成本节后,你将能够:

  • 理解 Agent 不是突然出现的新概念
  • 说清楚规则系统、工作流和现代 Agent 的演化关系
  • 看懂“为什么大模型让 Agent 真正变得可用”
  • 用一个小例子体验不同阶段系统的差别

如果想看更完整的 AI 时间线,可以把本节和 A.3 AI 发展史:15 个阶段与关键论文 放在一起读。本节只聚焦 Agent 这条线。

从脚本到现代 LLM Agent 的系统演进图

读这张图时可以从下往上看:固定脚本解决稳定任务,工作流增加结构,带工具的大模型系统增加判断能力,现代 Agent 才开始把目标、工具、记忆和反馈循环放在一起管理。


最早的自动化更像“固定脚本”

Section titled “最早的自动化更像“固定脚本””

在没有大模型之前,很多自动化系统就已经在工作了:

  • 定时任务
  • 表单自动处理
  • 规则引擎
  • RPA 流程机器人

这些系统有价值,但共同特点是:

路线基本提前写死。

规则机器人更像“严格照剧本演”

Section titled “规则机器人更像“严格照剧本演””

比如一个客服规则机器人可能这样工作:

  • 如果用户提到“退款”,回复退款条款
  • 如果用户提到“证书”,回复证书说明

它不太会真正规划,也不太会灵活换招。


工作流时代:比规则更强,但还是偏固定

Section titled “工作流时代:比规则更强,但还是偏固定”

工作流是“可组合的固定流程”

Section titled “工作流是“可组合的固定流程””

后来系统变得更复杂一些,开始出现:

  • 条件分支
  • 多步骤串联
  • 工具组合

比如:

  1. 识别用户意图
  2. 调数据库
  3. 调模板生成回复

这已经比纯规则更强,但很多时候仍然是“预先设计好的路”。

工作流为什么到今天仍然重要?

Section titled “工作流为什么到今天仍然重要?”

因为它:

  • 稳定
  • 可控
  • 好调试

所以今天即使 Agent 很火,很多真实项目里依然大量使用工作流。

为什么工作流这条线直到今天都没过时?

Section titled “为什么工作流这条线直到今天都没过时?”

因为它满足了工程里最现实的三件事:

  • 稳定
  • 可控
  • 可审计

这也是为什么很多初学者后来会发现:

  • “更像 Agent”的系统不一定总比工作流更值

很多真实场景里, 工作流并不是旧时代残留, 而更像:

Agent 时代里仍然非常重要的地基。


大模型出现前,为什么很难做通用 Agent?

Section titled “大模型出现前,为什么很难做通用 Agent?”

过去系统擅长:

  • 按规则执行
  • 按结构化字段处理

但不擅长:

  • 读懂开放式自然语言指令
  • 在不确定场景里决定下一步

所以很多系统只能“自动化”,很难“智能体化”

Section titled “所以很多系统只能“自动化”,很难“智能体化””

它们能做事,但做的通常是:

  • 固定、明确、结构化的事

而不是:

  • 带歧义、带上下文、需要动态判断的事

它让“自然语言 -> 可执行动作”的桥接变强了

Section titled “它让“自然语言 -> 可执行动作”的桥接变强了”

大模型最关键的改变之一,不只是更会聊天,而是更会:

  • 理解开放式指令
  • 生成结构化输出
  • 选择工具
  • 组织中间步骤

这意味着系统终于可以:

不必每一步都人工写死,而是让模型辅助决定下一步。

当大模型具备:

  • 指令跟随
  • 工具调用
  • 长上下文
  • 更强的规划能力

Agent 才真正从概念走向可用。

为什么很多人会把这一步看成真正的“门槛被迈过去”?

Section titled “为什么很多人会把这一步看成真正的“门槛被迈过去”?”

因为在大模型之前,自动化系统大多只能:

  • 按模板走
  • 按固定结构走

而大模型第一次明显增强了:

  • 理解开放式指令
  • 生成结构化动作
  • 在模糊条件下继续推进任务

这就让很多人产生一种很强的感觉:

系统终于不只是“照着流程做事”,而开始更像“能围绕目标自己组织步骤”。


下面我们用同一个任务,看三种不同阶段的实现味道。

def rule_bot(query):
if "退款" in query:
return "请查看退款政策。"
if "证书" in query:
return "请查看证书说明。"
return "抱歉,我不理解你的问题。"
print(rule_bot("怎么退款"))
print(rule_bot("证书怎么拿"))

预期输出:

Terminal window
请查看退款政策。
请查看证书说明。
def workflow_bot(query):
if "退款" in query:
doc = "退款政策:7 天内且学习进度低于 20% 可退款。"
return f"根据知识库:{doc}"
if "证书" in query:
doc = "证书说明:完成项目并通过测试后可获得证书。"
return f"根据知识库:{doc}"
return "未命中流程节点。"
print(workflow_bot("怎么退款"))

预期输出:

Terminal window
根据知识库:退款政策:7 天内且学习进度低于 20% 可退款。
def tool_search_policy(keyword):
docs = {
"退款": "退款政策:7 天内且学习进度低于 20% 可退款。",
"证书": "证书说明:完成项目并通过测试后可获得证书。"
}
for k, v in docs.items():
if k in keyword:
return v
return "未找到相关政策。"
def simple_agent(query):
steps = []
steps.append("先判断问题类型")
if "退款" in query or "证书" in query:
steps.append("决定调用政策检索工具")
evidence = tool_search_policy(query)
steps.append(f"拿到证据:{evidence}")
answer = f"根据检索到的政策,回答如下:{evidence}"
else:
steps.append("当前无法决定合适工具")
answer = "抱歉,我还不会处理这个任务。"
return steps, answer
steps, answer = simple_agent("如果我没学多少,可以退款吗?")
print(steps)
print(answer)

预期输出:

Terminal window
['先判断问题类型', '决定调用政策检索工具', '拿到证据:退款政策:7 天内且学习进度低于 20% 可退款。']
根据检索到的政策,回答如下:退款政策:7 天内且学习进度低于 20% 可退款。

这个例子里,Agent 虽然还是简化版,但已经体现出“判断 -> 选工具 -> 利用结果”的结构了。


早期大家看到大模型可以:

  • 自己写计划
  • 自己调用工具
  • 自己循环执行

于是出现了大量“全自动 Agent”尝试。

实践下来发现:

  • 完全自由的 Agent 不一定稳定
  • 多步系统容易累计错误
  • 成本和时延会很高

所以行业逐渐走向更成熟的方向:

  • 用工作流约束 Agent
  • 用工具调用增强稳定性
  • 用评估和观测提升可控性

这是一种“从兴奋走向工程化”的过程。

为什么这段历史对初学者特别有价值?

Section titled “为什么这段历史对初学者特别有价值?”

因为它会帮你避免一个很常见的误区:

  • 以为 Agent 一定是越自由越高级

但真实世界往往不是这样。 很多时候真正值钱的是:

  • 稳定
  • 可解释
  • 可恢复
  • 可回放

所以 AutoGPT 这段历史最值得记住的,不是热度本身, 而是它像一次全行业一起上的公开实验:

大家先看见了可能性,然后又被现实拉回工程约束。


不再是“无限自主”,而是“有限自主”

Section titled “不再是“无限自主”,而是“有限自主””

更成熟的 Agent 系统通常会:

  • 给定明确目标边界
  • 限制可用工具
  • 记录中间状态
  • 设置超时和安全护栏

它更像“带流程约束的智能执行器”

Section titled “它更像“带流程约束的智能执行器””

这也是为什么现在很多团队并不追求“最自由的 Agent”,而更重视:

  • 稳定
  • 可回放
  • 可审计

以为 Agent 历史就是从 ChatGPT 开始

Section titled “以为 Agent 历史就是从 ChatGPT 开始”

不是。 ChatGPT 和 LLM 只是让 Agent 进入了新阶段。

很多规则系统和工作流到今天依然是工业主力。

真实工程里,可控往往比“听起来更聪明”更重要。


学完这一页,至少保留这张证据卡:

智能体边界
这与聊天机器人或固定工作流有何不同
目标状态动作
目标、当前状态、下一步动作、观察
架构组成
规划器、工具、记忆、护栏、评估器
失败检查
过度自主、目标模糊、状态缺失或没有 trace
下一步动作
构建最小可追踪的单智能体循环

这一节最重要的认识是:

Agent 不是凭空出现的新物种,而是自动化系统在大模型时代的一次能力跃迁。

理解它的历史,能帮助你更冷静地判断: 什么时候该用 Agent,什么时候其实工作流就够了。


  1. simple_agent() 再增加一个工具,比如“计算器”。
  2. 用自己的话总结规则机器人、工作流和 Agent 的区别。
  3. 想一想:为什么很多团队在 Agent 项目里,最后还是会保留大量固定流程节点?
项目交付参考与讲解
  1. 计算器工具只应该路由给数值计算任务,并且要校验输入,返回结构化结果或明确错误。
  2. 规则机器人匹配固定条件;工作流执行预先定义好的步骤;Agent 会根据目标、上下文和 observation 选择工具与动作。
  3. 固定流程节点仍然有价值,因为它们更容易测试、审计、加权限和恢复。真实 Agent 系统通常会把确定性的 workflow 和灵活的 Agent 步骤混合起来。