開源全能圖像模型媲美GPT-4o!理解生成編輯同時搞定,解決擴(kuò)散模型誤差累計問題
OpenAI GPT-4o發(fā)布強(qiáng)大圖片生成能力后,業(yè)界對大模型生圖能力的探索向全模態(tài)方向傾斜,訓(xùn)練全模態(tài)模型成研發(fā)重點。
開源的MLLMs和擴(kuò)散模型已經(jīng)過大規(guī)模預(yù)訓(xùn)練,其從零開始訓(xùn)練統(tǒng)一任務(wù),不如取長補(bǔ)短,將MLLMs的語言建模能力,與擴(kuò)散模型的像素級圖像建模能力,進(jìn)行有機(jī)的結(jié)合。
基于這個思路,ModelScope團(tuán)隊提出可同時完成圖像理解、生成和編輯的統(tǒng)一模型Nexus-Gen,在圖像質(zhì)量和編輯能力上達(dá)GPT-4o同等水平,并將成果全方位開源,望引發(fā)開發(fā)者討論,促進(jìn)All-to-All模型領(lǐng)域發(fā)展。

模型先進(jìn)行圖像生成,然后進(jìn)行圖像理解的可視化案例:

Nexus-Gen技術(shù)細(xì)節(jié)
總體框架
Nexus-Gen采用了與GPT-4o類似的 token → [transformer] → [diffusion] → pixels 技術(shù)路線,融合了SOTA MLLMs的強(qiáng)大文本預(yù)測能力和Diffusion模型的強(qiáng)大圖像渲染能力,其總體架構(gòu)如圖所示。

作為一個All-to-All模型,Nexus-Gen的輸入和輸出都支持圖像和文本模態(tài),自回歸Transformer輸出的文本Token進(jìn)行分類后解碼成對應(yīng)的輸出文本。而輸出的視覺Token的embeddings則會作為條件輸入給Vision Decoder中解碼為輸出圖像。
之前的All-to-All模型大多直接使用自回歸Transformer直接對圖像的像素空間進(jìn)行建模,然后用VAE等模型解碼為圖像,導(dǎo)致圖像質(zhì)量較差。
為了保證圖像質(zhì)量,Nexus-Gen選擇在高維特征空間對圖像進(jìn)行建模,并選擇SOTA的擴(kuò)散模型作為視覺解碼器。
相比于處理單一任務(wù)的模型,All-to-All模型的潛力在于圖像理解、生成、編輯等任務(wù)可以相互促進(jìn)、互相組合。
為了完成這一目標(biāo),將模型的輸入和輸出特征空間限定在同一個連續(xù)高維特征空間,統(tǒng)一使用Vision Encoder編碼圖像得到高維特征。對于理解任務(wù),這些特征直接輸入模型中作為先驗。對于生成任務(wù),這些特征則作為真值指導(dǎo)模型的訓(xùn)練。
預(yù)填充自回歸策略
在訓(xùn)練階段,自回歸模型直接使用真值作為輸入序列,然后將輸入序列左移一位后計算損失函數(shù)。在推理階段,則采用Token-by-Token的自回歸:即每預(yù)測一個Token,就將其送回輸入,預(yù)測后續(xù)的Token。
團(tuán)隊發(fā)現(xiàn),將這種自回歸范式,直接運用在連續(xù)特征空間的圖像Embedding預(yù)測上,會帶來比較嚴(yán)重的誤差累計問題。
如下圖所示,從第一個黃色的圖像Token開始,預(yù)測的Embedding就存在誤差。將帶誤差的Embedding送回輸入中,會導(dǎo)致后續(xù)的Embedding預(yù)測誤差不斷增大,最終導(dǎo)致整個圖像Token序列預(yù)測失敗。

誤差累計本質(zhì)上是由訓(xùn)練和推理行為不一致導(dǎo)致的。為了解決這個問題,魔搭團(tuán)隊提出了預(yù)填充自回歸的策略,如下圖所示。在訓(xùn)練時使用可學(xué)習(xí)特殊Token填充對應(yīng)的圖像Embedding位置,這樣就可以讓模型學(xué)習(xí)直接預(yù)測任意位置的圖像Token的能力。
在推理階段,只要預(yù)測到圖像的起始Token BOI,就直接預(yù)填充N個特殊Token到輸入序列中。通過這種方式,能夠保證訓(xùn)練和推理階段行為的一致性,從而消除誤差累計。

