2023+HuggingGPT: Solving AI Tasks with ChatGPT and itsFriends in Hugging Face

LLMs的自动化工具系统(HuggingGPT、AutoGPT、WebGPT、WebCPM) 在前面两篇博文中已经粗略介绍了增强语言模型和Tool Learning,本篇文章看四篇代表性的自动化框架,HuggingGPT、AutoGPT、WebGPT、WebCPM。HuggingGPT是tool learning中tool-augmented learning的一类,具体来说,它是一个以LLMs为控制器来管理来自Huggingface社区中诸多小模型的框架,其中用户的自然语言请求将视为一个通用接口,再经过LLMs的解析和规划后,再根据Huggingface小模型工具的描述进行模型选择,执行完每个小模 阅读详情

摘要:

语言是llm(例如ChatGPT)连接众多AI模型(例如hugs Face)的接口,用于解决复杂的AI任务。在这个概念中,llms作为一个控制器,管理和组织专家模型的合作。LLM首先根据用户请求规划任务列表,然后为每个任务分配专家模型。专家执行任务后,LLM收集结果并响应用户。

问题:

1.尽管LLMs在NLP任务中取得了重大成就,但由于文本输入和输出形式的限制,目前的LLMs缺乏处理复杂信息(如视觉和语音)的能力。

2.在现实场景中,一些复杂的任务通常由多个子任务组成,因此需要多个模型的调度和协作,这也超出了语言模型的能力。

3.对于一些具有挑战性的任务,LLMs在零射击或少射击设置中表现出出色的结果,但他们仍然比一些专家(例如,微调模型)弱。

贡献点:

1. 为了补充大型语言模型和专家模型的优势,提出了HuggingGPT。HuggingGPT将llm作为规划和决策的大脑,针对每个特定任务自动调用和执行专家模型,为通用AI解决方案的设计提供了新的途径。

2. 通过将Hugging Face与ChatGPT周围的许多任务特定模型集成,HuggingGPT能够处理涵盖多种模式和领域的广义人工智能任务。HuggingGPT通过模型间的开放协作,为用户提供多模式、可靠的服务。

3. 指出了HuggingGPT(和自治代理)中任务规划的重要性,并制定了一些实验评估来衡量llm的规划能力。

4.在跨语言、视觉、语音和跨模态的多个具有挑战性的人工智能任务上进行的大量实验表明,HuggingGPT在理解和解决来自多个模态和领域的复杂任务方面具有巨大的潜力。

方法:

整体流程

1.任务规划:使用ChatGPT分析用户的请求,了解用户的意图,并通过提示将其分解为可能可解决的任务。

通常,在实际场景中,许多用户请求将包含一些复杂的意图,因此需要编排多个子任务来实现目标。因此,我们制定任务规划作为HuggingGPT的第一阶段,目的是利用LLM分析用户请求,然后将其分解为结构化任务的集合。此外,我们还需要LLM来确定依赖关系以及这些分解任务的执行顺序,以建立它们之间的联系。

2.模型选择:为了解决计划的任务,ChatGPT根据模型描述选择托管在hug Face上的专家模型。

完成任务规划后,HuggingGPT接下来需要将任务和模型进行匹配,即在解析的任务列表中为每个任务选择最合适的模型。为此,我们使用模型描述作为连接各个模型的语言接口。更具体地说,我们首先从机器学习社区(例如,hug Face)获得专家模型的描述,然后通过上下文任务模型分配机制动态选择任务模型。该策略支持增量模型访问(简单地提供专家模型的描述),并且可以更加开放和灵活地使用ML社区。

