Hugging GPT 网上一时间的沸沸扬扬,比如AI神器入口,统领所有AI模型,多模态AI模型王炸,正式开启高级人工智能之路…
那么,它到底是什么,真的有那么神奇吗?
咱们不通过中间商,直接看几个源头的入口吧
先看看Github,Github上已经有15.2K星星了!1.1K大叉子!
一句话总结了这是个啥,就是一个连接大型语言模型(ChatGPTs)和机器学习社群(AI模型)的一个系统,而已。。。
“JARVIS, a system to connect LLMs with ML community”
再看一下这篇发表在arXiv上的文章
摘要我就通俗点说吧,“业务需求这么多,AI模型也这么多,而ChatGPT这么牛,何不把它作为入口,统领各种模型做业务支撑,这样一来,文字、图片、视频请随意,用户用得好不痛快!”
下面具体解释一下这个摘要,若要深入了解,建议一读:
该系统解决具有不同领域和不同模式的复杂人工智能任务是迈向高级人工智能的关键一步。
虽然有丰富的 AI 模型可用于不同的领域和模式,但它们无法处理复杂的 AI 任务。考虑到大型语言模型 (LLM) 在语言理解、生成、交互和推理方面表现出非凡的能力,我们提倡 LLM 可以充当控制器来管理现有的 AI 模型以解决复杂的 AI 任务,并且语言可以作为通用接口来赋能。
基于这一理念,我们提出了 HuggingGPT,这是一个利用 LLM(例如 ChatGPT)连接机器学习社区(例如 Hugging Face)中的各种 AI 模型以解决 AI 任务的框架。
具体来说,我们在收到用户请求时使用 ChatGPT 进行任务规划,根据 Hugging Face 中可用的功能描述选择模型,用选定的 AI 模型执行每个子任务,并根据执行结果汇总响应。
借助ChatGPT强大的语言能力和Hugging Face丰富的AI模型,HuggingGPT能够覆盖众多不同模态和领域的复杂AI任务,并在语言、视觉、语音等具有挑战性的任务中取得令人瞩目的成果,为奠定通往高级人工智能道路打下基础。
下载这篇文章大概浏览一下
1. 标题很讨巧:在Hugging Face,用ChatGPT和它的朋友们,解决各种AI任务~ HuggingGPT: Solving AI Tasks with ChatGPT and its Friends in Hugging Face
2. 该系统的是由浙大和微软亚洲研究院联手合作;
3. 文字不具体带着看了,下面我们来看几张关键的图~
语言充当 LLM(例如 ChatGPT)的接口,连接众多 AI 模型(例如 Hugging Face 中的模型)以解决复杂的 AI 任务。在这个概念中,LLM 充当控制器,管理和组织专家模型的合作。
LLM首先根据用户请求规划任务列表,然后为每个任务分配专家模型。专家执行任务后,LLM 收集结果并响应用户。
总之,贡献如下:
1.为了完善大型语言模型和专家模型的优势,我们提出了模型间合作协议。大型语言模型作为规划和决策的大脑,小型模型作为每个特定任务的执行者,为设计通用人工智能模型提供了新的途径。
2. 我们构建了 HuggingGPT,通过将 Hugging Face hub 与围绕 ChatGPT 的 400 多个任务特定模型集成来处理通用的 AI 任务。HuggingGPT通过模型的开放协作,为用户提供多模态、可靠的对话服务。
3. 对跨语言、视觉、语音和跨模态的多项具有挑战性的 AI 任务进行的广泛实验,证明了 HuggingGPT 在理解和解决来自多种模态和领域的复杂任务方面的能力。
这个系统的工作原理是什么?
HuggingGPT引入了一个协作系统,该系统由作为控制器的 LLM 和作为协作执行者的众多专家模型组成(来自 HuggingFace Hub)。该系统的工作流程包括四个阶段:
1. 任务规划:使用ChatGPT分析用户的请求,了解他们的意图,并将其拆解成可能的可解决任务。
2. 模型选择:为解决计划任务,ChatGPT 根据描述选择托管在Hugging Face 上的专家模型。
3. 任务执行:调用并执行每个选定的模型,并将结果返回给 ChatGPT。
4. 生成反馈:最后,使用ChatGPT整合所有模型的预测,生成response。
以上,该系统会将任务分解为自然语言任务、视觉任务、声音任务以及视频任务。
下面的任务是图片和文字任务的结合,即基于两个图片来生成一张新的图片,工作原理如下:
下面这个是文字和视频任务,但是要求生成一个描述性视频:
下面这个是区分图片内容的任务,但是要求生成一个描述性视频:
这个是通过语言来识别图片内容,以及各模态之间转换的简单案例:
下面是基于原图生成新图及说明的复杂案例a:
下面是对图片进行尽可能的文字描述的复杂案例b:
下面是描述图片中的物体以及相关解释的复杂案例c:
那么当前该系统的缺点是什么呢?
HuggingGPT 不可避免地受到一些限制:
首先,效率。效率的瓶颈在于大型语言模型的推理。对于每一轮用户请求,HuggingGPT 都需要在任务规划、模型选择和响应生成阶段至少与大型语言模型进行一次交互。这些交互极大地增加了响应延迟并导致用户体验下降。
其次,最大上下文长度的限制。受 LLM 可以接受的最大令牌数(token)限制,HuggingGPT 还面临最大上下文长度的限制。我们已经使用了对话窗口,只在任务规划阶段跟踪对话上下文来缓解它。
最后,稳定性,包括两个方面:
一种是在大型语言模型的推理过程中发生的叛乱。大型语言模型在推理时偶尔会不遵守指令,输出格式可能会违背预期,导致程序工作流程出现异常。 第二个是 Hugging Face 推理端点上托管的专家模型的不可控状态。Hugging Face 上的专家模型可能会受到网络延迟或服务状态的影响,导致任务执行阶段出现错误。
对于该系统的总结和展望是什么?
在本文中,我们提出了一个名为 HuggingGPT 的系统来解决 AI 任务,以语言作为接口将 LLM 与 AI 模型连接起来。我们系统的原理是LLM可以看作是管理AI模型的控制器,可以利用Hugging Face等ML社区的模型来解决用户的不同需求。通过利用 LLM 在理解和推理方面的优势,HuggingGPT 可以剖析用户的意图并将任务分解为多个子任务。然后,基于专家模型描述,HuggingGPT 能够为每个任务分配最合适的模型,并整合来自不同模型的结果。通过利用来自机器学习社区的众多人工智能模型的能力,HuggingGPT 在解决具有挑战性的人工智能任务方面展示了巨大的潜力。
此外,我们也注意到近来LLMs的快速发展给学术界和工业界带来了巨大的影响。我们还希望我们的模型设计能够激发整个社区的灵感,并为 LLM 迈向更高级的 AI 铺平新道路。
至此,文章大概扫了一遍。
最后,该系统实际的应用到底如何呢?我们通过以下链接进入到该系统的工作界面。
我们大概看一下这个系统包含哪些主要的模块,首先选择模型(Models),其中包含了丰富的模型!
多模态模型
计算机视觉模型
自然语言处理模型
语音处理模型
表格以及增强学习模型
再看看数据集(Datasets)
总共有28416个数据集!
任意查看一个数据集,里面有数据集以及模型训练的详细信息:
再看看机器学习Community里有哪些APP?
APP非常丰富,值得后续试用一下!
初探可见,该系统背后除了ChatGPT这张王牌之外,还有大量的资源来支撑,或者说是AI生态资源作为底座,比如大量的支持各种模态的模型,大量的可供训练和测试的数据集,以及机器学习社群中大量可供实践的AI应用。
从实践来看,我们可以将系统安装到自己的环境下,但是对安装环境的要求有点高,当然,有条件的建议安装使用,没有条件的,还是通过它的官方web来实践:
以上可见,该系统的概念讨巧,切入点意图明显,但也并非仅是朝夕之功,而是厚积薄发之举,考虑到文章字数已经略显臃肿,其他信息暂且不展开和深入探讨,后续有时间,也会对Hugging GPT进一步研究、实践和分享~
HAVE FUN!
参考文献:
[1] https://github.com/microsoft/JARVIS
[2] https://huggingface.co/spaces/microsoft/HuggingGPT
[3] https://arxiv.org/abs/2303.17580
原创文章,作者:门童靖博士,如若转载,请注明出处:https://www.agent-universe.cn/2023/04/11973.html