Redian新闻
>
GPT-4绝对性能暴涨74.4%!UIUC苹果华人团队提出CodeAct,用Python代码统一LLM智能体行动

GPT-4绝对性能暴涨74.4%!UIUC苹果华人团队提出CodeAct,用Python代码统一LLM智能体行动

公众号新闻



  新智元报道  

编辑:桃子
【新智元导读】最近,UIUC苹果华人提出了一个通用智能体框架CodeAct,通过Python代码统一LLM智能体的行动。

一直以来,LLM智能体被众多业界AI大佬看好,甚至有望成为将人类从琐碎工作中解放出来的利器。

但是,它们该如何与世界进行最佳互动?

最近,来自UIUC和苹果的华人研究员,提出了一种全新的智能体框架——CodeAct。

它通过采用可执行的Python代码,来统一LLM智能体的行动。

论文地址:https://arxiv.org/pdf/2402.01030.pdf

与多数现有的LLM智能体不同的是,CodeAct的突出之处在于:能够充分利用现有LLM对代码数据的预训练,以实现低成本高效的采用。

而且本质上可以通过控制和数据流支持复杂的操作,还可以使用广泛的软件包来扩展行动空间和自动反馈。

对此,作者还构建了一个CodeActAgent工具,在Mistral 7B模型之上搭建,能够通过对话完成代码任务。

比如,「你能创建100个随机数据点(每个数据点的维度为 2)并创建散点图吗?运行 k-means 对它们进行聚类并可视化」。

让LLM成为最优智能体


当允许访问API的行动模块进行增强时,LLM的行动空间可以扩展到传统的文本处理之外。

从而让LLM获得工具调用和内存管理等功能,并冒险进入现实世界的任务,例如控制机器人并进行科学实验 。

那么,如何有效拓展LLM智能体解决复杂现实问题的行动空间?

如下图1左上,许多现有研究已经检验了使用文本,或JSON来生成行动。

然而,这两种方法通常都受到行动空间范围的限制(行动通常是针对特定任务定制的)和灵活性有限(例如无法在单个行动中组合多个工具)。

另外一些研究展示了,使用LLM生成代码来控制机器人或游戏角色的潜力。

然而,它们通常依赖于预先指定的控制原语和手工设计的提示,更重要的是,它们很难根据新的环境观察和反馈动态调整或发出行动。

对此,这项研究提出了一个通用框架CodeAct,允许LLM生成可执行的Python代码作为行动(图1右上)。

CodeAct旨在处理各种应用程序,并具有独特的优势:

(1) CodeAct与Python解释器集成,可以执行代码行动,并动态调整先前的行动,或根据通过多轮交互(代码执行)收到的观察结果发出新行动。

(2) 代码行动允许LLM利用现有软件包。CodeAct可以使用现成的Python包来扩展行动空间,而不是手工制作的特定于任务的工具。它还允许大模型使用大多数软件中实现的自动反馈(例如错误消息),通过自我调试其生成的代码来改进任务解决。

(3) 代码数据广泛应用于当今大模型的预训练中。这些模型已经熟悉结构化编程语言,因此可以经济高效地采用 CodeAct。

(4) 与JSON和预定义格式的文本相比,代码本质上支持控制和数据流,允许将中间结果存储为变量以供重用,并用一段代码允许组合多个工具来执行复杂的逻辑操作(例如,if-语句、for循环),从而释放大模型预训练的编程知识来处理复杂任务的潜力。

在图1中,使用CodeAct(右上角)的法学硕士可以通过for循环将相同的工具序列应用到所有输入,只需一个行动。而文本或JSON必须对每个输入采取行动。

CodeAct框架


在图2中,首先介绍了LLM智能体在现实世界中使用的一般多轮交互框架,该框架考虑了三个角色:

智能体、用户、环境。

研究人员将交互定义为智能体与外部实体(用户或环境)之间的信息交换。

在每一轮交互中,智能体从用户(如自然语言指令)或环境(如代码执行结果)接收观察结果(输入),通过思维链(CoT)选择性地规划其行动,并以自然语言或环境向用户发出行动(输出)。

