Pangu-Agent-程序员宅基地

技术标签: 人工智能  

自 AI 诞生以来,开发能够解决和适应复杂工作的多任务智能体(Agent)一直是个重要的目标。有结构化推理和先验知识,智能体变得更加通用了。华为诺亚的盘古Agent来了,让智能体学会结构化推理

AI 智能体对于许多应用至关重要,研究者通常用强化学习方法通过环境交互来培养智能体的决策技能。基于模型和无模型的深度强化学习方法都已取得了广为人们所知的成就,例如 AlphaZero、改进的排序和乘法算法、无人机竞速以及聚变反应堆中的等离子体控制。这些成功涉及一个标准的强化学习管道,智能体在其中学习我们所说的外在功能 —— 一种直接与外界交互的策略,即响应环境刺激以最大化奖励信号。该函数通常是参数化神经网络,根据环境观察生成动作。

经典的强化学习方法使用单个映射函数来定义策略 π,但在复杂的环境中通常被证明是不够的,这与通用智能体在多个随机环境中交互、适应和学习的目标相矛盾。

在强化学习中引入的先验通常是特定于任务的,并且需要广泛的工程和领域专业知识。为了泛化,最近的研究已转向将大型语言模型(LLM)集成到智能体框架中,如 AutoGen、AutoGPT 和 AgentVerse 等工作。

近日,来自华为诺亚方舟实验室、伦敦大学学院(UCL)、牛津大学等机构的研究者提出了盘古智能体框架(Pangu-Agent)尝试来解决 AI 智能体面临的挑战。该研究作者包括伦敦大学学院计算机系教授汪军。

论文链接:https://arxiv.org/abs/2312.14878

该工作在两个关键方面区别于先前的框架:i)将智能体的内部思维过程形式化为结构化推理的形式;ii)展示了通过监督学习和强化学习来微调智能体的方法。

标准强化学习侧重于直接学习从感知中输出行动的策略。虽然人们习惯于通过深度网络架构参数化策略,但作者认为,当通过基础模型策略跨任务扩展智能体时,标准 RL 管道中缺乏固有推理结构可能会成为一个重大瓶颈,因为梯度无法为所有深度网络提供足够的监督。

盘古 Agent 框架展示了结构化推理如何帮助强化学习克服这些挑战,利用大规模基础模型提供先验知识并实现跨广泛领域的泛化能力。 

据介绍,该工作的主要贡献包括:

  1. 证明了结构化推理在智能体框架中的重要性,盘古 Agent 的通用性足以有效涵盖现有智能体框架的任务范围。作为一个元智能体框架,它可以利用内部函数调用的顺序进行调整或微调,或者将决策委托给底层 LLM。使用者也可以轻松扩展智能体的功能,并组合或重用许多已经实现的方法。

  2. 作者在七个 LLM 和六个不同领域上进行了评估。该评估可用于告知研究人员如何初始化其智能体以及如何收集微调步骤的数据。

  3. 研究证明了框架的监督微调(SFT)和强化学习微调(RLFT)的影响。通过结构化推理,该工作成功实现了基于拒绝采样的 SFT 管道,大幅提高了 LLM 在 ALFWorld 领域的表现,成功率从 27% 增加到 82%。尽管 SFT 的好处已趋于稳定,但通过 RL 可以实现进一步增强,将 BabyAI 任务的成功率提高到 88%,甚至从 28% 提高到 91%。此外,跨领域实验显示通过 RL 管道训练的单个 LLM 能够同时在 ALFWorld (82%) 和 BabyAI(18 项任务中平均 58.7%)领域实现高性能。

这些发现凸显了结构化推理在基于大模型的智能体训练方面存在不小潜力。

表 1:盘古 Agent 与最近一些大模型智能体的比较。

图 2:三个内在函数的可视化,展示了该工作提出的范式在提高代理的模块化和灵活性方面的重要性。用户可以重新定义和重新配置内在函数,例如 µ1 (・) 以 LLM 作为输入来产生想法,或 µ2 (・) 利用工具来帮助改进推理。新智能体还支持嵌套这些内在函数来构建更通用的模块,以完成复杂且具有挑战性的决策任务。

Pangu-Agent 的范式