上下文任务模型分配我们将任务模型分配表述为一个单选问题,其中潜在的模型在给定的上下文中作为选项呈现。通常,HuggingGPT能够根据提示符中提供的用户查询和任务信息,为每个已解析的任务选择最合适的模型。然而,由于最大上下文长度的限制,提示符不可能包含所有相关的模型信息。为了解决这个问题,我们首先根据它们的任务类型过滤掉模型,只保留那些与当前任务类型匹配的模型。对于这些选定的模型,我们将根据它们在hug Face上的下载次数对它们进行排名(我们认为下载可以在一定程度上反映模型的质量),然后选择top-K的模型作为HuggingGPT的候选模型。此策略可以大大减少提示中的令牌使用,并有效地为每个任务选择适当的模型。

3.任务执行:调用并执行每个选定的模型,并将结果返回给ChatGPT。

一旦将特定的模型分配给已解析的任务,下一步就是执行该任务,即执行模型推理。因此,在这个阶段,HuggingGPT会自动将这些任务参数输入到模型中,执行这些模型来获得推理结果,然后将其发送回LLM。在这个阶段有必要强调资源依赖的问题。由于先决条件任务的输出是动态生成的,因此HuggingGPT还需要在启动任务之前动态地指定任务的依赖资源。

4.响应生成:最后,利用ChatGPT整合所有模型的预测并为用户生成响应。

在所有任务执行完成后,HuggingGPT需要生成最终响应。HuggingGPT将前三个阶段(任务规划、模型选择和任务执行)的所有信息集成为这一阶段的简明总结,包括计划任务列表、任务选择的模型以及模型的推断结果。其中最重要的是推理结果,这是HuggingGPT做出最终决策的关键点。这些推理结果以结构化的格式呈现,如对象检测模型中带有检测概率的边界框,问答模型中的答案分布等。HuggingGPT允许LLM接收这些结构化的推理结果作为输入,并以友好的人类语言形式生成响应。此外,LLM不是简单地聚合结果,而是生成主动响应用户请求的响应,从而提供具有置信度的可靠决策。

整体流程如下图所示:语言是llm(例如ChatGPT)连接众多AI模型(例如hugs Face)的接口,用于解决复杂的AI任务。在这个概念中,LLM作为一个控制器,管理和组织专家模型的合作。LLM首先根据用户请求规划任务列表,然后为每个任务分配专家模型。专家执行任务后,LLM收集结果并响应用户。

一个huggingGPT的例子,如下图所示。HuggingGPT的工作流程以LLM(如ChatGPT)为核心控制器,专家模型为执行者,分为四个阶段:1)任务规划:LLM将用户请求解析为任务列表,确定任务之间的执行顺序和资源依赖关系;2)模型选择:基于专家模型在hug Face上的描述,LLM为任务分配合适的模型;3)任务执行:混合端点上的专家模型执行分配的任务;4)响应生成:LLM集成专家的推理结果,生成工作流日志汇总,响应用户。

局限性:

(1)HuggingGPT中的规划严重依赖于LLM的能力。因此,我们不能保证生成的计划总是可行和最优的。因此,如何对LLM进行优化,提高LLM的规划能力至关重要;

(2) 在我们的框架中,效率是一个共同的挑战。为了构建这样一个具有任务自动化的协作系统(例如HuggingGPT),它严重依赖于一个强大的控制器(例如ChatGPT)。然而,HuggingGPT在整个工作流程中需要与llm进行多次交互,从而增加了生成响应的时间成本;

(3)令牌长度是使用LLM时的另一个常见问题,因为最大令牌长度总是有限的。虽然有些作品已经将最大长度扩展到32K,但如果我们想要连接众多的模型,这对我们来说仍然是无法满足的。因此,如何简单有效地总结模型描述也是值得探索的问题;

(4)不稳定性的主要原因是llm通常是不可控的。虽然LLM在生成方面很熟练,但在预测过程中仍有可能不符合指令或给出不正确的答案,导致程序工作流程出现异常。如何减少推理过程中的不确定性是设计系统时必须考虑的问题。

