从“工具”到“居民”:AI Agent 的演化简史与范式革命(2023–2026)
从“工具”到“居民”:AI Agent 的演化简史与范式革命(2023–2026)
1. 起点:当语言模型第一次“伸出手”
在 2023 年之前,“Agent”在 AI 教科书里意味着别的东西。它指的是强化学习中的智能体——一个在环境中试错、根据奖励信号更新策略的数学对象。它也是经典 AI 中的 BDI(信念—欲望—意图)架构,一个用符号逻辑表示目标和计划的推理系统。这些 Agent 能下棋、能规划路径、能在模拟环境中学习控制策略,但它们有一个共同的局限:它们的“世界”是预先定义好的,无法用自然语言与人类世界直接交互。
大语言模型的出现打破了这个边界。一个经过指令微调的 LLM 已经拥有了两样东西:对世界的广泛语言知识,以及根据自然语言指令生成合理后续文本的能力。前者意味着它可以“理解”任务,后者意味着它可以“说出”下一步该做什么。距离真正的 Agent,只差一个关键结构:把“说”变成“做”。
2023 年的 Toolformer 提供了第一块拼图。它的核心发现简洁而深刻:LLM 可以自学如何使用外部工具 API,而不需要人工标注大量工具调用数据。具体做法是:给模型少量工具使用示例,让它自动生成候选的 API 调用,然后仅保留那些确实提高了后续文本预测概率的调用。经过这个自我筛选过程微调后的模型,学会了在需要计算时调用计算器,在需要事实时调用搜索引擎。一个 67 亿参数的模型,在算术和事实问答上因此击败了 1750 亿参数的 GPT-3。
但这还不是 Agent。Toolformer 让模型学会了“伸手”,但伸手的时机和方式仍然是被动触发的。它更像一个拥有工具能力的语言模型,而不是一个主动追求目标的智能体。
2. ReAct 范式:Agent 的“心跳”算法
2023 年真正被广泛视为 LLM Agent 奠基性工作的,是 ReAct(Reasoning + Acting)。它的核心思想可以用一句话概括:让模型在“思考”和“行动”之间交替循环,直到问题解决。
在没有 ReAct 之前,LLM 解决问题的方式有两种极端。一种是纯推理(Chain-of-Thought):模型在内部一步步推导,但不接触外部世界。这种方式受限于模型的参数知识,一旦需要实时信息或精确计算就会产生幻觉。另一种是纯行动:模型直接输出工具调用,但没有“为什么调用”的推理过程,导致工具使用盲目且难以从错误中恢复。
ReAct 把两者缝合在一起。它的循环是:
Thought(推理)→ Action(调用工具)→ Observation(观察结果)→ Thought → ...
每一步,模型先“想”当前该做什么,然后“做”,然后“看”结果,再“想”下一步。这个循环持续到模型输出一个终止信号(通常是“Answer: ...”)。
从工程角度看,ReAct 的优雅之处在于它的简单性。它不需要修改模型架构,不需要强化学习,只需要一个精心设计的系统提示词(system prompt),告诉模型“你有以下工具可用,请按 Thought/Action/Observation 的格式回应”。以下是一个极简的 Python 实现骨架:
import re, json
class ReActAgent:
def __init__(self, llm, tools, max_steps=10):
self.llm = llm
self.tools = tools # dict: name -> callable
self.max_steps = max_steps
def build_prompt(self, task, scratchpad):
tool_desc = "\n".join([f"- {name}: {fn.__doc__}" for name, fn in self.tools.items()])
return f"""You are a ReAct agent. Solve the task by alternating Thought and Action.
Available tools:
{tool_desc}
Format:
Thought: your reasoning
Action: tool_name
Action Input: JSON arguments
When done, output: Answer: your final answer
Task: {task}
{scratchpad}"""
def run(self, task):
scratchpad = ""
for step in range(self.max_steps):
# 1. 模型生成下一步的 Thought/Action
response = self.llm.generate(self.build_prompt(task, scratchpad))
scratchpad += response + "\n"
# 2. 解析出 Action
action_match = re.search(r"Action:\s*(\w+)", response)
input_match = re.search(r"Action Input:\s*(\{.*\})", response)
if not action_match:
# 没有 Action,检查是否给出了最终答案
if "Answer:" in response:
return response.split("Answer:")[-1].strip()
scratchpad += "Observation: Invalid format. Please follow the template.\n"
continue
# 3. 执行工具,获得 Observation
tool_name = action_match.group(1)
try:
args = json.loads(input_match.group(1)) if input_match else {}
observation = str(self.tools[tool_name](**args))
except Exception as e:
observation = f"Error: {e}"
scratchpad += f"Observation: {observation}\n"
return "Max steps reached."
这个代码骨架揭示了 Agent 的本质:LLM 只是一个概率性的“策略函数”,真正的智能行为来自“推理—行动—反馈”这个闭环结构。ReAct 之所以成为后续几乎所有 Agent 框架的底层范式(包括 LangChain、AutoGPT、以及后来的多 Agent 系统),正是因为它在最小改动下赋予了 LLM 一种“具身性”——哪怕这个身体只是一个 Python 运行时。
3. 2023 年的爆发:自主性实验与社会模拟
有了 ReAct 的骨架,2023 年见证了两条并行的发展线索。
一条线索是 自主性的极限探索。AutoGPT 在 2023 年春天引爆了 GitHub,它的想法近乎疯狂:给一个 GPT-4 实例一个高层目标(比如“帮我做一个网站”),然后让它无限循环地自我提示,自己决定下一步、执行、评估结果、再决定下一步。AutoGPT 本质上就是把 ReAct 循环推到了极致,并且加入了文件读写、网页浏览、代码执行等工具。它的爆红反映了一种集体兴奋:如果 LLM 能推理和行动,也许它真的能“自己完成任务”。但随之而来的也是第一批关于 Agent 安全性的严肃讨论——一个能自主调用工具的系统,如果产生幻觉性的行动,后果可能远超聊天机器人的错误回答。
另一条线索更为安静,但影响更深远:斯坦福 AI 小镇。2023 年 4 月,斯坦福和 Google 的研究者发布了“Generative Agents”论文,并开源了那个后来被无数人复现的像素风格虚拟小镇。25 个 LLM 驱动的居民住在小镇里,自己起床、做早餐、上班、社交。研究者给每个 Agent 设计了三个关键组件:记忆流(用自然语言记录所有经历)、反思(定期从记忆中提炼更高层的洞察)、计划(根据记忆和反思生成每日日程并动态调整)。一个居民想办情人节派对,消息通过社交网络传播,几天后真的有其他居民出现在了派对现场——全程没有脚本。
AI 小镇的意义远超“好玩”。它第一次证明了一件在 2023 年初还相当激进的事:LLM 不只是文字生成器,它可以作为“认知内核”驱动一个持续存在、有记忆、有社会行为的个体。这为后来的“多 Agent 社会模拟”和“具身 Agent”铺平了道路。李飞飞团队的 Agent AI 综述后来将这类工作归入“交互—自主环境”类别,与“认知—数字任务自动化”并列为 Agentic AI 的两大应用方向。
4. 从“单体 Agent”到“Agent 社会”:架构的成熟
2023 年的 Agent 大多是“单体”的:一个 LLM,加上一些工具,在一个循环里运行。但到了 2024–2025 年,研究者们逐渐意识到,单体 Agent 有结构性天花板。一个 LLM 实例的上下文窗口是有限的,它的“记忆”在会话结束后就消失了;它难以同时处理相互依赖的多个子任务;它缺乏对自身行为的系统性监督。
解决方案是多 Agent 系统。思路很直接:如果一个人做不完,就分给一个团队。但 LLM 团队的组织方式需要新的架构模式:
层级式(Supervisor-Worker):一个“主管”Agent 接收高层目标,拆解为子任务,分派给专门的“工人”Agent(研究员、程序员、审查者),最后汇总结果。AutoGen 和 CrewAI 是这一模式的代表框架。
辩论式(Debate):多个 Agent 各自独立给出答案,然后互相批判、反驳,迭代几轮后收敛到一个共识。实证研究表明,辩论后的集体答案在事实推理任务上比任何单个 Agent 的输出更准确。
社会模拟式:AI 小镇开创的范式被推广到了更大规模。2025–2026 年,研究者开始用多 Agent 系统模拟紧急疏散:地铁站起火,虚拟人在浓烟中做出“像真人一样错误”的决策——先刷手机确认、走熟悉的而非最近的出口、折返去找家人。这类研究的核心洞察是:用传统物理模型只能模拟“人会怎么跑”,用 LLM Agent 才能模拟“人会怎么判断”。
与此同时,工程层面对 Agent 的“基础设施”需求也催生了新的架构思维。NeuroStack 的八层架构是一个典型代表,从底层的网络通信、工具集成,到中间的认知推理、长期记忆,再到顶层的治理与监督。这标志着 Agent 从“prompt 工程技巧”走向了“系统工程学科”。
一个值得注意的趋势是记忆机制的独立化。在早期 Agent 中,记忆就是“把历史对话塞进上下文窗口”。但上下文窗口终会满,塞进去的内容也有注意力衰减问题。现代 Agent 架构开始把记忆拆分为短期上下文记忆和长期外部记忆,后者以向量数据库的形式存储,通过语义相似度检索来“回忆”相关经历。这种“记忆的外部化”是 Agent 能够进行长程任务的关键前提。
5. 当前挑战与未完成的演化
站在 2026 年回看,Agent 的演化脉络已经相当清晰:从被动工具使用,到主动推理循环,再到社会化的多 Agent 协作。但这条演化远未完成。几个核心挑战仍然悬而未决。
可靠性问题。Agent 的错误有放大效应。一个聊天机器人说错一句话,用户笑一笑就过去了。但一个 Agent 错误地调用了一个 API、写入了一个文件、发送了一封邮件,后果可能是不可逆的。SWE-bench 等基准测试显示,最好的编码 Agent 能自主解决超过 50% 的真实 GitHub issue,但那也意味着接近一半的失败率。在高风险场景中,这个数字远远不够。
长程规划中的目标漂移。当任务持续几十甚至上百步时,Agent 的“目标感”会逐渐模糊。上下文中的噪声累积,早期的计划被遗忘,Agent 开始做一些看起来相关但实际偏离主线的事情。目前的主流应对是外部计划表示(把计划写成一个显式的文件或数据结构,而非依赖模型记住)和定期反思(让 Agent 每隔几步回顾一下“我最初要做什么”)。
评估的困难。传统 NLP 的评估是静态的:给一个输入,看输出对不对。Agent 的评估是动态的:它要在环境中行动,行动改变环境,环境反馈回来影响下一步。这种交互性使得“标准答案”很难定义。2026 年 ACL 的一篇 Agent 评估综述指出,当前基准正在向更真实、更动态的方向演进,但在成本效率、安全性和鲁棒性方面的评估方法仍然严重不足。
安全与治理。一个能行动的 Agent,权限应该给到多大?如果它需要访问数据库来完成任务,怎么防止它删除数据?Prompt 注入攻击在这里变得尤为致命:一个恶意网页可以在 Agent 浏览时嵌入指令,诱导它泄露数据或执行未授权操作。行业共识正在形成几条底线原则:最小权限(Agent 只能访问完成任务必需的资源)、人在回路(高风险操作需要人类批准)、审计追踪(所有工具调用和决策被记录)。
6. 结语:Agent 是什么,以及它将是什么
回看 2023 到 2026 的演化,一个核心的认知转变正在发生。
在 2023 年初,人们把 Agent 理解为“一个能使用工具的 LLM”。到了 2024 年,理解变成了“一个拥有记忆、规划和多 Agent 协作能力的系统”。而到了 2026 年,前沿研究者开始用更结构化的语言描述它:Agent 是一个在感知—推理—规划—记忆—行动—学习六环节循环中持续运行的系统,它可以是单体的,也可以是社会性的;可以操作数字工具,也可以驱动具身实体;可以服务于企业流程,也可以模拟人类社会。
李飞飞团队的综述将这一领域描述为“多模态交互的前沿”,并特别强调了 Agent 的具身性和环境交互维度。这个判断是对的,但可能还不够。Agent 演化的真正方向,也许不是让 AI 更“像人”,而是让 AI 能够在人的世界里持续地、负责任地行动。
从 Toolformer 的“伸手”,到 ReAct 的“心跳”,到 AI 小镇的“社会”,再到多 Agent 系统的“协作”——每一步都在回答同一个问题:当一个语言模型不仅会“说”,而且会“做”的时候,它应该成为什么?
这个问题的答案,还在书写中。