AI浪潮下我们当何去何从--从演进范式中寻觅机遇(三)

14 阅读12分钟

Agent架构 -- 知行合一(System Engineering)

知行合一:ReAct(The Agent)

论文:《ReAct: Synergizing Reasoning and Acting in Language Models》(2022) 简单来说,ReAct 提出了一个能让大模型“一边思考,一边干活”的框架,解决了此前模型要么“只会空想”(容易产生幻觉,要么“只会蛮干”(缺乏规划)的问题。

核心思想:思考与行动的“双螺旋”

在 ReAct之前,LLM 主要有两种用法:

  • 纯推理:像 CoT 那样,模型在内部进行逻辑推演。缺点是它无法获取外部新信息,容易产生幻觉(胡说八道)。
  • 纯行动:模型直接根据指令调用工具。缺点是模型缺乏规划,不知道为什么要调用这个工具,容易迷失方向。

ReAct 的核心思想是将“推理”和“行动”交织在一起,形成一个循环。

工作流程:

ReAct 要求模型遵循一个特定的思考(Thought) -> 行动(Action) -> 观察(Observation)的循环模式:

思考(Thought):模型首先用自然语言分析当前的情况,制定计划。

例如:“我想知道 2024 年奥运会的主办城市是谁,所以我应该先搜索一下。”

行动(Action):基于思考,模型生成一个具体的指令来调用外部工具(API)。

例如:Search["2024 Olympics host city"]

观察(Observation):外部环境(如搜索引擎)返回结果给模型。

例如:“搜索结果显示:巴黎被选为 2024 年夏季奥运会主办城市。”

Next Thought(再思考):模型结合新的观察结果,更新自己的知识,进行下一步推理。

例如:“好的,现在我知道是巴黎了。接下来我需要查一下从北京去巴黎的机票价格”


为什么它这么重要?(主要贡献)
  • 解决了“幻觉”问题:纯 CoT 经常会一本正经地胡说八道,因为它的知识仅限于训练数据。ReAct 允许模型通过行动(Action)获取外部真实的、最新的信息(Observation),从而用事实支持推理,大大减少了幻觉。
  • 解决了“盲目行动”问题:如果模型只知道调 API 却不思考,遇到报错就会卡死。ReAct 通过思考(Thought)步骤,让模型在行动前进行规划,在行动失败后(通过观察错误信息)进行调整和纠错。
  • 可解释性:ReAct 的轨迹非常清晰。人类可以确切地看到模型是“怎么想的”(Thought),以及它根据想法“做了什么”(Action)。这对于调试 Agent 至关重要。
带来的影响

ReAct 的影响是行业标准级的,它定义了现代 AI Agent 的基本范式:

  • LangChain 的基石:如果你用过 LangChain 框架,你会发现其核心的 Agent 模块就是基于 ReAct 模式实现的。它让开发者能极快地构建出能联网、能查库的 AI 助手。
  • 确立了 Agent 的标准交互格式:现在几乎所有的 Agent 框架(AutoGPT,BabyAGI等)在底层都在模仿这种思考 - 行动 - 观察的循环。它证明了 LLM 不仅仅是一个文本生成器,更是一个决策控制器。
  • 连接了 LLM 与外部世界:CoT 让 LLM 拥有了大脑,ReAct 则是给 LLM 装上了手脚和眼睛,真正打通了“数字大脑”与“真实世界工具”之间的壁垒。

一句话总结:ReAct 是“知行合一”在 LLM 上的实现,它让 AI 既能像哲学家一样思考(Reason),又能像工程师一样查资料、调工具(Act),从而实现现实世界的复杂问题。

Reflexion: 自我反思与语言强化学习

论文:《Reflexion: Language Agents with Verbal Reinforcement Learning》(2023)

image.png

该论文中提出了一种名为 Reflexion 的新型框架,它并非通过更新权重,而是通过语言反馈来强化语言智能体。具体来说,Reflexion 智能体会对人物反馈信号进行口头反思,并将反思文本保存在情景记忆缓存区中,从而在后续试验中做出更优的决策。Reflexion 具有足够的灵活性,可以整合各种类型(标量值或自由语言)和来源(外部或内部模拟)的反馈信号,并在各种任务(序列决策、编码、语言推理)中都取得了比基线智能体显著的改进。例如 Reflexion 在编码基准测试中达到了 91% 的 pass@1 准确率,超越了之前最先进的 GPT-4 的 80%。

image.png

让 AI 智能体像人一样,通过“事后反思”来学习和改进。

它开创了一种不需要微调模型就能实现自我迭代和进化的框架。智能体在执行任务失败后,会停下来“自我反思”,生成一段关于“哪里做错了、为什么错了、下次该怎么改”的文字,然后把这段“反思”存入记忆,在下一次尝试时作为“经验教训”来指导自己。

这个过程被称为“语言强化学习”。


核心思想:Reflexion框架

传统的智能体在一次任务中通常是“一条路走到黑”。如果它们的规划或行动出错了,这次任务就失败了,他们下次遇到同样问题还是会犯错。

Reflexion 改变了这一点,它引入了一个“反思”循环:

  1. 行动(Act):智能体根据任务和上下文,生成一个行动轨迹来尝试解决问题。

  2. 评估(Evaluate):系统会根据环境的反馈(例如,代码编译器的报错信息、测试用例的“Pass/Fail”结果)来评估这次“行动”是成功还是失败。

  3. 反思(Reflect):这是最关键的一步

    • 如果任务失败了,系统会启动一个“反思者”模块。
    • “反思者”会分析失败的行动轨迹和环境反馈,然后用自然语言生成一段“自我反思”的笔记。
    • 例如:“我上次的尝试失败了,因为我试图使用一个不存在的 API。我应该先调用 search 工具来查找正确的 API 名称。
  4. 记忆与迭代(Memory & Iteration):

    • 这段“反思笔记”被储存在一个“长期记忆库”中。
    • 在下一次尝试解决同一个问题时,系统会把这段“反思笔记”作为额外的上下文一起放入提示中。
  5. 循环: 智能体现在有了新的“经验教训”,它会生成一个(理论上)更优的行动计划,再次尝试,直到任务成功或达到最大尝试次数。

一句话总结:Reflexion = 行动(Act)+ 评估(Evaluate)+ 反思(Reflect),并通过“语言记忆”进行迭代改进。

主要影响和意义

Reflexion 的影响力巨大,因为它为 AI 智能体解决复杂问题提供了一套全新的、轻量级的“试错”和“学习”范式。

  1. “语言强化学习”(VerRL)的开创:

    传统的强化学习(RL)通过调整模型的“权重”(参数)来学习,这非常昂贵且缓慢。Reflexion 提出,我们根本不需要动模型的权重,只要把“经验教训”写成文字(语言),然后让模型在下一次把这些文字“读一遍”,就能起到类似的学习效果。这是一种“无权重更新”的高效学习。

  2. 显著提升复杂任务的性能:

    这篇论文最惊人的成果是在代码生成基准(HumanEval)上的表现。通过使用 Reflexion 框架(即允许模型在失败后“反思”并重试),它将 GPT-4 在 HumanEval 上的 pass@1准确率从 80.0% 提升到了 91.0%

  3. 赋予智能体“试错”的能力:

    它让智能体不再是一个“一次性”工具,而是一个可迭代的“问题解决者”。在它之前,智能体失败了就是失败了;在它之后,失败成为了“下一次成功之母”,智能体可以从失败中提取价值。

  4. 智能体记忆(Memory)的基石:

    Reflexion 是智能体“长期记忆”领域的核心论文之一。它具体展示了记忆如何被(通过反思)写入,以及如何被(通过检索)读取,从而形成一个有意义的学习闭环。

Multi - Agent 多智能体写作

论文:《CAMEL: Communicative Agents for "Mind" Exploration of Large Scale Language Model Society》(2023)

CAMEL 是多智能体(Multi - Agent)系统领域的另一篇开山之作。如果说 MetaGPT 是引入“公司管理流程”,那么 CAMEL 则是确立了智能体之间“如何通过角色扮演进行有效沟通”的基础理论。

核心思想:角色扮演(Role - Playing)与 初始引导(Inception Prompting)

在 CAMEL 之前,人们发现让两个 AI(比如两个 ChatGPT 示例)相互聊天,它们很容易陷入无限重复、互相吹捧或者偏离主题的尴尬境地。CAMEL 提出了一个解决这个问题的核心框架:角色扮演框架(Role - Playing Framework)。

Inception Prompting:这是论文最大的技术贡献。为了让两个智能体能够自主地把任务进行下去,CAMEL 涉及了一套精密的“初始提示词”。

它在对话开始前,分别给两个智能体“洗脑”:

  • AI User(用户代理):“你是用户,你的目标是让对方帮你完成任务 X。你必须不断提出具体的指令。“
  • AI Assistant(助手代理):“你是助手,你的目标是执行指令并给出解决方案。你必须听从用户的指令。”

这套机制确保了对话不会跑偏,一个负责发号施令,一个负责干活,形成了稳定的闭环。

任务细化器(Task Specifier):人类给出的任务通常很模糊(比如“做一个股票交易机器人”)。CAMEL 引入了一个专门的 Agent 来把这个模糊的想法变成具体的“任务描述”,然后再交给上面的 User 和 Assistant 去执行。

核心机制图解

image.png

CAMEL 的工作流非常直观,就像是一场没有人类参与的“双人即兴表演”:

  • Human:给出一个模糊的 Idea(例如:开发一个贪吃蛇游戏)
  • Task Specifier Agent:将 Idea 转化为具体的 Task(例如:使用 Python Pygame 库编写贪吃蛇,包含记分功能)。
  • Role Assignment:分配角色(Agent A 扮演 Python 程序员,Agent B 扮演股票交易员)。
  • Inception:注入初始 Prompt,激活角色。
  • Chat Loop:两个 Agent 自动对话,直到任务完成。

image.png

带来的影响

CAMEL 在学术界和工程界的影响力非常大,它是最早证明“LLM 可以通过自主对话解决复杂问题”的论文之一。

  • 确立了“交际智能体”(Communicative Agents)的研究范式:它证明了不需要人类一步步 Prompt,只要设定好“人设”和“初始规则”,AI 之间是可以自主协作的。这位后来的 AutoGen 等框架提供了理论基础。
  • 解决了对话的“主要矛盾”:通过区分 Instruction Giver(指令发出者)和 Instruction Follower(指令执行者),CAMEL 解决了多智能体系统中常见的“谁该听谁的”这一控制权问题,避免了死循环。
  • 低成本生成高质量数据:论文题目中的“Mind Exploration”暗示了这一点。CAMEL 被大量用于合成数据。通过让 AI 互相扮演专家对话,人类可以以极低的成本获得海量的、高质量的垂直领域对话数据(例如让两个 AI 扮演医生和患者,生成医疗问答数据),用于训练更小的模型。

结语:从“炼丹师”到“系统架构师”与“场景定义者”

当我们回顾从 GPT-1 到 Multi - Agent 的这段波澜壮阔的演进史,关于“AI 工程师的空间在哪儿”这个问题的答案,其实已经浮现在每一次范式的跃迁之中。 起初,我们以为工程师的空间在于“训练” **- - 我们在参数的海洋里寻找收 的彼岸; **

后来,我们以为工程师的空间在于“提示” **- - 我们试图用咒语般的 Prompt 唤醒巨人的沉睡; **

但现在,正如 ReAct、MetaGPT 和 Generative Agents 所展示的那样,真正 的工程师空间,在于“系统”。

大模型本身,正在变成计算机的新型 CPU。它拥有惊人的算力和通识,但它依 然会有幻觉、会遗忘、会缺乏规划。而 AI 工程师的使命,不再是去打磨这颗 CPU 的晶体管(那是 OpenAI 的事),而是围绕这颗 CPU,去构建主板(流程 编排)、硬盘(记忆系统)、网卡(工具连接)以及操作系统(多智能体协作机制)。

工程的本质,是对抗熵增,是构建秩序。而工程师的主观能动性,则是为通用 智能注入“业务灵魂”。

  • 当模型像顽童一样思维跳脱时,我们用 CoTToT 赋予它逻辑的轨道;
  • 当模型像空想家一样坐而论道时,我们用 ReActTools 赋予它行动的手脚;
  • 当模型像独行侠一样力不从心时,我们用 MetaGPTCAMEL 赋予它协作的组织;
  • 当模型像过客一样看过即忘时,我们用 Generative Agents 赋予它记忆的 灵魂。

AI工程师的空间在哪儿?

它就在模型能力与现实需求之间的巨大鸿沟里。 它在于将“预测下一个词”的概率统计,转化为“解决复杂问题”的确定性方案。 它在于让 60 分的模型,通过完美的系统设计,跑出 90 分的效果;让 90 分的 模型,通过严密的约束,展现出 100 分的可靠。

在这个时代,我们不再仅仅是代码的编写者,我们是硅基大脑的心理学家,是数字社会的社会学家,更是新一代智能系统的架构师。

模型决定了智能的下限,而工程师决定了应用的上限

这,就是属于我们的广阔空间。

备注:核心思想与内容整理来自于本人,文章经过 AI 润色,故部分信息可能有出入。