JAVA:Spring Boot 集成 Atomikos 实现分布式事务 摘要: Atomikos是一款基于JTA标准的分布式事务协调器,通过两阶段提交(2PC)协议实现跨数据库/消息系统的事务一致性,适用于金融等高要求场景。本文以Spring Boot集成Atomikos为例,演示多数据源(订单库、库存库)的分布式事务管理。核心步骤包括:引入Atomikos依赖、配置XA数据源、设置两阶段提交的MyBatis多数据源,并通过Atomikos协调全局事务,确保跨库操作原子性。代码示例涵盖配置类、YAML定义及MySQL XA数据源初始化,为分布式系统提供强一致性解决方案。 阅读详情

相关推荐

Field-Oriented Control (FOC) 矢量控制 磁场定向控制

Field-Oriented Control (FOC) 磁场定向控制(FOC),也称为矢量控制,是一种用于控制永磁同步电动机(PMSM)和交流感应电动机(ACIM)的技术。 FOC在整个扭矩和速度范围内都具有良好的控制能力。 FOC的实现需要将定子电流从固定参考系转换为转子磁通参考系(也称为d-q参考系)。 速度控制和转矩控制是FOC最常用的控制模式。位置控制模式不太常见。大多数牵引应用使用转矩控制模式,在该模式下,电动机控制系统遵循参考转矩值。在速度控制模式下,电机控制器遵循参考速度值,并生成用于形成内

>>> 1万+

【论文精读】HuggingGPT: Solving AI Tasks with ChatGPT and its Friends in Hugging Face

又是一篇利用LLM进行规划的工作,中稿于NeurIPS 2023,它充分结合了专家模型解决特定任务的能力和LLMs的理解推理能力,工作新颖但效果一般,可以说提供了一种新的利用LLM解决通用任务的范式,在思想上值得借鉴。解决具有不同领域和模态的复杂人工智能任务是迈向通用人工智能的关键,虽然现在有大量可以用的AI模型面向不同领域和模态,但是它们不能解决复杂的AI任务。LLM在自然语言任务上有出色的表现,因此作者主张LLMs充当控制者来管理当前现有的AI模型,用于处理AI任务,自然语言则成为实现该目标的通用接口。

HERODING23的博客 2288

从零搭建SPI通信系统:AXI Quad SPI IP核在Xilinx平台上的完整配置流程

本文详细介绍了在Xilinx平台上使用AXI Quad SPI IP核从零搭建SPI通信系统的完整配置流程。涵盖IP核架构解析、Vivado环境配置、寄存器编程实战及性能优化策略,帮助开发者快速实现高速稳定的SPI通信,特别适用于嵌入式系统开发中的外围设备连接需求。

hh234的博客 1048

【HuggingGPT】Solving AI Tasks with ChatGPT and its Friends in Hugging Face

当前的语言模型Large Language Models (LLMs)缺乏处理复杂信息的能力,像视觉,语音这类信息就不能够很好的处理,这是一个语言模型能力缺陷上的问题。这样的方法带来的问题就是,如果管理的AI模型比较多的话,需要好好设计prompt,尤其是AI模型的描述,就是这个AI模型到底能做什么样的事情。具体来说,就是来了一个用户的请求request,然后基于一些提前写好的prompt,HuggingGPT选择要采用哪个模型来去解决子任务,然后基于执行的结果做出响应。期望是具备二者的通用能力。

小小何先生的学习之旅 2235

智驾系统分层架构:从传感器到执行器的全链路解析

本文深入解析了智能驾驶系统的分层架构,从传感器数据采集融合、应用层决策到车辆管理层执行,完整呈现了从感知到控制的全链路工作流程。文章重点阐述了架构设计的核心优势在于接口标准化与模块解耦,以ACC和LKA协同场景为例,说明了各层级如何通过清晰分工与高效协作,实现复杂系统的可靠、灵活与易于升级。

weixin_29219189的博客 394

TransUnet官方代码训练自己数据集(彩色RGB3通道图像的分割)