任務(wù)構(gòu)建與訓(xùn)練細(xì)節(jié)
在Nexus-Gen工作之前,沒有看到過在統(tǒng)一的理解、生成和編輯任務(wù)上做訓(xùn)練的先例。所以魔搭團(tuán)隊首先從工程上,探索使用類messages格式來定義所有任務(wù)的數(shù)據(jù)格式。如下圖所示。

之后,團(tuán)隊從開源社區(qū)收集了約25M訓(xùn)練數(shù)據(jù)并轉(zhuǎn)化為以上統(tǒng)一的格式,其中,圖像理解數(shù)據(jù)6M,圖像生成數(shù)據(jù)12M,圖像編輯數(shù)據(jù)7M。
部分?jǐn)?shù)據(jù)使用Qwen-VL-max API進(jìn)行了重新標(biāo)注。其中,圖像編輯數(shù)據(jù)包含了團(tuán)隊在ModelScope社區(qū)最新開源的,圖像編輯數(shù)據(jù)集系列ImagePulse。
這一系列數(shù)據(jù)集中,針對GPT-4o不同的圖像編輯能力,包含了添加、去除、改變、風(fēng)格遷移等原子能力而生成的,大約1M高質(zhì)量樣本。
此外后續(xù)團(tuán)隊也會將其他在訓(xùn)練過程中使用到的全部數(shù)據(jù),都進(jìn)行開源。
由于Nexus-Gen將圖像特征統(tǒng)一在Vision Encoder的高維空間中,因此自回歸模型部分和擴(kuò)散模型部分可以分開訓(xùn)練。
自回歸模型使用魔搭開源的SWIFT框架訓(xùn)練,擴(kuò)散模型則使用了魔搭的DiffSynth-Studio框架訓(xùn)練。下表詳細(xì)描述了訓(xùn)練過程的細(xì)節(jié)。

自回歸模型采用了三階段訓(xùn)練策略,前兩個階段逐步將圖像生成和圖像編輯能力嵌入語言模型中,最后一個階段則采用少量高質(zhì)量數(shù)據(jù)來提升模型生圖質(zhì)量。
擴(kuò)散模型的訓(xùn)練目標(biāo)是將輸入條件由原本文本輸入調(diào)整為圖像Embedding輸入,采用單階段訓(xùn)練策略。
Nexus-Gen 功能展示
Nexus同時具備圖像理解、生成和編輯能力,以下是每個能力的可視化案例。
圖像理解

圖像生成

圖像編輯

未來展望
在模型融合訓(xùn)練、圖像Token數(shù)量提升、ScaleUp數(shù)據(jù)集和模型大小等等方面,Nexus-Gen依然存在著大量的優(yōu)化潛力,目前ModelScope團(tuán)隊在這些不同方向,還在進(jìn)行更深入的探索。
Nexus-Gen的誕生,驗證了從SOTA的MLLMs和擴(kuò)散模型出發(fā),來對齊以GPT-4o為代表的閉源SOTA的可能性。其效果與GPT-4o具備許多共同點,比如圖像編輯會導(dǎo)致原圖部分變化、可以文本潤色進(jìn)行多樣化圖像生成等;團(tuán)隊也發(fā)現(xiàn)了許多OpenAI團(tuán)隊沒有揭露的現(xiàn)象,比如圖像編輯能力極大受益于圖像生成,統(tǒng)一模型使多prompt編輯、故事性編輯成為可能等等。
ModelScope社區(qū)會持續(xù)將探索過程的模型權(quán)重、訓(xùn)練數(shù)據(jù)以及工程框架全部開源,歡迎社區(qū)對Nexus-Gen和All-to-All統(tǒng)一模型的技術(shù)未來進(jìn)行廣泛交流。
論文鏈接:https://arxiv.org/pdf/2504.21356
代碼鏈接:https://github.com/modelscope/Nexus-Gen
模型鏈接:https://www.modelscope.cn/models/DiffSynth-Studio/Nexus-Gen
數(shù)據(jù)集(ImagePulse)鏈接:https://www.modelscope.cn/collections/ImagePulse----tulvmaidong-7c3b8283a43e40





