CodeAct采用Python代码来整合智能体与环境交互的所有操作。

在CodeAct中,向环境发出的每个动作都是一段Python代码,而智能体将收到代码执行的输出(如结果、错误)作为观察结果。

CodeAct作为强大工具使用框架的前景

研究中,作者进行了一项对照实验,以了解哪种格式(文本、JSON、CodeAct)更有可能引导LLM生成正确的原子工具调用。

本实验的表现,反映了LLM对相应格式的熟悉程度。

研究人员假设使用CodeAct调用工具是为模型使用工具的更自然的方式,模型通常在训练期间广泛接触代码数据。

对于大多数LLM,即使在其控制和数据流强度被削弱的原子操作(简单化的工具使用场景)中,CodeAc也能实现相当或更好的性能。

与闭源LLM相比,CodeAct的改进在开源模型中更为突出。

此外,对于微调开源LLM来说,代码数据通常比专门JSON或文本工具调用格式更容易访问。尽管JSON始终弱于其他开源模型方法,但它在闭源LLM中实现了不错的性能,这表明这些闭源模型可能已经针对其JSON功能进行了有针对性的微调。

这些结果表明,对于开源大模型来说,针对CodeAct进行优化是比其他方法更好的途径来提高其工具使用能力,因为由于在预训练期间广泛接触代码数据,它们已经表现出了良好的初始CodeAct能力。

CodeAct以更少的交互完成更多工作

除此之外,作者研究了LLM智能体是否可以,从需要复杂工具使用模式的问题上的代码控制和数据流中受益。

这里,研究人员策划了一个基准来评估LLM解决通常需要多次调用多个工具的复杂任务的能力。

作者在表3中列出了全部结果,在图1中列出了可视化结果子集。

CodeAct通常具有更高的任务成功率(17个已评估LLM中有12个)。此外,使用CodeAct执行任务所需的平均交互轮数也较低。

比如,与次佳操作格式(文本)相比,最佳模型gpt-4-1106-preview实现了20.7%的绝对改进,同时平均减少了2.1个交互回合。

然而,就CodeAct的绝对性能而言,开源和闭源LLM之间仍存在显著差距,最佳开源模型的绝对性能提高了13.4%,而最佳闭源模型gpt-4-1106-preview的绝对性能提高了74.4%。

这可能是由于开源模型的任务解决能力较弱,无法在没有演示的情况下遵循复杂指令,这表明迫切需要改进开源 LLM,以在零样本设置下完成实际任务。

CodeAct受益于多轮交互和现有软件包

研究人员还展示了LLM智能体如何与Python集成,并使用现有软件在多轮交互中执行复杂的任务。

得益于在预训练期间学到的丰富的Python知识,LLM智能体可以自动导入正确的Python库来解决任务,而不需要用户提供的工具或演示。

如图3所示,CodeActAgent可以使用Pandas下载和处理表格数据,使用Scikit-Learn进行机器学习训练-测试数据分割和回归模型训练,并使用Matplotlib用于数据可视化。

此外,使用交互式Python解释器执行代码可以自动显示错误消息,帮助LLM智能体在多轮交互中「自我调试」其操作,并最终正确完成人类用户的请求。

构建开源LLM智能体


CodeAct所展示潜力的结果,激励研究人员构建一个开源的LLM智能体,可以通过CodeAct与环境交互,又可以使用语言与人类进行交流。

为了提高开源LLM的CodeAct能力,作者介绍了CodeActInstruct,这是一个包含智能体与环境交互轨迹的指令微调数据集。

如表4,是CodeActInstruct的数据组成,以及与先前工作的对比。

接下来,研究人员对Llama-2 7B和Mistral 7B的CodeActInstruct和一般对话进行了微调,进而获得CodeActAgent

CodeActAgent在CodeAct任务中表现出色。

如表5所示,CodeActAgent(两种变体)在MINT的域内和域外子集上都比所有评估的开源LLM表现更好。