为了引入结构化推理,我们假设一系列内在函数 µ(・) 作用于并转换智能体的内部记忆。引入这些内在函数可以将典型的强化学习目标重新表述为支持多个「思考」步骤的目标。因此,典型的 RL 目标旨在找到一个以观察 o→ 的历史为条件的策略 π,以最大化回报 R,即 maxπ(・) R (π(・|o→)) 可以使用嵌套集重写(参见图 . 2) 内函数 µ→ (・) 为:

作者强调需要将这些函数与外部函数分开定义、学习和使用,这样用户就可以重新定义任何被认为对其任务有帮助的任意嵌套。我们可以根据方程重写盘古智能体的优化问题。更详细的形式为:

其中 rt 是时间步 t 的奖励,取决于环境观察 ot 和行动 at。此外,γ ∈ [0, 1) 是一个折扣因子,指定奖励随时间折扣的程度。外部函数仍然充当与外界交互的执行器,而那些额外分层的内部函数旨在封装系统架构师认为有益的任何内部推理过程。

有关 Pangu-Agent 的框架结构,内在函数是对代理的内存状态进行操作的一系列函数。内在函数对于塑造智能体的内部状态至关重要,并且可以影响其决策过程。通过利用这些功能,智能体可以根据观察历史和先前的知识调整其记忆状态,从而做出更明智且适合上下文的决策。

外部函数的目的是从语言模型中引发环境交互。与对智能体的内存状态进行操作的内部函数不同,外部函数通过生成要执行的动作来直接与环境交互。

盘古 Agent 公式的灵活性意味着可以分层创建许多复合方法。此外应该指出的是,该工作在盘古 Agent 代码库中提供的这些复合方法的实现并不总是原始算法的忠实再现,因为它们需要特定的任务细节。

受到最近搜索增强的 LLM 研究的启发,盘古 Agent 框架集成了三种树搜索算法 – 广度优先 / 深度优先搜索 (BFS/DFS) 和 蒙特卡洛树搜索(MCTS),以提高 LLM 的生成和决策能力的规划能力。具体来说,该框架利用 LLM 作为策略、模型和价值函数。通过与这个基于 LLM 的模拟环境交互,我们就可以构建一个 rollout 树,该树将使用树搜索算法进一步修剪,以实现更好的操作 / 生成效果。

盘古 Agent 兼容一系列任务,例如 ALFWorld、GSM8K、HotpotQA、WebShop 等。它的交互界面与 OpenAI Gym 类似,是一种开放式设计。

最后,该框架包含一个模板系统来为 LLM 生成输入提示词(Prompt),使用模板增强了提示制作的灵活性。

评估

最后,研究者对 Pangu-Agent 支持的各种方法进行了广泛评估。

首先,他们考虑用一阶嵌套法和复合法来评估 Pangu-Agent 的结构推理能力(图 3);然后,使用监督学习和 RL 在三种不同的环境中评估 Pangu-Agent 的微调能力。结果表明,就 Agent 取得的收益而言,复合方法往往优于一阶嵌套方法。研究者表示,SFT 和 RLFT 可以让 Agent 实现专业化,并进一步提高其在 ALFWorld 和 BabyAI 任务中的收益。在整个评估过程中,研究者使用了多种 LLM,如 GPT、Llama 2、OpenChat、Vicuna 和 Mistral 进行测试。

结构化推理评估

通过对内在函数(Intrinsic Functions)的内置支持,可以评估推理结构中的不同设计选择对 AI 智能体性能的影响。

首先在表 2 中,研究者评估了一阶嵌套,即只通过观察环境和对环境执行的操作来修改智能体记忆的设置。在文献中,这些方法被简单地称为不同的提示方法,例如:少样本提示法 (FS)、少样本思维链 (FS-CoT) 、零样本思维链(ZS-CoT)。这些方法的详细介绍见附录 A.1。

需要注意的是,由于 LLM 文本生成的非确定性,不同的运行所获得的回报可能会有很大差异。为了考虑这些差异,研究者将任务 - 方法 - LLM 的每种组合运行三次,并报告平均标准偏差。但是,一阶嵌套也有局限性,因为它们可能难以充分利用 LLM 的能力。正如此前所述,智能体需要能够处理语言模型的输出、重新查看其答案、更改其记忆,甚至使用工具。这里所说的复合方法是指在决定最终行动之前可能需要多个思考步骤的方法。

