Agent 系列之 ReWOO框架解析

ReWOO (Reasoning WithOut Observation),可以解决ReAct的冗杂问题,减少Token使用,并且在相较复杂情况下,表现了比ReAct等框架下更好的鲁棒性。

论文摘要

【论文标题】:《ReWOO: Decoupling Reasoning from Observations for Efficient Augmented Language Models》;

【发布时间】:2023.05.23;

【论文链接】:https://arxiv.org/abs/2305.18323;

【内容摘要】

论文主要介绍了一种新的增强型语言模型(ALM)方法——ReWOO,旨在解决现有ALM系统计算复杂度高、重复执行等问题。该方法将推理过程与外部观察分离,从而显著减少token消耗,并在六个公共NLP基准测试和一个定制数据集上实现了性能提升。此外,这种方法还可以通过解耦参数模块和非参数工具调用来实现指令微调,从而将大型语言模型卸载到更小的语言模型中,大大减少了模型参数(本文不展开,感兴趣的朋友可自行查阅)。

图片

主要内容

论文方法

ReWOO(Reasoning with Work and Solve)框架包含三个部分:Planner、Worker和Solver。其中,Planner使用可预见推理能力为复杂任务创建解决方案蓝图;Worker通过工具调用来与环境交互,并将实际证据或观察结果填充到指令中;Solver处理所有计划和证据以制定原始任务或问题的解决方案。

图片

图 2:在 (a) ReAct中,首先使用上下文提示和示例对用户请求的任务进行包装,然后将其馈入 LLM 以启动推理过程。LLM 生成一个想法 (T) 和一个行动 (A),然后等待来自工具的观察 (O), 观察被堆叠到提示历史记录中以启动下一个 LLM 调用。在 ReWOO (b) 中,规划者会立即产生一系列相互关联的计划 (P),并调用工作者从工具中检索证据 (E)。将 P 和 E 与任务相结合,然后馈入求解器以获得最终答案。请注意,在 (a) 中,上下文和示例会被反复馈入 LLM,导致提示冗余。

图片

以上详细说明了ReWOO与ReAct实现原理的不同。

Token计算(ReAct):

图片

这个相对好理解一些,ReAct执行k轮,每轮都与LLM互动,所以Q、C、S的内容每次都传共计k轮;而k轮过程中总计执行了k-1轮T→A→O的循环,并且第j次循环的TAO内容在prompt中传递了k-j次(例如第一次的内容在后续循环中不断被当做历史数据传入除了第一次O(∩_∩)O哈哈~)。

Token计算(ReWOO):

图片

ReWOO仅在第一次和最后一次与LLM交互,P-E对每一步只传入一次。

方法改进

ReWOO采用了新的“Plan-Work-Solve”范式,使Planner能够适应多步和复杂的任务,特别是那些后续步骤依赖于先前步骤观察的任务。此外,通过减少提示冗余,可以避免不必要的输入重复,从而节省计算成本。最后,通过使用Specialization框架,可以提高模型在不同任务上的泛化性能。

解决的问题

通过使用该框架,可以提高系统的效率和准确性,同时还可以降低训练成本。

此外,作者还进行了一些额外的实验来探究ReWOO的一些特性。例如,他们发现增加工具数量可能会降低系统的性能,因为一些不必要的工具可能会引入无关的信息。同时,当某些工具失效时,ReWOO相对于ReAct更具鲁棒性。

LangChain实现

图片

图片

Planner:

在prompt中约定了P-E框架,定义了使用的工具(谷歌搜索和LLM),并给出了P-E的示例。

Solver:

基于Plan的内容和Evidence 组成的P-E对整合输出答案。

图片

总结一下,ReWOO通过总览全局的宏观蓝图规划(Plan)降低与LLM的交互次数(与ReAct相比),不仅可以显著降低token使用量解约成本,且可以有效避免LLM进入任务细节而忘记总体的任务目标导致输出质量下降,在复杂任务中表现较好的鲁棒性。但由于依赖各步骤按顺序执行,可能耗费更多的时间。


关于我:AI产品经理(目前在寻找新机会),主要关注AI Agent 应用。公众号:AI奋进者。如有好的想法欢迎一起沟通交流。

Agent系列文章已经逐步更新:

Agent 系列之 ReWOO框架解析icon-default.png?t=N7T8https://blog.csdn.net/letsgogo7/article/details/138259507

Agent系列之 Plan-and-Solve Prompting 论文解析icon-default.png?t=N7T8https://blog.csdn.net/letsgogo7/article/details/138259154

Agent系列之LangChain中ReAct的实现原理浅析icon-default.png?t=N7T8https://blog.csdn.net/letsgogo7/article/details/138197137

Agent系列之ReAct: Reasoning and Acting in LLM 论文解析icon-default.png?t=N7T8https://blog.csdn.net/letsgogo7/article/details/138259590Agent 系列之 LLM Compiler框架解析icon-default.png?t=N7T8https://blog.csdn.net/letsgogo7/article/details/138284351

  • 23
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值