前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >复旦 | 推出通用大模型Agent平台:AgentGym,提供一条龙服务!

复旦 | 推出通用大模型Agent平台:AgentGym,提供一条龙服务!

作者头像
ShuYini
发布2024-06-19 19:21:39
960
发布2024-06-19 19:21:39
举报

点击上方“AINLPer“,设为星标

更多干货,第一时间送达

AI通用智能体的自我进化能力,并非遥不可及。

LLM-based Agent,已经不再需要人类监督者的帮助,开始实现「自我进化」!

这个智能体在学习了专家轨迹以后,获得了基础的通用能力,能够在更广泛、更真实的未知环境与任务上进行探索和学习,在外部的反馈下不断提升自己。

最近,复旦大学语言与视觉团队推出的 AgentGym 平台,打通了大语言模型智能体「数据采样、训练微调、自我进化、能力评测」全流程。基于该平台提出的 AgentEvol 算法,首次探索了通用智能体的自我进化能力,并在多项智能体任务上表现非凡,与 GPT-4、Claude 等 SOTA 模型比肩。

  • 论文链接:https://arxiv.org/abs/2406.04151‍
  • AgentGym代码仓库:https://github.com/WooooDyy/AgentGym‍‍‍‍

研究背景

开发一个能够解决和适应复杂工作的多任务通用智能体,一直是人工智能社区长久以来的重要目标。

类似于人类的学习过程,通用智能体首先通过模仿,开始学习最基础的知识和技能。

随着基础能力的掌握,我们不仅期望智能体可以通过与不同环境的交互,持续学习和适应许多先前未见的任务,还能从自身经验以及外部反馈中汲取丰富的智慧,发展出一定程度的泛化能力(图1)。

图1:基础通用智能体实现「自我进化」的示意图。该智能体首先在人类监督下进行行为克隆,随后在不同的外部环境和任务中进行探索和学习,以实现自我进化。

大语言模型凭借其卓越的通用能力,被视为构建此类智能体的重要基础之一。目前的研究领域正沿着两个主要方向进行探索,以推动智能体技术的进一步发展。

  • 依赖于人类监督的行为克隆(Behavior Cloning)方法,需要智能体逐步模仿专家提供的轨迹数据。这种方法虽然有效,但由于标注资源的限制,难以扩展对环境的探索也较为有限,容易遇到性能或泛化性的瓶颈。
  • 允许智能体根据环境反馈,不断提高能力的自我改进(Self Improving)方法,减少了对人类监督的依赖,同时丰富对环境的探索深度。然而,它们通常在特定任务的孤立环境中进行训练,得到一批无法有效泛化的专家智能体。

面对上述挑战,作者首次探讨了一个具备基础能力的通用智能体——在多种环境和任务中——自我进化的潜力。

为了实现这一研究目标,作者确定了推动智能体自我进化的「三大关键支柱」,这些支柱是研究的核心要素。

  • 多样化的环境和任务,允许智能体动态且全面地进行交互、训练,而不是被局限于某个孤立的环境。
  • 一个适当大小的轨迹数据集,帮助智能体配备基本的指令遵循能力和基础任务知识。
  • 一种有效且可扩展的进化算法,激发智能体在不同难度环境中的泛化能力。

图2:AgentGym 平台示意图。平台共涵盖了 14 个跨越不同类别的环境,每个环境都作为 HTTP 服务部署。客户端为智能体提供封装好的统一接口,便于与环境互动。通过 AgentEvol 方法,作者探索了智能体在不同环境和任务中的自我进化。此外,平台提供了测试集 AgentEval 对智能体进行全面的能力评估。

围绕这三大支柱,作者的研究工作体现在以下几个方面:

  • 「AgentGym」,一个包含 14 种具体环境,89 种具体任务类型的交互平台(图2),为大语言模型智能体训练提供支持。该平台基于 HTTP 服务,为不同环境提供了一个统一的 API 接口,支持轨迹采样、多轮交互、在线评估和实时反馈。
  • 「AgentEval」,一个具有挑战性的智能体测试基准。「AgentTraj」和「AgentTraj-L」,通过指令增强和众包 / SOTA 模型标注构建的专家轨迹数据集。经过格式统一和数据过滤,帮助智能体学习基本的复杂任务解决能力。
  • 「AgentEvol」,一种激发智能体跨环境自我进化的全新算法。该算法的动机在于,期望智能体在面对先前未见的任务和指令时进行自主探索,从新的经验中进行学习与优化。

