國內多所高校共建開源社區LAMM,加入多模態語言模型大家庭的時候到了
ChatGPT問世以來,大語言模型(LLM)實現了跳躍式發展,基于自然語言進行人機交互的AI范式得到廣泛運用。然而,人類與世界的交互中不僅有文本,其他諸如圖片、深度等模態也同樣重要。然而,目前的多模態大語言模型(MLLM)研究大多數閉源,對高校和大多數研究機構的同學們并不友好。而且,大語言模型受限于訓練知識,往往缺乏時事認知、復雜推理能力,這就如同只能快速問答,沒有“深度思考”能力。AI Agent(人工智能代理)則是解決這一問題的關鍵,它賦予LLM深度思考、復雜決策的能力,使LLM向自主性、反應性、積極性和社交能力特征的智能實體發展。我們相信,AI Agent領域將會誕生更多改變生活工作方式的成果,是大語言模型及多模態大模型的重要進化方向。
來自北航、復旦大學、悉尼大學、香港中文大學(深圳)等高校與上海人工智能實驗室的學者共同推出多模態語言模型最早的開源社區之一 ——LAMM(Language-Assisted Multi-modal Model)。我們旨在將 LAMM 建設成一個不斷發展的社區生態,支持 MLLM 訓練和評測、MLLM 驅動的 Agent 等方向的研究。作為多模態大語言模型領域最早的開源項目之一,LAMM 的目標是建立一個開放的研究社區生態,讓每個研究和開發人員都可以基于此開展研究,共同建設開源社區。
- 項目主頁:https://openlamm.github.io
- 代碼地址:https://www.github.com/OpenGVLab/LAMM
在這里,你可以 :
- 以最小的計算資源成本訓練和評估 MLLM,僅需 3090 或 V100,輕松開始 MLLM 的訓練和評測。
- 構建基于 MLLM 的具身智能 Agent,能夠使用機器人或游戲模擬器定義任務并生成數據。
- 在幾乎任何專業領域擴展 MLLM 應用。
開源框架
LAMM 代碼庫實現了統一的數據集格式、組件式模型設計、一鍵式分布式訓練,方便用戶啟動和實現自己專屬的多模態語言模型。
- 使用標準數據集格式兼容不同指令微調數據集。LAMM 定義了標準化多模態指令微調數據格式,可以多模態指令微調常用的 LLaVA、LAMM、ShareGPT4V 等數據集可以直接無縫適配,一鍵啟動。
- 組件式搭建模型流程,方便地更新和修改模型架構。LAMM 中模型以視覺編碼器(Vision Encoder)、特征映射器(Feature Projector)、語言模型(LLM)為主要組件。目前 LAMM 已經支持 Image、Point Cloud 等模態編碼器和 LLaMA/LLaMA2 等預訓練語言模型,用戶可以自由選擇適合需求的模塊搭建 pipeline,實現自己專屬的 MLLM。
- 以最小計算資源訓練和評測 MLLM。LAMM Repo 集成了 Deepspeed、LightLLM、flash attention 等加速框架,將訓練成本大幅優化。目前已經支持在 4 張 RTX3090 或更新設備上微調 7B 的語言模型。同時 LAMM 也在不斷跟進新的大語言模型和優化框架,以推動多模態領域的發展。
- 基于 MLLM 構建具身智能 AI Agent。使用機器人或模擬器定義目標任務并生成相應指令數據后,LAMM 支持的 MLLM 可以作為強大的 AI Agent 進行決策和分析。
更多詳情請參考項目主頁。
多模態大語言模型訓練與評測
近期大量工作展現了多模態大模型 (MLLM) 在視覺內容理解和交互上的能力,并且體現出了解決更為復雜的下游任務應用的能力。除了常見的圖片輸入,LAMM 目前還支持點云等視覺模態輸入,用戶也可以根據自己的需求加入新的編碼器。同時,LAMM 支持 PEFT 包進行高效微調,也引入了 flash attention、xformer 等工具進一步優化模型計算成本,使得用戶能夠用盡可能低的成本訓練 MLLM。面對復雜的多任務學習,LAMM 也支持 MoE 等策略統一多組微調參數,進一步提高模型多任務能力,實現更全能的 MLLM。
然而,由于缺乏一個標準化的全面評估框架,這些模型的能力和局限性尚未被全面探索,我們仍然無法確認這些模型的能力究竟如何,他們究竟能做什么事情。現有的基準測試工作主要集中于為多模態大模型構建多模態評估數據集,或僅評估了一部分的視覺能力維度,或嘗試建立了一個評測框架但缺乏可擴展性和全面性,對各個模型的全面評估和不同模型間進行公平可靠的對比仍然具有挑戰性。LAMM 實現了一種具有高度可擴展性和靈活性的評測框架,旨在為多模態大模型提供一種可靠的、全面的評估。
詳情可參考 https://openlamm.github.io/paper_list/ChEF
一鍵式組合式多模態語言模型評測框架
基于 LAMM 框架的多模態模型能力部分展示如下:
基于 2D 圖像內容的問答:
基于 3D 點云的視覺問答:
多模態大語言模型驅動的具身 Agent
近期大量工作借助大語言模型 (LLM) 的強大推理規劃能力來構建 Agent,例如 Minecraft 中的 Voyager 和 GITM 都借助 LLM 和文本記憶來規劃智能體的行動,但是這些工作都假定智能體可以在規劃決策的時候獲取所有正確的環境感知信息,直接跳過感知階段,忽視了實時的第一人稱視角圖片對具身智能體規劃自身行動的影響,這在現實生活中也是不可能存在的。
為了讓具身智能體在開放世界復雜環境中更好地感知環境,我們提出了以MLLM驅動的具身智能體MP5,其特點在于具備視覺感知和主動感知能力。視覺感知模塊(模型主要架構為LAMM)允許MP5解決以前從未見過的任務,主動感知可以主動獲取環境信息,以執行合適動作。最終 MP5 具有開放感知能力,并能根據不同的目的提供量身定制的感知結果,可以完成長時序及復雜環境信息任務。
下面是 MP5 在 Minecraft 這一開放世界中完成「在晴天且光線充足的情況下,找到一頭在平原且靠近水附近有草的豬」這一需要復雜環境信息的任務的演示過程。
總結
基于 MLLM 的強大能力和廣闊應用前景,多模態學習來到了一個全新的階段。LAMM 旨在建設一個助力多模態大模型研究的開源社區,并向社區開源了包括數據準備、模型訓練、性能評測所有相關數據。
作為最早一批投入多模態語言模型研究的團隊,我們希望不斷發展 LAMM 工具箱,為 LAMM 開源生態提供輕量易用的多模態研究框架,和開源力量合作,助力更多有意義的研究。
以上內容均會在 LAMM 主頁持續開源,請大家關注我們的主頁和項目,也歡迎為 LAMM 代碼庫多多提交反饋和 PR。