官方代码:https://github.com/Beckschen/TransUNet 目的:训练5个类别的汽车部件分割任务(测试在另一篇博客中) 实现效果: 1. github下载代码,并解压。 项目里的文件可能跟你下载的不一样,不急后面会讲到! 2. 配置数据集(尽最大努力还原官方数据集的格式)。 通常自己手上的数据集分images和labels文件夹,分别存放着原始图像和对应的mask图像,如下图所示; mask图像中的像素有0,1,2,3,4 分别代表背景,车身,轮子,车灯,窗户,一共五个

qq_37652891的博客 5万+

HuggingGPT Solving AI Tasks with ChatGPT and its Friends in HuggingFace---论文阅读总结

通过利用LLM在理解和推理方面的优势,HuggingGPT可以剖析用户意图,并将任务分解为多个子任务,然后,基于专家模型描述,为每个任务分配最合适的模型,并整和来自不同模型的结果。模型:HuggingGPT,连接LLMS(即ChatFGPT)和ML社区(即huggingface),可以处理来自不同模态的输入,并解决大量复杂的AI任务,具体来说对于huggingface中的每个AI模型,从库中使用其对应的模型描述,并将其融合到提示中,以建立与ChatGPT的连接,之后LLMS作为大脑确定用户问题的答案。

wangchaoxiao的博客 3973

如何使用Docker部署OpenClaw小龙虾(docker compose快速部署)

本文以飞牛NAS为例💻,带大家一步步完成Docker部署OpenClaw小龙虾🦞。不管你是用NAS、云服务器还是本地电脑,只要支持Docker,都可以参考这个步骤来安装部署⚡

XiaoqiangClub的博客 715

[LLM-Agent]万字长文深度解析规划框架:HuggingGPT

HuggingGPT是一个结合了ChatGPT和Hugging Face平台上的各种专家模型,以解决复杂的AI任务,可以认为他是一种结合任务规划和工具调用两种Agent工作流的框架。

2301_81940605的博客 1007

Raspberry Pi 4B 蓝牙串口(SPP)配置与使用

Linux、Android、Windows 等操作系统带有在引导期间启动的蓝牙守护进程/蓝牙服务。 对于与监视器连接并使用 GUI(如 GTK 等)运行的设备,只需多次单击即可轻松启用并连接到附近的设备。 但是在无头设备的情况下,我们必须依赖于需要在命令行上运行的不同命令。 这篇博客我们将讨论如何在无头树莓派上通过蓝牙设备连接附近。

视觉与物联智能 2733

Open3D 点云重叠区域检测【2025最新版】

本文介绍了一种基于八叉树和KD树的点云重叠区域检测方法。算法提供两种检测模式:八叉树(快速)和KD树(精确),支持可视化显示和详细统计信息输出。实现功能包括边界扩展、索引去重、精度调节等,可通过max_depth参数控制八叉树细分程度,distance_threshold调整检测精度。代码使用Open3D库,能自动计算并显示各点云的重叠比例和点数统计,最终结果以不同颜色区分重叠与非重叠区域。该方案适用于三维点云数据处理中的重叠分析任务。

点云侠的博客 593

【AIGC】大模型协作系统 HuggingGPT 深度解析

HuggingGPT 将语言作为通用接口、将 LLM 作为控制器,管理现有的人工智能模型。 HuggingGPT 通过 ChatGPT 管理 HuggingFace 上集成的数百个模型,覆盖文本分类、目标检测、语义分割、图像生成、问答、文本到语音、文本到视频等不同模态和领域的任务。 HuggingGPT 的工作流程:任务规划,模型选择,任务执行,响应生成。

youcans的博客 1万+

(四)美赛画图篇:画图模板+画图工具

