前言

ChatGPT吹起的AI人工智慧大戰越演越烈。近期又推出了超強組合 HuggingFace + ChatGPT = HuggingGPT 強勢來襲。

本月初浙江大學與微軟的聯手發表最新研究HuggingGPT,HuggingGPT 使用ChatGPT這類的大型語言模型(LLM) 來管理,和連接來自Hugging Face的各種 AI 模型,已解決複雜的 AI 任務。

本文就來介紹這個黃色笑臉 HuggingGPT 有什麼功能吧!

HuggingGPT/HuggingGPT

HuggingGPT 介紹

HuggingGPT涉及兩個主體一個「ChatGPT」,另一個就是AI社群「Hugging Face」。HuggingGPT建構了全新的協作系統,讓使用者能夠在ChatGPT幫助下快速準確選擇合適的人工智慧模型,完成綜合文字、影片、語音等複雜任務。

專案於Github開源,並取名為JARVIS(就是鋼鐵人AI管家的賈維斯名字)。


首先,介紹 Hugging Face

Hugging Face 為一家人工智慧公司,開發用於建構機器學習應用程式的工具,提供可用於不同機器學習任務的模型,知名的產品包括自然語言處理Transformers模型,同時Hugging Face也營運共享平臺,供人工智慧社群可以在平臺上共享程式碼、模型和資料集。

Hugging Face 目前共享超過10萬個預訓練模型,上萬資料庫,成為AI界的Github,包括微軟、Google、彭博、英特爾等各行業上萬機構都有使用Hugging Face。

從2021年開始,Hugging Face 與AWS宣布擴大合作,Hugging Face 將使用 AWS 作為主要開發平臺,AWS在機器學習服務上提供最新的Hugging Face模型。目標是提升下一代機器學習模型的可用性,並且讓機器學習技術更加普及。

企業建置、訓練、部署大型語言模型和電腦視覺模型,是一個高成本且非常耗時的過程,加上訓練這些模型需要具備高度的專業知識,這樣的門檻使許多企業難以將生成式人工智慧用於產品中。而Hugging Face與AWS的合作,便是要降低應用生成式人工智慧的困難。



HuggingGPT問世,讓AI更通用

HuggingGPT 的核心概念是將語言作為LLMs 與其他人工智能模型之間的通用接口。

這一項創新策略使得 LLMs 可以調用外部模型,進而解決各種複雜的AI人工智慧工作任務。HuggingGPT 在設計上強調了任務規劃、模型選擇、任務執行和響應生成四個階段,使得整個系統可以高效地協調不同模型,解決多模態信息和復雜數字智能任務。


  • 任務規劃:使用 ChatGPT 分析用戶需求以了解其意圖,並通過提示將其拆分為可能可解決的任務。
  • 模型選擇:為了解決計劃中的任務,ChatGPT 根據模型描述從託管在 Hugging Face 上的專家模型中選擇模型。
  • 任務執行:調用和執行每個選擇的模型,並將結果返回給 ChatGPT 。
  • 響應生成:最後,使用 ChatGPT 將所有模型的預測整合起來,並為用戶生成答案。

HuggingGPT 能自動分析所需AI模型,直接調用 HuggingFace 上的對應模型,協助執行並完成任務。整個過程中,只需用自然語言表達需求。它就能自動分析需要哪些AI 模型,然後直接去調用HuggingFace 上的相應模型,執行直到任務完成。


HuggingGPT 示範



HuggingGPT的使用非常簡單,以上述給予的複雜AI任務為例:請生成一個女孩正在讀書的圖像,她的姿勢與圖像 example.jpg 中的男孩相同。 然後請用您的聲音描述新圖像。


HuggingGPT 在第一步 Stage#1

: 任務規劃中,設計了6 個任務,分別是:pose-control, pose-to-image, image-class, object-det, image-to-text, text-to-speech,並安排了它們的依賴關係。


第二步 Stage#2:

ChatGPT 根據模型描述從候選在 Hugging Face 上的專家模型中選擇模型,模型可能是在線的,或是需要下載的。


第三步 Stage#3:

代碼去真正執行對應的huggingface 上的專家模型。


第四步 Stage#4:

將所有模型的預測整合起來,並為用戶生成最後的答案。


由上圖給予的任務可以看到,HuggingGPT 確實就是去找了相關的AI模型,生成了一個同樣姿態的小女孩讀書的圖像。目前 HuggingGPT 已經在 Hugging Face 上成功集成了數百個模型,覆蓋了24個任務,包含:文本分類、目標檢測、語義分割、圖像生成、問答、文本轉語音和文本轉視頻。


HuggingGPT任務模型/Hugging Face


HuggingGPT 任務範例

任務一:給定一組圖片A、B和C,詢問HuggingGPT這些圖片中有幾隻斑馬?


HuggingGPT完美回答,共有四隻斑馬


任務二:生一段太空人在太空中行走的視頻,並加上配音。

HuggingGP將各種模態組合的複雜任務,處理得很好。


HuggingGPT 還有進步的空間

目前,HiggingGPT也遇到一些需要改進的地方,第一個就是「效率」,HuggingGPT對於每一輪使用者的請求,在任務四個階段中至少都需要與大型語言模型進行一次交互,這樣的交互大大增加了反應時間,導致使用者的體驗下降

再來就是文本長度限制,受限於 LLM 能接受的最大標記數量, HuggingGPT 也面臨著最大上下文長度的限制。HuggingGPT使用了對話窗口,以減輕這一限制的影響。

最後是系統的穩定性,大型語言模型在推理過程中偶爾可能會出現無法遵循指示,輸出格式可能不符合預期,導致工作的異常。加上 Hugging Face 上的AI模型可能受到網絡延遲或服務狀態的影響,導致任務執行階段出現錯誤。


總結

本文介紹了 HuggingGPT,一種使用 ChatGPT 和 Hugging Face 的 AI 模型來解決複雜 AI 任務的新方法。HuggingGPT 可以自動分析需要哪些 AI 模型,並協助執行和完成任務。HuggingGPT 的核心概念是將語言作為 LLMs 與其他人工智能模型之間的通用接口。HuggingGPT 還有進步的空間,例如效率、文本長度限制和系統穩定性等問題。然而,HuggingGPT 的出現將為 AI 技術的發展帶來重大影響。

最後大家對於Hugging Face 的LOGO,打破以往人工智慧給人「冷酷」的感覺,人工智慧領域大量的數字、模型及演算法都給人一種距離感,而Hugging Face笑臉Emoji加上攤開的雙手,Logo可以說是過分可愛,大大拉近我們與人工智慧的距離。