"); //-->
但这些探索可能还不够,主要在以下三个方面存在局限:
首先,最优 agent 架构尚未确定。以 ReAct 为例,它向 agent 提示预定义的样本,LLM 学会通过上下文学习生成下一步动作。此外,ReAct 认为一个 agent 在动作执行之前应有中间推理步骤。
其次,现有 LAA 中 LLM 能否发挥多大功效,目前并没有全面的了解。现在的初步工作只比较了一些 LLM 骨干的性能,比如 ReAct 将 PaLM 作为骨干 LLM,ReWOO 则将 OpenAI 的 text-davinci-003 模型作为 agent 规划的指令调优 Alpaca 模型。同时目前很少有工作全面比较使用不同预训练 LLM 的 LAA 性能。最近虽有一些工作发布了评估 LLM 作为 agent 的基准,但未能共同考虑 agent 架构和它们的 LLM 骨干。
最后,越来越复杂的任务可能需要多个 agent 共同发挥作用。比如 ReWOO 最近发现将推理从观察中解耦出来可以提升 LAA 的效率。
在今天介绍的这篇论文中,来自 Salesforce Research 的研究者认为,随着任务复杂度的增加,特别是在开放域环境中,协调多个 agent 来完成一项任务会更好。举例而言, 对于网页导航任务,我们可以使用一个点击 agent 来与点击按钮进行交互,并请求另一个搜索智能体来检索其他资源。
论文链接:https://arxiv.org/pdf/2308.05960.pdf
研究者建议全面比较 LAA 的性能,并深入探索了 LAA 的 agent 架构和 LLM 骨干。具体地讲,他们基于现有环境构建了 agent 基准,从而评估建构在不同 LLM 骨干之上的不同 agent 架构的性能。该 agent 基准中的任务还划分了不同的复杂程度,使得 agent 性能与任务复杂度的关联分析成为可能。
此外,这些 agent 架构在设计上旨在广泛验证现有的设计选择。关于多个 LAA 的编排,研究者提出了一种新颖的架构 BOLAA,它在多个协作 agent 之上有一个控制器模块,用于多个分工 LAA 的选择和通信。
本文的贡献主要体现在以下几个方面:
爱丁堡大学博士生符尧认为,这项工作揭示了一种新的分布式计算范式:分布式 AI 计算。在传统分布式计算中,每个节点处理部分任务;同样在分布式 AI 计算中,一个 agent 就变成了处理部分任务的节点。
Agent 架构
在这部分,研究者比较了不同的 LAA 架构。他们首先展示了如何基于现有工作的直觉来设计不同的单体 LAA,然后展示了多个 LAA 的编码设计,即 BOLAA。
每种类型的 LAA 都能够通过自己的交互策略与环境交互。常见的 agent 类型包括:
BOLAA:协调多个 agent
尽管现有的 LLM 在完成各种语言理解任务方面取得了成功,但仍有许多问题尚未得到充分探讨,如上下文长度限制、上下文内学习和泛化能力等。因此,采用单体 LAA 来完成所有任务具有挑战性,尤其是在任务复杂度较高的情况下。研究者因此提出了一种新的 agent 架构,用于协调多个 LAA。
如图 3 所示,BOLAA 有两个主要模块,即分工 agent 池和控制器。
分工 agent 池管理多个 LAA,每个 LAA 可能只专注于生成一种类型的执行。例如在网络导航环境中,可以建立点击 LAA 和搜索 LAA。这样,前者只生成下一个点击按钮,而后者只输出搜索查询,从而将复杂的任务划分为可行的任务。控制器的设计目的是从 agent 池中有选择地调用 LAA。
控制器有一个 agent 选择层,用于选择最相关的 LAA 进行调用。然后,控制器为选定的 LAA 构建信息并建立通信。从分工 LAA 获得响应后,控制器将其解析为可执行的操作,然后与环境交互。
请注意,也可以将这些分工 LAA 设计为思考 / 计划 agent。这样,自我思考和规划工作流也会被保留下来。
实验结果
研究者从两个环境中构建了评估基准,WebShop 和 HotPotQA 以及维基百科 API 的用例。
关于评估指标,研究者使用每个环境中的奖励得分来评估 LAA 性能。在 WebShop 环境中,奖励被定义为购买商品与 ground-truth 商品之间的属性重叠率。在 HotPotQA 环境中,奖励被定义为 agent 答案与 ground-truth 答案之间的 F1 分数分级。
此外,研究者为 WebShop 环境开发了召回性能,如果在一个任务会话中检索到 ground-truth 项目,召回性能定义为 1;如果没有检索到地面实况项目,召回性能定义为 0。召回率以 WebShop 环境中所有任务的平均召回分数来报告。
决策模拟
研究者比较了 WebShop 环境中 LAA 的决策性能。下表 1 列出了平均奖励方面的表现。Agent 提示是根据不同 LLM 模型的最大上下文长度构建的。关于 BOLAA,研究者设计了一个搜索 LAA 和一个点击 LAA,分别生成搜索查询和点击元素。观察结果如下:
知识推理模拟
随后,研究者在 HotPotQA 环境中进行了基准测试,以评估 LAA 的多步骤推理能力。由于在该环境中,可用的搜索、查找和完成运算都与知识推理有关,很难分开,因此他们将 BOLAA arch 留待此后工作中使用,只比较其他 agent arch 的性能。结果如下表 3 所示:
总体来说,ReAct agent 引擎的性能最好,这可以从几个方面来解释。
首先,少样本提示对于 LAA 的行为生成和推理能力是必要的,尤其是在使用较小规模语言模型进行实验时。其次,通过比较 ReAct、PlanAct 和 PlanReAct,可以得出结论:LAA 的规划流阻碍了其在知识推理环境和任务中的表现。原因在于,知识推理任务需要上下文信息来进行推理,而规划流是在交互之前执行的。因此,这些生成的规划往往会导致 LAA 产生更多幻觉。第三,在知识推理任务中,模型大小比上下文长度更重要。大型模型的推理能力更强,因此表现更好。
此外,OpenAI gpt-3.5 模型的卓越推理能力再次得到验证。研究者还观察到 Llama2-70b 在所有开源 LLM 中表现最佳,这表明 Llama-2 模型未来可能会进行微调。
在比较了 LAA 和 LLM 的总体性能之后,研究者对它们在任务复杂度方面的性能进行了更详细的研究,结果如下图所示:
更多研究细节,可参考原论文。
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。