表 3 列出了四种复合方法的结果:具有自一致性的 FS-CoT(FS-CoTSC)、具有可选独立思考步骤的 FS-CoT(如 React )、具有映射步骤的 FS-CoT(如 66)、SwiftSage 和 Least-to-Most(另见附录 A.2)。所有这些方法都在每个环境时间步使用了多个固有函数步,缩略语的简要说明可参见表 7。

研究者观察到,结构相似但提示内容不同的方法为智能体带来的收益却大相径庭,这说明了精心设计提示的重要性。同样值得注意的是,不同的方法在某些 LLM 中比在其他 LLM 中效果更好,例如 React 在 OpenChat-3.2 中的平均表现比 FS 差,而 React 和 FS 在 GPT-3.5 中的平均收益表现类似。

值得注意的是,在所有 LLM 中,FS 在 GSM8K 中的性能比 Direct 差很多。这并不奇怪,因为 FS 只向 LLM 提供最终答案。因此,LLM 的目的是回答问题,而不需要生成中间步骤。然而,在 Direct 中,即使没有明确要求,LLM 也会生成中间步骤,因为互联网上类似的小学水平问题就是这样呈现的,而这些问题很可能就包含在这些 LLM 的训练集中。在将 ZS-CoT 与 FS 进行比较时,也能得出类似的结论。

这一点在较小的 LLM 中尤为明显,研究者推测,如果在提示中添加「逐步思考」(think step-by-step)的引语,模型就更有可能生成能够正确解决当前问题的推理步骤。

在 HumanEval 任务中,研究者观察到 GPT-3.5 与其他模型的收益率差距明显大于其他任务。这可能是由于 HumanEval 是一项编码任务,需要 LLM 提供结构良好的响应。然而,较小的开源 LLM 更容易出现这些结构性错误,从而导致任务失败并得到 0 的返回值。

妨碍 LLM 性能的另一个因素是有限的上下文长度。在 WebShop 等涉及相对较大观测值的任务中,提示的长度需要截断,以保持在允许的上下文长度范围内。因此,LLM 在这项任务中的表现会受到很大影响,特别是在 Reflect 等方法中,提示中还会包含额外的信息。这也解释了为什么 Reflect 方法在 WebShop 中的表现往往不如其他方法。

在某些情况下,FS-CoT-SC 可以提高 LLM 的收益,尤其是在 GSM8K 中。但是,这需要付出额外的代价,即需要多次提示 LLM(本实验中为 5 次)以执行 SC 操作选择。在 HumanEval 等任务中,答案包含较长的文本答案,可能会有多个答案产生正确的结果,研究者发现无法应用 SC。这是因为 LLM 不会生成与之前相同的答案,而 SC 操作选择器无法选择最常见的答案。

外在函数评估:微调

上述结果表明,虽然 LLM 在实现各种任务的回报率方面表现出色,但在实现 100% 成功率方面仍有很大的改进空间。随后,研究者探讨了 SFT 和 RLFT 如何帮助 Pangu-Agent 提高成功率。

他们提出了两种不同的流程:一种是由 multi-turn 轨迹生成和 SFT 组成的 Bootstrap SFT (BSFT),另一种是由轨迹生成、SFT 和 RLFT 组成的三步流程。在执行 SFT 时,专家轨迹演示始终使用 OpenChat-3.5 LLM 收集,该 LLM 配备了 Pangu-Agent 框架的结构化推理能力。研究者使用 OpenChat-3.5 LLM 执行 BSFT,而 SFT-RLFT 管道则应用于 Llama 2-7B LLM,并考虑了两种不同的评估范式:为每个任务微调不同的 LLM,以及在多个任务中微调一个 LLM(例如多任务微调)。     whaosoft aiot http://143ai.com

One Model per Domain