AgentGym 平台,是一个全新的,支持大语言模型智能体轨迹采样、自我进化、能力评测的框架,特点是提供多样、实时、并发和统一格式的反馈。旨在帮助人工智能社区更便利地探索具备通用能力的 LLM-based 智能体。

AgentGym——交互式训练与评测一体化的智能体平台

AgentGym 集成了多种环境、丰富的轨迹数据和全面的基准测试。它通过统一的环境操作接口,简化了环境配置过程。具体而言,AgentGym 拥有以下特点:

多样化的环境:

AgentGym 包含 14 种环境和 89 项任务,涵盖了网页导航、文字游戏、具身控制、工具使用和代码等类别。无论是致力于构建 Task-specific Agent,还是通用型的 Generally-capable Agent,AgentGym 框架均能提供对应的支持。

其中,每个环境独立部署,避免了不同环境间的依赖冲突,确保了平台的可扩展性。例如,WebShop 环境,一个用于网络购物任务的交互式平台,仅通过一行命令,即可轻松完成部署。

数据驱动:

AgentGym 的轨迹数据采用了统一的 ReAct 格式,该格式通过「Thought-Action」对将推理步骤和行动序列结合,图 2左上方提供了一个轨迹数据的示例。

平台通过广泛收集和增强指令,构建了具有 20509 条指令的集合,并从中挑选出 1160 条具有多样性的指令,构建了基准测试集 AgentEval,用于全面评估基于 LLM 的智能体。

同时,作者使用 GPT-4-Turbo 和众包标注收集轨迹数据,并基于奖励或正确性严格筛选,构建了 6130 条高质量轨迹的集合 AgentTraj。为了展现行为克隆方法的性能潜力,研究者进一步扩展,得到包含 14485 条轨迹的 AgentTraj-L。

图3:AgentGym 平台 14 种环境的统计数据(涵盖任务类型数量、指令集规模、评估集规模、轨迹集规模及平均交互轮数)。

模块化的架构与高效的 Pipeline:

AgentGym 平台采用模块化设计,开发者可以轻松添加或更改环境。环境被部署在不同的服务器(EnvServers)上,通过 HTTP 服务实现灵活、高效的交互。客户端(EnvClients)封装了与环境交互所需的函数,提供了相应的操作接口。

而核心组件 AgentController 作为智能体和环境的中间媒介,提供了优化智能体策略的训练器(Trainer),以及支持多环境的性能评估器(Evaluator)。统一的操作接口简化了智能体与环境的交互,使用户能够专注于算法优化和智能体训练。

图4:AgentGym 平台架构概览。

独特优势:

与其他框架相比,AgentGym 的优势在于它不仅提供了广泛的环境集合,还通过交互平台为智能体提供实时的环境反馈,支持智能体的训练与评估。同时,AgentGym 支持在多个环境中实现智能体的「全面进化」,这极大地增强了智能体的泛化能力,使其在不同任务和环境中都能表现出色。

图5:AgentGym 与其他代理框架的比较。

AgentEvol——通用智能体进化算法

基于 AgentGym 套件,研究者们可以容易地对智能体进行采样、训练与评测。而复旦语言与视觉团队为了探究具有通用智能体的在「自我进化」的潜力,提出了 AgentEvol 算法(图6),帮助智能体在多环境、多任务下实现了各项能力的提升。这一算法的核心思想是让智能体通过探索和学习来提升自己的性能,特别是在面对之前未见过的任务和指令时。

图6:AgentEvol 算法框架

AgentEvol 首先基于收集到的 AgentTraj 轨迹数据集,通过「行为克隆(behavioral cloning)」的形式训练一个「基础通用智能体(base generally-capable agent)」,使其具备基本的指令遵循能力和必要的先验知识。在这个过程中,智能体一步一步地模仿专家的轨迹,包括思考过程(thought)和行动(action)。

