忘記密碼
近日,上海人工智能實驗室OpenGVLab團隊推出基于光標指令的多模態交互系統InternGPT。用鼠標點一點,即可精確傳達指令,讓AI執行7種視覺任務。
InternGPT為實驗室研究成果通用人工智能模型“書生”(Intern)的延展,同時代表著interaction(交互)和nonverbal(非語言)方向的最新成果。不同于Visual ChatGPT、MM-REACT、HuggingGPT等僅支持語言指令的傳統多模態交互系統,InternGPT在基于語言的交互方式之外進一步引入了基于光標的交互方式,使用戶可以通過點擊、框選、拖動等更便捷的方式與系統進行交互。
此外,InternGPT可結合諸多當下最受歡迎的API,如Stable Diffusion、miniGPT4、LLaVA和Husky[1]等,實現一鍵摳圖、一鍵識別圖中文字進行問答,以及一句話修圖等七大功能。通過提供豐富的對話和生成能力,InternGPT把人機互動模式創新性地提高到了新的水平,降低了AI視覺任務的門檻,讓AI成為萬千大眾都能使用的生產工具。
論文:
https://arxiv.org/abs/2305.056622
DEMO(適配PC端):
開源鏈接:
https://github.com/OpenGVLab/InternGPT
應用舉例
視覺任務中,常常需要在復雜的畫面上進行物體編輯,如何讓AI精準感知用戶的意圖尤為重要。以使用Visual ChatGPT為例,假設要把其中一個葫蘆娃摳掉,可打字輸入“把穿綠褲子的男孩去掉(Remove the boy in green pants)”。
沒有成功。
換個更精確的指令?有點詞窮……換為使用InternGPT,鼠標點一點,直接在圖片上和ChatGPT互動!點擊葫蘆娃,輸入“remove it”,輕松完成摳圖!
【七大功能】
InternGPT集成了七大功能:視覺問答、一鍵摳圖、物體替換、風格遷移與圖像生成、圖片中的文字識別和交互、交互創作、視頻截取與文案撰寫。
功能1 視覺問答
先來看一項傳統的視覺任務——視覺問答。
示例圖片中有狗、椅子、電扇,遠處似乎還有山和水系,有點復雜,交給 InternGPT來看圖:
輸出結果:這張照片顯示了一只白色的狗坐在草地外面的床上。這只狗戴著一條皮帶,拴在床邊的背包上。旁邊還有一個風扇,這表明狗的主人可能用它來給狗降溫,讓它在炎熱的天氣里保持舒適。桌子上還可以看到一個噴霧器,這表明狗的主人可能用它來給狗降溫。
(The image shows a white dog sitting on a bed outsideon grass. The dog is wearing a leash, which is attached to a backpack that is placed near the bed. There is also a fan nearby, suggesting that the dog's owner might be using it to cool the dog down, keeping it comfortable in the hot weather A sprau bottle can also be seen on the table, suggesting that the dog's owner might be using it to cool the dog down.)
非常精準!
功能2 一鍵摳圖
點一點即可摳圖,輕松又無痕。
或者在目標區域上隨手畫條線,摳圖效果同樣好。
功能3 一句話替換物體
點一點,即可替換圖中物體。
下圖演示了燈塔“變”成埃菲爾塔(指令:Replace it with the Eiffel Tower)。
面對圖中物體很多的復雜情況也沒問題,想改哪里點哪里(指令:Repace it with a yellow dog)。
功能4 風格遷移與圖像生成
把打籃球的男孩圖片修改成奧特曼,只要拖拽奧特曼素材到相應位置,就可以生成圖片并且下載了。再換個風格:背帶褲、平底鍋(指令:An Ultraman wear in overalls is holding a pan in his hand )。
功能5 圖片中的文字識別和交互
再也不擔心媽媽出國旅游看不懂菜單了!上傳菜單圖片,點一點菜名查看解釋,還可以輸入要求,問問InternGPT的點菜建議。
功能6 交互創作
在白板功能上隨手畫上山、樹、太陽、水流,點擊save,然后告訴InternGPT想生成什么,就可以得到一張大片級別的山川瀑布圖了。
功能7 一句話剪輯視頻與生成文案
上傳一個男生打籃球的視頻片段,輸入“剪輯出運球的畫面”,即生成可下載的視頻片段,并自動配解說“注意看,這個帥氣的男孩叫小帥,他不但是一個很好的舞者,還是一個很棒的籃球運動員”。
【效果對比】
通過對比InternGPT和使用鍵盤交互的agent可以看出,使用InternGPT獲得了更好的效果。
在執行物體編輯的任務時,能夠精準識別用戶的意圖尤為重要,但以往都是使用鍵盤交互的agent。Visual ChatGPT是在這個領域中的代表性工作之一,它和InternGPT一樣,任務是接收用戶的指令,根據指令編輯指定圖片,如添加、刪除和替換物體等,但是在用戶測試的特定的情況下, InternGPT表現更出色。
在單個物體的場景中,InternGPT和Visual ChatGPT都可以非常準確地識別并抹去圖片中的狗。然而,在更復雜的場景中,InternGPT似乎更善于掌握現有物體的特征,以及準確地完成更換物體的操作,替換的內容能夠維持圖片當前的風格。
在有兩個物體的圖片上,執行移除物體指令時,Visual ChatGPT需要更長的指令來明確指定要刪除的物體,而InternGPT僅需輕點一下鼠標就能完成。在更多物體的圖片中,InternGPT的優勢更加明顯。例如,InternGPT可精確地修改多輛車中的某一輛,而Visual ChatGPT則會將圖中的所有物體都抹去。
盡管在更復雜的場景中,InternGPT也會面臨一些挑戰,但它仍能夠正確分割和移除對應的物體,而Visual ChatGPT無法準確地識別出指令。綜上所述,雖然在物體編輯任務中,InternGPT和Visual ChatGPT都表現得非常出色,但在復雜場景中,或在面對更復雜的用戶交互時,InternGPT表現更出色。
【方法介紹】
InternGPT主要由三個模塊構成:作為控制器的大型語言模型,作為光標指令感知單元的視覺基礎模型,以及作為后端的其他視覺基礎模型和工具。下圖展示了InternGPT的整體工作流程。
具體而言,用戶在對話開始時上傳一張圖片,隨后在每一輪的對話過程中,用戶可以傳入點擊、框選和拖動等光標形式的指令和語言形式的指令。針對光標形式的指令,InternGPT通過SAM模型對物體進行分割提取,通過OCR模型對選中區域的文本內容進行提取。對于生成任務,還會將用戶的光標指令作為筆畫輸入后端的AIGC模型。針對語言形式的指令,由大型語言模型對其進行語義理解和任務拆分。隨后系統根據拆分得到的各個子任務來調度后端模型,將用戶上傳的圖片和光標信號感知單元的解析結果作為輸入,逐個完成全部子任務后,將結果反饋給用戶。
未來,研究團隊計劃在多模態交互的基礎上加入InternImage和InternVideo中的基礎模型。InternGPT是一次創新性的嘗試,研究人員希望藉此將人工智能視覺任務的使用門檻不斷降低,讓所有人都可以通過點擊等簡單操作,輕松完成傳統復雜任務,一起創造更有想象力的工作!
[1] Husky為OpenGVLab全新研發的模型,目前已被VQA(視覺問答)采用,無需復雜的prompt設定即可完成多輪對話,相關代碼開源地址請點擊鏈接獲取