首個VR端3D角色扮演AI發布!南洋理工公開SOLAMI技術報告,端到端VLA模型驅動,唱跳都能陪你玩
世界上第一個VR端 3D版的角色扮演AI就在剛剛誕生了!
AI角色扮演類游戲(如C.AI、Talkie)從發布以來,一直都是人們最喜歡的AI產品之一。雖然廣受歡迎,但不少用戶提出,期待和這些角色在VR中有更進一步的交流。
近日,來自南洋理工大學的研究團隊在VR中實現了第一個3D版角色扮演AI系統SOLAMI,并公開其詳細的技術報告。沒錯,這意味著和各種角色在VR中沉浸式聊天已經是可實現的!
項目主頁:https://solami-ai.github.io/
技術報告:https://arxiv.org/abs/2412.00174
完整介紹視頻:https://www.bilibili.com/video/BV1D6zpYHEyc/
從技術報告中我們可以看到,SOLAMI支持多種角色,有超級英雄蝙蝠俠,小可愛機器人,二次元老婆,香蕉貓,世界名人特朗普,……
SOLAMI驅動的AI角色能識別用戶的肢體語言,從而去關心和理解用戶.
想讓角色跳個舞?只要說句話,角色就能聽懂做到.
還可以和角色玩游戲,比如跟著用戶節奏動起來,或者剪刀石頭布.
那么SOLAMI提出的動機是什么?模型是怎么工作的?使用了什么樣的數據訓練的?
研究背景
大家有沒有想過和一個虛擬角色進行面對面的深度對話?不僅僅是簡單的語言交流,而是能像現實社交一樣,觀察對方的面部表情、自然的身體語言,甚至是細微的情緒變化。
心理學研究表明,在社交互動中,沉浸程度越高,用戶體驗就越好。但目前的AI角色(如Character.ai等) 仍然局限于文本或者語音的交互。這促使我們思考:如何構建具有更豐富模態的3D自主角色呢?
要實現這個目標,主要面臨兩個挑戰:
1. 3D角色需要準確觀察和理解用戶行為信息,并基于上下文和角色設定通過語音、肢體動作和表情做出合適的回應。這已經超越了之前的單一任務(動作理解,動作生成,語音驅動肢體等)的范疇。
2. 數據稀缺的問題。人和3D角色進行多模態交互的數據極其稀缺,收集這類數據需要復雜的設備和巨大成本。
傳統的LLM-Agent框架雖然在高層次任務(如規劃和記憶)表現不錯,但在理解用戶行為和提供及時的肢體語言反饋上存在局限。這是因為用文本作為子模塊之間聯系的媒介會丟失很多細微的信息。
有趣的是,機器人領域的研究給了我們啟發:對于低層次的操作任務,基于LLM構建的端到端視覺-語言-行為 (Vision-Language-Action,VLA)模型表現更好。數字角色本質上就是虛擬人形態的機器人,那么構建一個偏向于社交互動的VLA模型會不會是一個有潛力的方向?
Social VLA模型
SOLAMI推理圖
如圖所示,SOLAMI中所有角色的驅動都是由一個統一的端到端VLA多模態模型驅動。給定角色的設定,模型以用戶的語音和動作作為輸入,將這兩種模態通過Motion Tokenizer和Speech Tokenizer分別編碼為LLM新的詞表中的token,LLM基座會自回歸輸出角色的語音和動作token,再通過解碼器分別解碼為角色的3D動作和語音,來驅動角色做出反應。
與GPT-4o相比,這個模型多了個用戶動作的模態,用于理解用戶的肢體語言,生成角色的動作。
在這里,用戶的動作以SMPL-X的3D旋轉進行表示,動作被拆為三個部分:相對于3D角色的相對位置,肢體動作,和手部動作。分別經過3個VQVAE進行編碼。用戶的語音使用RVQ-VAE結構進行編碼,使用的SoundStorm進行解碼,在解碼過程中,只要輸入小段角色的語音作為prompt,就可以實現聲音克隆。
SOLAMI訓練過程
模型的訓練主要分為兩個階段:多任務預訓練和指令微調訓練。
多任務預訓練階段主要使用動作-文本、語音-文本相關的數據集進行訓練,訓練任務包括 text-to-speech, automatic speech recognition,speech-to-speech,motion understanding,motion generation,interactive motion generation六個任務。目的在于讓SOLAMI學習動作、語音和文本之間的關聯。
指令微調階段主要訓練模型進行多輪多模態對話的能力。使用合成的數據集,模型被要求學習基于角色設定和用戶輸入該如何做出語音和動作的反饋。
數據收集
用于訓練模型的數據是相當稀缺的。畢竟,很少人能和蝙蝠俠面對面說過話。因此,研究人員考慮使用現有不同模態的數據進行合成。
首先,研究人員基于公開的動作-文本數據集構建了一個大規模的帶有語義標注的動作庫,包含4萬多個人體動作,然后使用GPT-4o生成角色和用戶對話的純文本的臺詞劇本。
根據生成的劇本動作,從動作庫檢索最合適的已有動作,根據檢索到的動作修繕好對應的臺詞。這樣生成的文字劇本能和合成數據中的動作較好吻合。最后,通過聲音克隆合成角色特有聲音。這樣,一個低成本可用的合成數據集得以實現。
SOLAMI合成數據管線
VR工程實現
SOLAMI VR工程框架
研究人員基于Oculus Quest 3開發了一個完整的VR交互系統。
前端支持用戶與3D虛擬角色的沉浸式交互,后端由2塊H800 GPU提供計算支持,可以支持多種模型和方法。
在交互時,VR頭顯會實時捕捉用戶的語音和全身動作,發送給后端。后端運行SOLAMI模型,生成角色的語音、肢體動作和面部表情響應,發送給前端來驅動角色。
實驗結果
在本工作中,研究人員希望探討兩個問題:與純語音相比,3D角色與動作是否會給AI角色扮演帶來體驗提升?與LLM-Agent結構相比,端到端的VLA結構是否在交互質量和延遲上有體驗提升?
為此,研究人員選擇了兩種對比方法:LLM+Speech,DLP(MoitonGPT)。前者是純語音的交互,后者是LLM-Agent結構驅動的數字角色。為了保證公平,這些方法的基座模型都是llama2-7B,并使用vLLM部署進行加速。
定量實驗結果
定量實驗結果表明,SOLAMI在動作質量和語音質量上表現都優于對比方法,并且有較低的事件延遲。消融實驗也表明,多任務的預訓練對模型最終效果有重要提升。
實驗定性分析與VR使用流程
除了定量試驗外,研究人員還做了用戶實驗,通過讓用戶在VR頭顯中跟各種角色互動,并且根據體驗進行打分。可以發現SOLAMI體驗明顯好于純語音方法和LLM-Agent結構方法。有趣的是,雖然純語音方法在對話內容上比LLM-Agent結構方法好,但是總體體驗上還是弱于后者,這印證了角色和肢體語言在AI角色扮演中對于體驗的重要性。
總結
研究人員在這篇工作中,提出了一個Social VLA的端到端建模3D數字角色的技術框架,一種從現有不完備模態的數據合成多模態社交互動數據的管線,和一個支持用戶和角色進行沉浸式互動的VR交互系統。
當然,作為一個新的方向,研究者們指出了一些值得探索的方向,比如輸入輸出模態的設定、數據搜集方式、跨具身問題、長短時記憶問題、技能學習方法等。感興趣的朋友可以參考技術報告。