大火的世界模型,真的不能拿一張消費級顯示卡跑嗎?
有的,家人們,真的有的。
因為就在剛剛,一個國產的、開源的世界模型,做到了!
來,先來看一下第一人稱射擊效果:
在雪地科幻場景裡,角色一邊移動和轉動視角,一邊開火,過程中還能看到爆炸、火焰、能量護盾等反饋。
重點是這些變化都發生在同一個持續生成的世界裡,場景也會隨著操作繼續往前走。
再來看大熱的《奧德賽》的場景:
這次是第三人稱視角,角色在巨型木馬、城牆和火光之間向前探索。隨著角色不斷移動,近處的人物、地面和遠處建築也在持續展開,整個場景的空間關係基本能一直維持下來。
再換一個完全不同的風格:
三個Demo,三種完全不同的世界。
而跑出這些效果的,就是螞蟻靈波在 7 月開放原始碼的LingBot-World 2.0。
而剛剛,他們又發佈了 LingBot-World 2.0 的輕量版,參數規模只有1.3B。是面向消費級單卡GPU設計、可以在本地實現即時世界生成的那種。
LingBot-World 2.0在今年7月開放原始碼的是14B主模型。這套世界模型已經能做到小時級持續生成、豐富的動作和事件互動,並在相應算力和推理配置下實現720p/60fps的高畫質即時體驗。
彼時,“1.3B”這個數字,就已經悄悄出現在了論文摘要裡。
而且就在上周的IFA柏林消費電子展開幕演講上,這個伏筆又被公開點了一次。
在開幕演講中,AMD高級副總裁Jack Huynh一共點名了 3 個開源模型,除了智譜、千問,就是LingBot-World。他拿LingBot-World 2.0做了Demo。一個Prompt生成世界之後,角色可以在中國小鎮、歐洲鄉村等環境里長時間探索、環顧和行動,場景還會隨著互動繼續向前展開。
Jack Huynh看完之後給了一句評價:
This is the future of Personal AI.
一切的承諾,今天,均已兌現。
但比起又一個開源這個動作來說,我們或許更好奇的是——
能本地即時跑起來的世界模型,到底是怎麼做到的?
不只是變小了那麼簡單
要回答這個問題,得先從世界模型和普通視訊生成的區別說起。
平時我們用AI生成一段視訊,輸入Prompt之後,等幾十秒甚至幾分鐘都很正常。模型把整段視訊生成完,再把結果交到你手裡,事情基本就結束了。
但世界模型顯然不是這麼幹的。人在場景裡往前走一步,模型就得接著往前生成;視角轉向左邊,畫面也得跟著變化……換句話說,世界模型是在生成一個持續演進的世界。
雖然7月的LingBot-World 2.0已經把這件事做到了一個相對不錯的效果,例如做過超過一小時的不間斷生成測試,從水鄉、城市一路跑到雪地、太空等不同場景,整個過程中,模型都能維持比較穩定的場景結構和視覺質量。
但這一套體驗的背後,工程棧也是相當繁重的。
螞蟻靈波在部署層面堆了編譯器等級的注意力Kernel最佳化、動態KV快取調度、非同步串流媒體傳輸,還有混合併行推理策略等……為的是讓高品質的即時世界能先跑起來。
於是在今天之前,絕大多數人接觸世界模型的方式其實只有兩種:看官方放出來的視訊,或者去線上Demo頁面點兩下。
所以1.3B版本想要解決的問題是,能不能在較少的算力情況下,也把它跑起來。
不過從14B到1.3B,螞蟻靈波並非是先做出大模型然後再砍小,而是先把一條訓練路線走通,小模型是這條路線走到最後自然出現的產物。
為此,螞蟻靈波團隊首先訓練了一個叫Causal World的模型。所謂Causal,可以簡單理解成,模型生成當前狀態時,只能依賴過去已經發生的視覺資訊,以及使用者到此刻為止給出的輸入,未來還沒發生的內容不能提前看,即為因果。
但在這個過程中,自回歸模型會把自己剛剛生成出來的結果繼續當成後面的輸入。前面只要稍微偏一點,這個誤差就有可能一路被帶到後面。生成時間拉長之後,紋理會變糊,幾何結構會逐漸變形,整個場景甚至可能慢慢漂掉。
為了讓Causal Pretrain階段的模型在長上下文裡保持住生成質量,LingBot-World 2.0又設計了MoBA,也就是Mixture of Bidirectional and Autoregressive Attention Mask。
它主要解決的是純Teacher Forcing在長上下文裡容易出現的另一個問題。隨著上下文越來越長,模型會越來越依賴前面已經給出的乾淨Context,最後容易出現過擬合,視覺質量也會跟著下降。
MoBA在原有Teacher Forcing Mask裡加入一部分雙向Attention,相當於給訓練過程增加一層正則,讓模型適應更靈活的視訊長度,同時緩解這種過擬合和畫質退化。
這一階段訓練出來的Backbone,先把世界模型的基礎能力撐了起來。
團隊後來還專門拿這個Causal Pretrained Backbone和MAGI、HY-World 1.5做過長時生成對比。從5秒到60秒,LingBot-World 2.0在紋理、幾何結構和場景連貫性上的保持更加穩定。
但高品質的Backbone還有一個很現實的問題:慢。
這個經過因果預訓練的Backbone,同時也承擔Teacher的角色。Teacher可以給出質量更高的生成結果,但每一幀都需要經過很多步去噪,如果直接拿去做即時互動,計算成本還是太高。
所以接下來,LingBot-World 2.0開始做蒸餾。
第一步是一致性蒸餾,也就是Consistency Distillation。它把Teacher原本需要很多步才能走完的去噪軌跡壓縮到少數幾步,讓Student用更少的計算完成生成,同時儘量保留預訓練階段已經學到的動作條件動態能力。
不過Student真正部署出去以後,面對的大量狀態都來自它自己上一輪的生成。前面只要出現偏差,後面還是有可能繼續放大。
於是團隊又在這一步加入了DMD,也就是Distribution Matching Distillation,並且專門讓Student在自己的長時self-rollout軌跡上繼續訓練。
換句話說,模型以後真正會跑進什麼狀態,訓練時就先讓它提前見過。這種訓練方式可以減少長時自回歸過程裡的累計漂移。
到這裡,整條路線才算真正接了起來。
LingBot-World 2.0先用Causal Pretrain打下一個長時生成相對穩定的世界模型底座,再讓Teacher提供高品質的生成過程,隨後通過蒸餾把原本需要多步完成的計算壓縮到少步,最後再讓Student去適應自己真正運行之後會遇到的狀態。
所以從表面看,這次只是又多了一個小尺寸版本。往深一層看,螞蟻靈波實際上把LingBot-World 2.0的研發鏈路也往外開放了一截。
世界模型的門檻也要被打下來了
若是我們把時間往前倒一點,就不難發現LingBot-World這一年的變化幾乎一直圍繞兩個字展開——門檻:
- 今年1月,LingBot-World 1.0第一次開源;
- 到了7月,LingBot-World 2.0來到14B,開始挑戰小時級持續生成、複雜事件互動和720p/60fps即時體驗;
- 今天,1.3B版本又把同一套世界模型往消費級單卡上推了一步。
三次開源,依次回答的其實是三個問題:
能不能做出來,能不能做得久、做得真,以及能不能讓更多人跑起來。
而這次螞蟻靈波把Causal Pretrain和雙向Teacher一起放出來,走的也是同一個邏輯。
小模型負責讓更多人把世界模型跑起來。這兩個上游模型管的是跑起來之後,社區能不能接著往下改,做後訓練、做蒸餾、做壓縮、做垂直場景適配。
因此,如果說世界模型的上半場,比的是能不能生成得更久、更真;那麼下半場要比的,可能是能不能讓普通人手上那張卡也跑得動。
這個規律在AI發展的過程中其實已經重複過好幾回了。真正讓一項技術擴散開的,往往不是最強的那個版本,而是第一個足夠小、足夠便宜、能被拿來試一試的版本。
最後,如果說世界模型一直在嘗試把AI裝進一個可以無限延展的世界裡。
那麼現在,當門檻被打下去之後,這個世界終於開始裝得進普通人的顯示卡了。
官網:
https://technology.robbyant.com/lingbot-world-v2
模型:
https://huggingface.co/collections/robbyant/lingbot-world-v2
程式碼:
https://github.com/robbyant/lingbot-world-v2
論文:
https://arxiv.org/pdf/2607.07534 (量子位)