BSFT:第一个实验展示了 Pangu-Agent 框架提供的固有函数和微调函数的结合。首先从一系列不同的提示方法中收集数据,特别是 ZS-CoT、FS-CoT、FS-CoT-React 和 FS-CoT-Reflect。收集完数据后,运行一个拒绝采样步骤,丢弃失败的轨迹,只保留在折扣回报方面表现最好的轨迹。然后可以在该数据集上执行 SFT 步骤,以进一步提高该方法的性能。表 4 中 「1-step SFT」一栏列出了经过单一 SFT 步骤训练后的模型结果。

如表 4 ,经过一轮拒绝采样后,可以在 ALFWorld 中取得很好的性能,同时保持模型在行动前产生想法的能力。

SFT-RLFT: 尽管如此,对这些固有函数生成的完整轨迹进行微调的计算成本很高,而且很快就会达到收益递减的地步。研究者建议使用 RL 在各种任务中实现更高的性能。

如表 5 ,研究者首先对成功演示进行 SFT 微调,然后再进行 RL 微调,成功率的提高幅度最大。对于像 ALFWorld 这样的复杂领域,用于轨迹生成的 SFT 步骤和固有函数(FS-CoT)至关重要。这说明了 Pangu-Agent 框架的重要性,在该框架中,可以从固有函数和微调中获益。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_29788741/article/details/135220097

智能推荐

hive使用适用场景_大数据入门:Hive应用场景-程序员宅基地

文章浏览阅读5.8k次。在大数据的发展当中,大数据技术生态的组件,也在不断地拓展开来,而其中的Hive组件,作为Hadoop的数据仓库工具,可以实现对Hadoop集群当中的大规模数据进行相应的数据处理。今天我们的大数据入门分享,就主要来讲讲,Hive应用场景。关于Hive,首先需要明确的一点就是,Hive并非数据库,Hive所提供的数据存储、查询和分析功能,本质上来说,并非传统数据库所提供的存储、查询、分析功能。Hive..._hive应用场景

zblog采集-织梦全自动采集插件-织梦免费采集插件_zblog 网页采集插件-程序员宅基地

文章浏览阅读496次。Zblog是由Zblog开发团队开发的一款小巧而强大的基于Asp和PHP平台的开源程序,但是插件市场上的Zblog采集插件,没有一款能打的,要么就是没有SEO文章内容处理,要么就是功能单一。很少有适合SEO站长的Zblog采集。人们都知道Zblog采集接口都是对Zblog采集不熟悉的人做的,很多人采取模拟登陆的方法进行发布文章,也有很多人直接操作数据库发布文章,然而这些都或多或少的产生各种问题,发布速度慢、文章内容未经严格过滤,导致安全性问题、不能发Tag、不能自动创建分类等。但是使用Zblog采._zblog 网页采集插件

Flink学习四:提交Flink运行job_flink定时运行job-程序员宅基地

文章浏览阅读2.4k次,点赞2次,收藏2次。restUI页面提交1.1 添加上传jar包1.2 提交任务job1.3 查看提交的任务2. 命令行提交./flink-1.9.3/bin/flink run -c com.qu.wc.StreamWordCount -p 2 FlinkTutorial-1.0-SNAPSHOT.jar3. 命令行查看正在运行的job./flink-1.9.3/bin/flink list4. 命令行查看所有job./flink-1.9.3/bin/flink list --all._flink定时运行job

STM32-LED闪烁项目总结_嵌入式stm32闪烁led实验总结-程序员宅基地

文章浏览阅读1k次,点赞2次,收藏6次。这个项目是基于STM32的LED闪烁项目,主要目的是让学习者熟悉STM32的基本操作和编程方法。在这个项目中,我们将使用STM32作为控制器,通过对GPIO口的控制实现LED灯的闪烁。这个STM32 LED闪烁的项目是一个非常简单的入门项目,但它可以帮助学习者熟悉STM32的编程方法和GPIO口的使用。在这个项目中,我们通过对GPIO口的控制实现了LED灯的闪烁。LED闪烁是STM32入门课程的基础操作之一,它旨在教学生如何使用STM32开发板控制LED灯的闪烁。_嵌入式stm32闪烁led实验总结

Debezium安装部署和将服务托管到systemctl-程序员宅基地

