Skip to content
Dormon's Hideaway
Go back

AI Agent智能体的架构模式

来源:抖音 @双越AI club

AI Agent智能体正在成为大模型应用的关键,它们通过集成外部工具和复杂工作流,能够完成更复杂的任务。本文将详细介绍AI Agent智能体常用的几种架构模式,帮助理解其内部机制。

1. 大模型基础模式

最初,大型语言模型(LLM)的交互模式非常简单:用户输入消息(msg),LLM返回一个结果(res)。这种单次输入输出的模式虽然直观,但在处理复杂任务时效率低下,往往需要用户反复调整提示词(prompt)以达到满意效果。

随着LLM能力的提升和应用场景的拓展,引入工具(tools)成为必然。用户通过提示词(prompt)和工具列表(tools)向LLM发送请求。LLM可以调用这些工具来完成获取信息、操作第三方应用等任务,并最终将结果返回给用户。这种模式催生了像AI编程工具Vibe Coding和个人AI助理Open Claw等复杂AI Agent。

然而,当任务需求涉及更多信息(如记忆、私有数据)或需要更复杂的处理逻辑时,简单的工具调用模式已不足以应对。为了更好地完成这些复杂功能,AI Agent智能体演化出了更精密的内部架构模式。

2. ReAct模式

ReAct模式结合了“Reasoning”(推理)和“Action”(行动)。其核心思想是让LLM在执行任何操作前进行推理,并根据推理结果决定是执行行动还是直接生成输出。

其工作流程如下:

  1. 输入(input:用户输入任务指令,通常包含对任务的描述以及可用的工具集。这些输入被传递给LLM。
  2. LLM推理:LLM接收输入后,会判断当前任务是否需要调用工具。
    • 需要调用工具(Y:LLM会生成一个工具调用指令(Call tool),然后调用相应的工具。工具执行后会返回一个结果(Res)。这个结果会连同之前的输入一起,再次返回给LLM进行新的推理。
    • 不需要调用工具(N:LLM会直接生成最终的输出(output),任务结束。

这个过程是一个循环(loop),LLM会不断根据当前状态进行推理,决定是否继续调用工具,直到生成最终输出。ReAct模式适用于日常问答、搜索以及其他一次性、较为简单的场景。

3. Plan-Execute模式

Plan-Execute(计划-执行)模式适用于处理更长、更复杂的任务,在AI编程工具中尤为常见。其核心是在执行前先制定详细的计划,然后按计划逐步执行。

其工作流程如下:

  1. 输入(input:用户输入任务指令。
  2. LLM生成计划(plan:LLM根据输入生成一个详细的执行计划。这个计划是分步骤的任务列表,每一步都明确需要做什么。这个过程类似SPD(系统设计)和TPD(技术设计文档)的结合,或者设计代码伪代码。
    • 在Plan阶段,计划也可以允许用户介入进行修改或新增步骤。
  3. 循环执行计划(loop:Agent根据生成的计划逐一执行每个步骤(exec)。在执行过程中,它会调用可用的工具以实现计划中的子目标。
  4. 结果列表(res-list:每个执行步骤的结果被收集到一个结果列表(res-list)中。
  5. LLM汇总输出:当所有计划步骤执行完毕后,LLM会汇总结果列表中的信息,生成最终的输出(output)。

Plan-Execute模式通过将复杂任务分解为一系列可管理的子任务,提供了更高的可控性和可调试性,特别适合需要多个步骤协同完成的“长任务”或“大任务”,如撰写论文、博客或编写代码。

4. Reflection模式

Reflection模式(反思模式)侧重于通过自我修正和迭代来提高任务完成的质量和准确性。它引入了第二个LLM来对第一个LLM的输出进行评估和改进。

其工作流程如下:

  1. 输入(input:用户输入任务指令。
  2. LLM生成草稿(draft:第一个LLM(LLM1)根据输入生成一个初步的草稿或草案。
  3. LLM评估(LLM2:草稿被传递给第二个LLM(LLM2),它扮演“审阅者”的角色,评估草稿的质量和准确性。
    • 通过评估(Y:如果草稿通过评估,即满足要求,则直接作为最终输出(output)。
    • 未通过评估(N:如果草稿未通过评估,LLM2会提供修改意见,并将草稿及修改意见反馈给LLM1,让LLM1重新生成或修改草稿,形成一个迭代循环。

Reflection模式非常适合对正确性要求高的任务,例如生成重要的文档、代码或需要高精度答案的场景。通过双重LLM的协作和反馈机制,可以有效提升输出的质量。

5. 组合模式

在实际的AI Agent应用中,为了应对各种复杂多变的场景,通常会将ReAct、Plan-Execute和Reflection这三种模式进行组合使用。例如,一个Agent可能首先采用Plan-Execute模式制定任务计划,然后在执行计划的每个子步骤时,内部采用ReAct模式来决定工具调用,最后再整体使用Reflection模式来对最终结果进行验证和优化。

组合模式的灵活性在于Agent可以根据任务的性质和用户的要求,智能地选择最合适的单一模式或动态切换多种模式。例如,如果任务是生成一篇代码量大的分析报告,Agent可能会首先生成一个报告大纲(Plan),然后对大纲的每个部分进行内容生成(内部可能使用ReAct调用搜索工具获取数据),最后将整个报告提交给一个独立的LLM进行审核和修改(Reflection)。

通过这些组合模式,AI Agent智能体能够更有效地处理复杂的现实世界任务,提升效率和准确性,从而更好地满足人类在生活和工作中的多样化需求。


Share this post:

Previous Post
大厂Agent落地实践经验谈