接着,这一基础通用智能体与不同的环境交互,完成自我进化。它面对来自不同环境的、更多样化的指令与查询(Instructions and queries),逐渐提升自己完成各项任务的能力。

这一过程受到机器学习中 RL as Inference 方法的启发,它将交互强化学习视为一个概率推断问题(具体推导与解释见原文)。这种方法与传统的强化学习方法不同,它不是直接寻找最大化期望回报的轨迹,而是首先定义一个关于轨迹的最优策略分布,然后通过迭代过程来优化这个分布。

具体而言,该过程包括两个交替进行的步骤:

  • 探索步骤(Exploration Step)」:在这一步骤中,智能体在当前策略下与环境进行交互,生成新的轨迹并评估其奖励,形成一个估计的最优策略分布。具体而言,智能体与多个环境进行交互,生成一系列的行为轨迹。每条轨迹都是智能体根据当前策略与环境互动的产物,包括智能体的思考,智能体的行为,以及环境的观测。然后,环境端会根据轨迹与任务目标的匹配程度,为每条轨迹给出奖励信号。
  • 学习步骤(Learning Step)」:在这一步骤中,智能体根据估计的最优策略分布更新参数,使其更加接近于最优策略。具体而言,智能体利用在探索步骤中收集到的轨迹与奖励数据,通过一个基于轨迹奖励加权的优化目标函数来优化自己。注意,在学习步骤中,为了减少过拟合,作者优化的总是「基础通用智能体」,而不是上一轮优化得到的智能体。

通过交替探索和学习步骤,AgentEvol 算法逐步优化智能体,显著提升其在多环境下的能力,实现「自我进化」的目标。

实验介绍

任务概述:

本研究通过 AgentGym 框架对智能体进行了一系列的跨环境探索和进化实验。实验旨在评估基础智能体在多样化环境中进行自我探索和进化的能力。为此,作者采用更广泛的指令集来扩展智能体的探索空间。

主要结果:

在 11 个不同环境中,使用 AgentTraj 数据集训练的智能体

展示了良好的基础交互能力。进一步,通过在更大的AgentTraj-L 数据集上实施行为克隆,智能体

实现了显著的性能提升。

而本文提出的 AgentEvol 方法,尽管在初始阶段仅基于有限的专家数据,但通过交替的探索和学习步骤,智能体能够在未见过的探索集上做出正确决策,实现自我进化。在多个智能体任务上,AgentEvol 方法超越了

和其他 SOTA 模型。

这一发现揭示了智能体具有适应和解决更复杂任务的潜力,为开发更高级的通用智能体提供了坚实的基础。

图7:多任务环境下各种模型和智能体的性能对比

分析实验:

该团队还从四个角度展开了一系列的消融实验:(1) 数据合并策略;(2) 进化迭代次数;(3) 探索范围;(4) 采样次数。实验发现,将智能体当前生成的轨迹与初始专家轨迹集合并,能带来更稳定的性能提升。相应地,利用前一迭代的探索轨迹,可能导致过拟合,出现性能的波动。

随着进化过程中迭代次数 M 增加,性能提升,但最终会趋于稳定和收敛。

图8:数据合并策略和迭代次数的消融实验

在 AgentEvol 探索过程中,通过对每个指令执行采样,生成多样化的轨迹促进了智能体的学习。

而将智能体的探索范围限制在已知的指令集内,也就是进行有限空间的探索,可能会限制 AgentEvol 的性能进一步提升。

图9:采样数目与探索范围的消融实验

此外,研究者还在不同的基座模型上进行实验。结果表明, AgentEvol 方法在不同规模的模型上均表现出色。

图10:不同基座模型上的性能比较

文章还探讨了在通用智能体的进化过程中,成功与失败的经验轨迹是否都能发挥作用

实验采用直接偏好优化 DPO (Direct Preference Optimization) 方法,基于探索过程中的「成功-失败」轨迹进行训练。结果表明,智能体能够在多任务的场景下,从错误经验中学习,但其整体性能仍然不如 AgentEvol 方法。

图11:基于成功和失败轨迹的 DPO 训练

点击下方链接🔗关注我们

「资料整理不易,点个再看、赞吧」

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-06-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AINLPer 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档