1. 引言
随着大语言模型(LLM)能力的快速演进,智能体(Agent)已成为人工智能领域最受关注的方向之一。从简单的对话助手到能够自主规划、调用工具、协同完成复杂任务的系统,智能体的实现方式也在不断分化与成熟。理解智能体的三大范式,是设计高效、可靠智能系统的关键起点。
2. 范式一:ReAct(推理与行动)
ReAct 范式强调将**推理(Reasoning)与行动(Acting)**交替结合。智能体在每一步都会先基于当前状态进行思考,再决定调用哪个工具或执行哪个动作,最后根据观察到的结果继续推理,形成"思考-行动-观察"的循环。
这种范式的核心优势在于:
- 可解释性强:每一步推理过程都可追溯,便于调试与审计;
- 灵活度高:能够动态调整行动计划,适应环境变化;
- 适合复杂任务:在需要多步推理、逐步验证的场景中表现优异。
python
def react_agent(question):
thought = f"我需要先理解问题:{question}"
action = "search_knowledge_base"
observation = search(question)
thought = f"根据搜索结果,我可以给出答案:{observation}"
return thought
3. 范式二:Plan-and-Execute(规划与执行)
Plan-and-Execute 范式将任务拆分为两个阶段:先规划,后执行。智能体首先对目标进行整体拆解,生成一个包含多个步骤的完整计划,然后逐步执行计划中的每个子任务,并在必要时对计划进行调整。
与 ReAct 相比,这种范式更强调全局视角 与任务分解,适合目标明确、步骤可预见的场景,能够减少频繁推理带来的开销,提升执行效率。
#mermaid-svg-BdHslTbONcCLGzwO{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-BdHslTbONcCLGzwO .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-BdHslTbONcCLGzwO .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-BdHslTbONcCLGzwO .error-icon{fill:#552222;}#mermaid-svg-BdHslTbONcCLGzwO .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-BdHslTbONcCLGzwO .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-BdHslTbONcCLGzwO .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-BdHslTbONcCLGzwO .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-BdHslTbONcCLGzwO .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-BdHslTbONcCLGzwO .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-BdHslTbONcCLGzwO .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-BdHslTbONcCLGzwO .marker{fill:#333333;stroke:#333333;}#mermaid-svg-BdHslTbONcCLGzwO .marker.cross{stroke:#333333;}#mermaid-svg-BdHslTbONcCLGzwO svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-BdHslTbONcCLGzwO p{margin:0;}#mermaid-svg-BdHslTbONcCLGzwO .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-BdHslTbONcCLGzwO .cluster-label text{fill:#333;}#mermaid-svg-BdHslTbONcCLGzwO .cluster-label span{color:#333;}#mermaid-svg-BdHslTbONcCLGzwO .cluster-label span p{background-color:transparent;}#mermaid-svg-BdHslTbONcCLGzwO .label text,#mermaid-svg-BdHslTbONcCLGzwO span{fill:#333;color:#333;}#mermaid-svg-BdHslTbONcCLGzwO .node rect,#mermaid-svg-BdHslTbONcCLGzwO .node circle,#mermaid-svg-BdHslTbONcCLGzwO .node ellipse,#mermaid-svg-BdHslTbONcCLGzwO .node polygon,#mermaid-svg-BdHslTbONcCLGzwO .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-BdHslTbONcCLGzwO .rough-node .label text,#mermaid-svg-BdHslTbONcCLGzwO .node .label text,#mermaid-svg-BdHslTbONcCLGzwO .image-shape .label,#mermaid-svg-BdHslTbONcCLGzwO .icon-shape .label{text-anchor:middle;}#mermaid-svg-BdHslTbONcCLGzwO .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-BdHslTbONcCLGzwO .rough-node .label,#mermaid-svg-BdHslTbONcCLGzwO .node .label,#mermaid-svg-BdHslTbONcCLGzwO .image-shape .label,#mermaid-svg-BdHslTbONcCLGzwO .icon-shape .label{text-align:center;}#mermaid-svg-BdHslTbONcCLGzwO .node.clickable{cursor:pointer;}#mermaid-svg-BdHslTbONcCLGzwO .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-BdHslTbONcCLGzwO .arrowheadPath{fill:#333333;}#mermaid-svg-BdHslTbONcCLGzwO .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-BdHslTbONcCLGzwO .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-BdHslTbONcCLGzwO .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-BdHslTbONcCLGzwO .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-BdHslTbONcCLGzwO .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-BdHslTbONcCLGzwO .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-BdHslTbONcCLGzwO .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-BdHslTbONcCLGzwO .cluster text{fill:#333;}#mermaid-svg-BdHslTbONcCLGzwO .cluster span{color:#333;}#mermaid-svg-BdHslTbONcCLGzwO div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-BdHslTbONcCLGzwO .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-BdHslTbONcCLGzwO rect.text{fill:none;stroke-width:0;}#mermaid-svg-BdHslTbONcCLGzwO .icon-shape,#mermaid-svg-BdHslTbONcCLGzwO .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-BdHslTbONcCLGzwO .icon-shape p,#mermaid-svg-BdHslTbONcCLGzwO .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-BdHslTbONcCLGzwO .icon-shape .label rect,#mermaid-svg-BdHslTbONcCLGzwO .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-BdHslTbONcCLGzwO .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-BdHslTbONcCLGzwO .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-BdHslTbONcCLGzwO :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 是
否
接收任务目标
生成整体计划
执行子任务1
执行子任务2
计划是否需要调整
汇总结果并输出
4. 范式三:Multi-Agent(多智能体协作)
Multi-Agent 范式通过多个具有不同角色与职责的智能体协同工作,共同完成复杂任务。每个智能体可以专注于特定领域,通过消息传递、任务分配与结果汇总实现协作。
这种范式的优势在于:
- 专业化分工:不同智能体各司其职,提升整体能力;
- 并行处理:多个智能体可同时处理不同子任务,缩短耗时;
- 鲁棒性强:单个智能体的失败可由其他智能体补偿。
python
class Agent:
def __init__(self, role):
self.role = role
def execute(self, task):
return f"{self.role} 处理了任务:{task}"
planner = Agent("规划者")
executor = Agent("执行者")
reviewer = Agent("审查者")
plan = planner.execute("制定方案")
result = executor.execute(plan)
final = reviewer.execute(result)
5. 三大范式对比与选型建议
| 范式 | 核心特点 | 适用场景 | 典型代表 |
|---|---|---|---|
| ReAct | 推理与行动交替 | 多步推理、动态决策 | AutoGPT、LangChain Agent |
| Plan-and-Execute | 先规划后执行 | 目标明确、步骤固定 | BabyAGI、任务流水线 |
| Multi-Agent | 多角色协作 | 复杂系统、并行任务 | MetaGPT、AutoGen |
选型建议:若任务需要灵活应对不确定性,优先选择 ReAct;若任务结构清晰、追求效率,可选择 Plan-and-Execute;若任务规模庞大、需要多领域协同,则 Multi-Agent 更为合适。
6. 总结
智能体三大范式各有侧重,ReAct 强调推理与行动的动态结合,Plan-and-Execute 注重全局规划与高效执行,Multi-Agent 则通过协作放大整体能力。实际应用中,三者并非互斥,常常可以组合使用。理解并灵活运用这些范式,将帮助开发者构建更强大、更可靠的智能体系统。