文章浏览阅读63次。本文介绍了安装和部署Debezium的详细步骤,并演示了如何将Debezium服务托管到systemctl以进行方便的管理。本文将详细介绍如何安装和部署Debezium,并将其服务托管到systemctl。解压缩后,将得到一个名为"debezium"的目录,其中包含Debezium的二进制文件和其他必要的资源。注意替换"ExecStart"中的"/path/to/debezium"为实际的Debezium目录路径。接下来,需要下载Debezium的压缩包,并将其解压到所需的目录。

Android 控制屏幕唤醒常亮或熄灭_android实现拿起手机亮屏-程序员宅基地

文章浏览阅读4.4k次。需求:在诗词曲文项目中,诗词整篇朗读的时候,文章没有读完会因为屏幕熄灭停止朗读。要求:在文章没有朗读完毕之前屏幕常亮,读完以后屏幕常亮关闭;1.权限配置:设置电源管理的权限。

随便推点

目标检测简介-程序员宅基地

文章浏览阅读2.3k次。目标检测简介、评估标准、经典算法_目标检测

记SQL server安装后无法连接127.0.0.1解决方法_sqlserver 127 0 01 无法连接-程序员宅基地

文章浏览阅读6.3k次,点赞4次,收藏9次。实训时需要安装SQL server2008 R所以我上网上找了一个.exe 的安装包链接:https://pan.baidu.com/s/1_FkhB8XJy3Js_rFADhdtmA提取码:ztki注:解压后1.04G安装时Microsoft需下载.NET,更新安装后会自动安装如下:点击第一个傻瓜式安装,唯一注意的是在修改路径的时候如下不可修改:到安装实例的时候就可以修改啦数据..._sqlserver 127 0 01 无法连接

js 获取对象的所有key值,用来遍历_js 遍历对象的key-程序员宅基地

文章浏览阅读7.4k次。1. Object.keys(item); 获取到了key之后就可以遍历的时候直接使用这个进行遍历所有的key跟valuevar infoItem={ name:'xiaowu', age:'18',}//的出来的keys就是[name,age]var keys=Object.keys(infoItem);2. 通常用于以下实力中 <div *ngFor="let item of keys"> <div>{{item}}.._js 遍历对象的key

粒子群算法(PSO)求解路径规划_粒子群算法路径规划-程序员宅基地

文章浏览阅读2.2w次,点赞51次,收藏310次。粒子群算法求解路径规划路径规划问题描述    给定环境信息,如果该环境内有障碍物,寻求起始点到目标点的最短路径, 并且路径不能与障碍物相交,如图 1.1.1 所示。1.2 粒子群算法求解1.2.1 求解思路    粒子群优化算法(PSO),粒子群中的每一个粒子都代表一个问题的可能解, 通过粒子个体的简单行为,群体内的信息交互实现问题求解的智能性。    在路径规划中,我们将每一条路径规划为一个粒子,每个粒子群群有 n 个粒 子,即有 n 条路径,同时,每个粒子又有 m 个染色体,即中间过渡点的_粒子群算法路径规划

量化评价:稳健的业绩评价指标_rar 海龟-程序员宅基地

文章浏览阅读353次。所谓稳健的评估指标,是指在评估的过程中数据的轻微变化并不会显著的影响一个统计指标。而不稳健的评估指标则相反,在对交易系统进行回测时,参数值的轻微变化会带来不稳健指标的大幅变化。对于不稳健的评估指标,任何对数据有影响的因素都会对测试结果产生过大的影响,这很容易导致数据过拟合。_rar 海龟

IAP在ARM Cortex-M3微控制器实现原理_value line devices connectivity line devices-程序员宅基地

文章浏览阅读607次,点赞2次,收藏7次。–基于STM32F103ZET6的UART通讯实现一、什么是IAP,为什么要IAPIAP即为In Application Programming(在应用中编程),一般情况下,以STM32F10x系列芯片为主控制器的设备在出厂时就已经使用J-Link仿真器将应用代码烧录了,如果在设备使用过程中需要进行应用代码的更换、升级等操作的话,则可能需要将设备返回原厂并拆解出来再使用J-Link重新烧录代码,这就增加了很多不必要的麻烦。站在用户的角度来说,就是能让用户自己来更换设备里边的代码程序而厂家这边只需要提供给_value line devices connectivity line devices