上,作者发现CodeActAgent(Mistral)的性能优于类似规模(7B和13B)的开源LLM,甚至达到了与70B模型相似的性能。

令人惊讶的是,Llama-2变体没有观察到任何改进。

CodeActAgent概括为文本操作。

当对域外文本操作进行评估时,从未针对文本操作进行过优化的CodeActAgent (LLaMA2, 7B) 实现了与对文本操作进行显式调整的AgentLM-7B相当的性能。

在表5中,还发现CodeActAgent保持或提高了一般LLM任务的性能。

在表 5 中,研究人员还发现CodeActAgent(两个变体)在测试的一般LLM任务中表现更好,除了CodeActAgent(Mistral-7B)在MMLU上略有下降。


参考资料:

https://twitter.com/xingyaow_/status/1754556835703751087




微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
2023虽然过的不尽人意但是也要总结一下!GPT鸿发超市「2000 万美元」买下82街前Walmart超市!开设第4家Hông Phát分店!关于朱令铊中毒的一点讨论黄仁勋甩出最强AI核弹!GPU新架构性能暴涨30倍,首发人形机器人大模型,联手苹果闯MR今日arXiv最热NLP大模型论文:微软提出SliceGPT,删除25%模型参数,性能几乎无损LLM巫师,代码预训练是魔杖!UIUC华人团队揭秘代码数据三大好处嫉妒的心灵不美丽无需RLHF显著提升GPT-4/Llama2性能,北大团队提出Aligner对齐新范式智谱 AI 推出新一代基座大模型 GLM-4,能力逼近 GPT-4,配备多模态、长文本和智能体UCLA华人提出全新自我对弈机制!LLM自己训自己,效果碾压GPT-4专家指导开源AGI智能体人人可养成:AGI对齐新思路,让智能体在人类世界中接受训练13款旗舰手机冬测:-30°C苹果最快歇菜,华为这次有点狠...今日Arxiv最热NLP大模型论文:LLM化身符号逻辑大师,智能体文本游戏新纪元太方便了!无须安装软件,「在线」编写Python代码!哈工大联合快手提出CogGPT:大模型也需要认知迭代阿里1号AI「员工」上岗,007写代码助攻大厂程序员!炸掉祖传屎山代码,Java丝滑改Python跨语言编程:在C#应用程序中调用Python在线编写和运行Python代码 使用介绍NeurIPS 2023 | 港科大&华为提出CoDA:开放词汇3D目标检测新网络说一个有关Open AI的Chat GPT 创投人和我家的小故事吴恩达:别光盯着GPT-5,用GPT-4做个智能体可能提前达到GPT-5的效果谷歌狂喜:JAX性能超越Pytorch、TensorFlow!或成GPU推理训练最快选择集体出走的Stability AI 发布全新代码大模型,3B以下性能最优,超越Code Llama和DeepSeek-CoderAI也造代码屎山!研究发现GitHub Copilot代码可维护性差,偏爱“无脑重写”而非重构复用已有代码iPhone动嘴10秒P图!UCSB苹果全华人团队发布多模态MGIE,官宣开源人人可玩两首《万家灯火》《再见,布里诺斯艾利斯》如何使用python发送日志易告警熬夜爆肝,用Python赚了4w!深夜炸场!英伟达发布全球最强 AI 芯片,性能暴涨 30 倍,老黄才是这个时代的乔布斯清华、小米、华为、 vivo、理想等多机构联合综述,首提个人LLM智能体、划分5级智能水平国产「GPTs」登场!清华系重磅发布GLM-4全家桶,性能可达90% GPT-4大佬出走后首个发布!Stability官宣代码模型Stable Code Instruct 3BStability AI发布全新代码模型Stable Code 3B!媲美70亿Code Llama,没GPU也能跑ICLR 2024 Oral | GitHub狂揽30k星!MetaGPT:增强多智能体协作能力比LoRA还快50%的微调方法来了!一张3090性能超越全参调优,UIUC联合LMFlow团队提出LISA
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。