美赛画图篇:画图模板+画图工具(一)画图模板(二)画图工具 因为散点图、折线图等多与数据有关,且需相关软件生成,故此处多是通用模板。直接替换文字内容即可。 (一)画图模板 1、Visio圆圈图 适合于:指标体系(E题常用) 点击下载:1 C币 如果不想花费且时间充足,悄咪咪地说,在visio-模板搜索可以找到很多。(稍微会耗一点时间) 2、简单指标体系图PPT 适合于指标体系 点击下载:0 C币...

weixin_43689393的博客 1万+

论文精读:HuggingGPT: Solving AI Tasks with ChatGPT and its Friends in Hugging Face

解决不同领域和多种模态的复杂任务是通往AGI的关键,尽管现在有各种各样的AI模型,但是它们没有办法自主地处理复杂任务,而LLMs恰好可以作为管理者控制现有的AI模型来完成任务。本文提出的HuggingGPT就是一个基于ChatGPT的Agent,可以利用HuggingFace上各种各样的AI模型来完成任务。首先通过ChatGPT根据用户的请求制定任务计划,然后根据HuggingFace上模型的功能描述选择可用的AI模型,之后通过这些模型来执行子任务,最后总结执行结果并给出响应。

Alex 2037

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

HuggingGPT Solving AI Tasks with ChatGPT and its Friends in Hugging Face

Efficiency HuggingGPT 在整个工作流程中需要多次和LLM进行交互,等待相应个过程中增加了等待的成本。Instability 不稳定性,不能保证每次LLM生成出来的内容都是符合格式要求的并且能使得工作流正常运行。Token Length 有限制,而要选择合适的AI Model,需要将模型的description进行总结。Model Selection: 根据任务的需求和模型的描述来选择模型执行任务。Planning 不能保证每次LLM生成的plan是最合适的或者最优的。

greatcoder的博客 2040

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

HuggingGPT解析:使用 ChatGPT及HuggingFace上的族系解决AI问题

总的来说,尽管HuggingGPT提出了一个新的AI解决方案设计范式,但仍存在一些限制和改进空间。例如,规划能力严重依赖于LLM的能力,效率是常见的挑战令牌长度是使用LLM时的常见问题,而且LLM的不稳定性也可能导致工作流程中的异常。尽管如此,HuggingGPT通过利用LLM的理解和推理能力,能够解析用户的意图,并将其分解为多个子任务,显示出解决具有挑战性的AI任务的巨大潜力,从而为实现人工普适智能开辟了新的途径。

m0_56661101的博客 2112

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

《2023 HuggingGPT: Solving AI Tasks with ChatGPT and its Friends in Hugging Face》阅读笔记

借助大语言模型(LLMS)在语言理解生成推理等方面表现出的出色能力,考虑将其作为控制器来管理现有的各种AI模型,。基于这一理念,提出了HuggingGPT框架,利用LLMS(ChatGPT)来连接机器学习社区(Hug face)中的各种AI模型,具体来说就是在接收用户请求时使用ChatGPT来进行任务规划,根据Hug face中提供的模型功能描述选择模型,使用所选AI模型执行每一个子任务,并根据执行结果汇总响应。现有LLM技术的局限:1)局限于文本的输入输出形式。

qq_44100524的博客 4401

万字长文深度解析规划框架:HuggingGPT(附教程)

HuggingGPT是一个结合了ChatGPT和Hugging Face平台上的各种专家模型,以解决复杂的AI任务,可以认为他是一种结合任务规划和工具调用两种Agent工作流的框架。

2301_81888214的博客 886

重磅!微软推出HuggingGPT:所有HuggingFace的模型都可以被ChatGPT随意调用!

编|桃子 Britta 源|新智元「贾维斯」已来!微软亚研院和浙大推出了一个大模型协作系统HuggingGPT,让ChatGPT协调HF社区模型,处理各种多模态任务能力超强。ChatGPT引爆的AI热潮也「烧到了」金融圈。近来,彭博社的研究人员也开发了一个金融领域的GPT——Bloomberg GPT,有500亿参数。GPT-4的横空出世,让许多人浅尝到了大型语言模型的强大能力。然而,OpenAI...

