AI Agent 架构与框架怎么选?
ReAct、CoT、AutoGPT 等框架特点及适用场景对比
原题:请描述AI Agent的基本架构组成,并对比分析不同的Agent实现框架(如ReAct、CoT、AutoGPT等)的特点和适用场景。
Prompt工程 · 百度真题
30 秒回答
- Agent核心三要素:规划、记忆、工具调用
- ReAct的推理-行动交替机制
- CoT的纯推理链与Agent的区别
- AutoGPT的自主循环架构及局限性
回答与解析
答案要点
- Agent核心三要素:规划、记忆、工具调用
- ReAct的推理-行动交替机制
- CoT的纯推理链与Agent的区别
- AutoGPT的自主循环架构及局限性
- 框架选型需考虑任务复杂度、可控性、成本
AI Agent基本架构
Agent = 大模型核心 + 三大关键组件:
| 组件 | 作用 |
|---|---|
| 规划(Planning) | 拆解任务、制定执行策略、自我反思修正 |
| 记忆(Memory) | 短期上下文 + 长期知识库(向量存储) |
| 工具调用(Tool Use) | 与外部API、数据库、计算资源交互 |
主流框架对比
1. ReAct(Reasoning + Acting)
- 核心机制:推理(Thought) → 行动(Action) → 观察(Observation) 循环
- 特点:显式展示思考过程,行动有依据,可解释性强
- 适用:需要多步工具调用的场景,如问答、数据分析
- 局限:每步都需LLM参与,token消耗高
2. CoT(Chain-of-Thought)
- 本质:纯推理提示技术,不是完整Agent架构
- 特点:引导模型逐步思考,无外部工具交互
- 适用:数学推理、逻辑题等纯文本任务
- 与Agent关系:常作为Agent内部"规划模块"使用
3. AutoGPT
- 架构:目标分解 → 自主循环执行(计划→执行→检查→优化)
- 特点:高度自主,可自我prompt,尝试自动完成复杂目标
- 局限:易陷入循环、幻觉严重、成本高、可控性差
- 适用:实验探索场景,生产环境慎用
选型建议
| 场景 | 推荐框架 |
|---|---|
| 可控性要求高(客服、工单) | ReAct + 人工审核节点 |
| 复杂多步任务(数据分析) | ReAct + 记忆增强 |
| 快速原型验证 | AutoGPT简化版 |
| 纯推理任务 | CoT即可,无需Agent |
实际落地推荐ReAct为基础,根据任务深度叠加记忆和工具,避免过度设计。
口语版讲法(约4分钟)
- 本质是问LLM怎么落地到复杂任务
- ReAct是主力框架,推理行动交替
- CoT不是Agent,只是规划模块
- AutoGPT自主但风险高,慎用
- 落地要结合场景选型,加人工兜底
这道题问的是Agent的基本架构和框架对比,其实本质上是在问,大模型怎么从单纯的聊天机器人,变成一个能真正干活的智能体。核心就三个组件:规划、记忆、工具调用。规划负责拆任务、定策略,记忆分短期上下文和长期知识库,工具调用就是让它去调API、查数据库、做计算。这三个拼起来,才算一个完整的Agent。
主流框架里,我重点讲三个。先说ReAct,这是目前最主流的方案。它的机制很简单,就是推理、行动、观察循环。模型先想一步,然后执行一个动作,比如调个接口或者查个文档,再根据返回结果继续推理。优点是思考过程透明,可解释性强,出了问题好排查。举个例子,客服处理退款,用户说“我买的东西降价了,能退差价吗”,Agent会先推理:用户要的是差价补偿,然后去调订单API查价格,再查当前活动政策,最后给出结论。每一步都有依据,适合对可控性要求高的场景。缺点是每步都要调LLM,token消耗大,成本高。
再说Chain-of-Thought,很多人把它跟Agent混为一谈,其实不对。CoT本质是纯推理提示技术,不涉及外部工具交互。它就是一个规划模块,让模型把推理步骤写出来,但没法执行。所以适合纯文本任务,比如数学题、逻辑推理。真正落地时,CoT常常作为ReAct内部规划的一部分,而不是独立框架。
最后是AutoGPT,这个框架的特点是高度自主,它会自己把目标分解成子任务,然后循环执行计划、执行、检查、优化,不需要人工干预。听起来很酷,但实际落地风险很大。常见失败场景是它容易陷入死循环,比如一直查同一个API,或者生成幻觉指令,而且成本失控。所以AutoGPT更适合实验探索,生产环境我基本不考虑。
选型上,我的原则是任务复杂度越高,越需要ReAct加人工兜底。具体来说,客服、工单这类对可控性要求高的场景,我会用ReAct,但每一步关键决策都加一个人工审核节点。比如退款超过一定金额,让Agent生成建议,人工确认后再执行。复杂多步任务,比如数据分析,我会在ReAct基础上叠加长期记忆,让Agent能记住历史分析过程。纯推理任务,直接用CoT就够了,不需要Agent。快速原型验证,可以用AutoGPT简化版,但上线前一定要换成可控的方案。
这里有个延伸点,就是Agent的可靠性问题。ReAct虽然可控,但模型还是会犯错,比如误解用户意图或者调用错误的工具。所以我会特别关注错误恢复机制,比如让Agent在观察到异常结果时主动反思,或者预设一个回退策略。这个方向其实可以跟Self-RAG或Reflexion结合起来,让Agent自己学会修正。
所以总的来说,我更倾向把ReAct作为基础框架,根据任务深度叠加记忆和工具,同时保留人工兜底。AutoGPT这种高度自主的方案,除非场景非常明确且风险可控,否则我不会在生产环境用。
关键一句:Agent的可靠性依赖于错误恢复机制,比如用Self-RAG或Reflexion让模型自我修正。
面试官还可能这样问
- 问法 1 · 场景切入
假设你在做客服系统,用户问“帮我查一下昨天的订单”,然后又说“退款怎么走?”。你怎么让模型既能推理出需要查什么,又去调用订单API?再比如,如果用户连续追问,每一步都需要工具,你怎么设计这个流程?
- 问法 2 · 层层追问
你做过Agent对吧?那你觉得一个Agent最核心的组件是什么?……嗯,规划、记忆、工具调用。那具体到框架,比如ReAct和CoT,它们有什么区别?……CoT算Agent吗?……那AutoGPT呢,在实际落地中有什么坑?
- 问法 3 · 直球架构
请描述AI Agent的基本架构,并对比ReAct、CoT、AutoGPT这三个框架的适用场景和优缺点。重点说说它们在设计上的差异,以及你如何根据任务需求选型。