【LLM-Agent】ReWOO模式和ReAct的区别

note

  • REWOO的缺陷在于,非常依赖于Planner的规划能力,如果规划有误,则后续所有的执行都会出现错误。尤其是对于复杂任务,很难在初始阶段就制定合理且完备的计划清单。因此,如果要提升Agent的准确率,需要有规划调整机制,即在执行的过程中,根据环境反馈,不断调整计划。
  • ReWOO其实就是Plan-and-execute agents

文章目录

一、rewoo模式

论文:《ReWOO: Decoupling Reasoning from Observations for Efficient Augmented Language Models》

ReWOO 的工作流程包括三个主要部分:

计划者(Planner):将任务分解并制定包含多个相互关联计划的蓝图,每个计划都分配给工作者执行。

工作者(Worker):根据计划者提供的蓝图,使用外部工具获取真实证据。

求解器(Solver):将所有计划和证据结合起来,形成对原始任务的最终解决方案。

二、创新点

ReWOO 的创新点主要包括以下几个方面:

分离推理与观察:ReWOO 将推理过程与使用外部工具的过程分开,避免了在依赖观察的推理中反复提示的冗余问题,从而大幅减少了 Token 的消耗。

模块化设计:ReWOO 使用模块化框架,通过计划者、工作者和求解器的分工合作,提高了系统的扩展性和效率。

效率提升:实验结果表明,这种方法不仅提升了准确率,还显著降低了令牌消耗。

工具调用的鲁棒性:ReWOO 在工具失效的情况下表现出更高的鲁棒性,这意味着即使某些工具无法返回有效证据,ReWOO 仍能通过合理的计划生成和证据整合,提供有效的解决方案。

左侧是ReAct方法,当User输入Task后,把上下文Context和可能的样本Example输入到LLM中,LLM会调用一个目标工具Tool,从而产生想法Thought,行动Action,观察Observation。由于拆解后的下一次循环也需要调用LLM,又会调用新的工具Tool,产生新的Thought,Action,Observation。如果这个步骤变得很长,就会导致巨大的重复计算和开销。

右侧ReWOO的方法,计划器Planner把任务进行分解,分解的依据是它们内部哪些用同类Tool,就把它分成同一类。在最开始,依旧是User输入Task,模型把上下文Context和Examplar进行输入。这里与先前有所不同的是,输入到Planner中,进行分解,然后调用各自的工具Tool。在得到了所有的Tool的输出后,生成计划结果Plan和线索,放到Solver进行总结,然后生成回答。这个过程只调用了两次LLM。

举个栗子:假设你是一个侦探,需要解决一个谜题:找出谁在图书馆偷了一本珍贵的书。

ReAct模式的类比:

在ReAct模式下,你的思考和行动过程可能是这样的:

你首先想到去图书馆询问管理员(行动)。

管理员告诉你,昨天有一个穿着蓝色衣服的人来过(观察)。

然后你决定去查看图书馆的监控录像(行动)。

你发现录像中确实有一个穿蓝色衣服的人(观察)。

接下来,你决定去询问图书馆的常客,看看他们是否认识这个人(行动)。

常客告诉你,这个人可能是附近的学生(观察)。

最后,你决定去学校调查,最终找到了嫌疑人(行动)。

在ReAct模式中,你的每一步都是基于前一步的观察结果来决定的,这是一个逐步的、迭代的过程。

ReWOO模式的类比:

在ReWOO模式下,你的思考和行动过程可能是这样的:

你首先规划了整个调查过程:

询问图书馆管理员

查看监控录像

询问图书馆常客

去学校调查

然后,你同时(并发)执行所有这些行动:

派助手去询问管理员

自己去查看监控录像

同时,另一个助手去询问常客

最后,你亲自去学校调查

所有行动完成后,你收集所有信息,综合分析,最终找到嫌疑人。

1 AI大模型实战 | AI Agent设计模式 - REWOO,优化ReAct冗余问题

2 LLM Agent设计模式 - ReWOO

3 LLM Agent设计模式 - ReWOO:https://www.yidoo.xyz/llm-agent-design-pattern-rewoo

4 《ReWOO: Decoupling Reasoning from Observations for Efficient Augmented Language Models》

5 On short of "ReWOO: Decoupling Reasoning from Observations for Efficient Augmented Language Models"

相关推荐
yuanlaile1 小时前
大模型应用层开发实战:从 Prompt 工程到 Dify、私有 RAG、Agent 完整落地总结
prompt·agent·dify·大模型应用开发·llm 应用·prompt 工程
goehou3 小时前
Prompt 注入实战:直接注入、间接注入和四道防线(附测试样例)
安全·ai·llm·agent·prompt注入
杨杨杨大侠4 小时前
Agent 的上下文和记忆怎么管?从 Harness 到 AgentScope 实现
人工智能·agent
虎鲸不是鱼5 小时前
【RTX Pro 4500 Blackwell】Qwen3.8 27B NVFP4 MTP在dsh的真实表现
大模型·llm·qwen·lm studio·harness
小七-七牛开发者6 小时前
Personal Agent 真能越用越懂你吗?AdaptArena 揭示个性化 Web Agent 的失效链路
ai·agent·web agent·personal agent·adaptarena·个性化智能体
独码侠6 小时前
第04篇·Codex Harness 审批×权限边界:4 档策略怎么选,密钥与仓库永远碰不到
ai·agent·codex
for_ever_love__7 小时前
LangChain 降级、重试与超时:让服务在模型抽风时还能用
python·自然语言处理·langchain·agent·超时·重试·with_retry
liferecords7 小时前
PolyOCR-Venus:蚂蚁把 OCR 从『抄写员』练成『视觉智能体』,教师蒸馏还会自己下岗
大模型·ocr·强化学习·多模态
方方洛8 小时前
ai-agent教程-05-上下文工程
人工智能·llm·agent
用户721746588268 小时前
三条热词通道的机制拆解:bl speech 的参数面、生效模型范围与错配读数
llm·agent·ai编程