夕小瑶科技说 1397

HuggingGPT进化,一键控制10万多个AI模型

本文 机器之心 编辑:张倩、蛋酱通过 Transformers Agents,你可以控制 10 万多个 Hugging Face 模型完成各种多模态任务。从聊天到编程再到支持各种插件,强大的 ChatGPT 早就不是一个简单的对话助手,而是朝着 AI 界的「管理层」不断前进。3 月 23 号,OpenAI 宣布 ChatGPT 开始支持各类第三方插件,比如著名的理工科神器 Wolfram Alp...

idol24的博客 492

LLM之Agent(三):HuggingGPT根据用户需求自动调用Huggingface合适的模型

​ 浙大和微软亚洲研究院开源的HuggingGPT,又名JARVIS,它可以根据用户的自然语言描述的需求就可以自动分析需要哪些AI模型,然后去Huggingface上直接调用对应的模型,最终给出用户的解决方案。混合端点(包括本地推理和HuggingFace推理)上被选定的专家模型根据任务顺序和依赖关系执行分配的任务,并将执行信息和结果给到ChatGPT;ChatGPT根据HuggingFace上托管的各专家模型的描述,为任务分配合适的模型;

wshzd的博客 685

论文阅读:HuggingGPT: Solving AI Tasks with ChatGPT and its Friends in Hugging Face

该论文提出了一种名为HuggingGPT的框架,该框架结合了OpenAI的ChatGPT与Hugging Face的模型库。通过这种结合,HuggingGPT能够处理广泛的AI任务,包括自然语言处理、计算机视觉和其他领域的任务。

抟土成人祖,炼石补青天。眼中览银河,手可摘星辰。 1725

浙大与微软发布的 HuggingGPT 在线演示惊艳亮相,可完成多模态复杂任务,将带来哪些影响?...

击上方关注 “终端研发部”设为“星标”,和你一起掌握更多数据库知识本文首发于知乎:httpss://www.zhihu.com/question/594533230/answer/2975554866GPT-4的横空出世,让很多人为止着迷,许多人浅尝到了大型语言模型的强大能力!这或许会让更多的人‘失业’吧!我们来看一下HuggingGPT:前几天HuggingGPT利用ChatGPT作为控制器,连...

这个时代,作为程序员可能要学习小程序 686

万字长文深度解析规划框架:HuggingGPT

纵观整个流程其实主要还是Prompt的设计,如何设计更好的Prompt生成任务规划、模型选择和响应生成。在这种中间就是各种结果的解析工作,以及调用各种工具完成任务。值得一说的是,我在实验过程中,遇到各种各样的错误,_**尤其是第一阶段的任务规划中的任务输出,它对LLM的要求非常高,如果你只是本地的小模型或许是难以胜任的。第二,当你有很多工具选择,不妨将他们先进行分类,让LLM先从分类中选择,然后筛选出缩小后具体的工具列表,再次给到LLM选择最优最匹配的工具。

z551646的博客 997

每日学术速递4.1

标题:HuggingGPT:使用 ChatGPT 及其在 HuggingFace 中的朋友解决 AI 任务作者:Yongliang Shen, Kaitao Song, Xu Tan, Dongsheng Li, Weiming Lu, Yueting Zhuang文章链接:https://arxiv.org/abs/2303.17580摘要: 解决具有不同领域和模式的复杂 AI 任务是通向通用人工智能 (AGI) 的关键一步。虽然有丰富的 AI 模型可用于不同的领域和模式,但它们无法处理复杂

与君共勉,一起学习 703
上一篇: 生成智能体,人类行为的交互模拟(2023+Generative Agents: Interactive Simulacra of Human Behavior)
下一篇: 组建有效的人类-AI团队(2023+Forming Effective Human-AI Teams: Building Machine Learning Models that Complemen)
第六五签
博客等级 码龄9年 1235粉丝 204原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值