跳至主要內容
YIP NEWS
YIP NEWS
生活 美食生活

10月28日 刊出

影片被寫成程式碼的那天,廚房裡的食譜笑了

商湯發布 SenseNova 6.8 Code2Video,把影片需求寫成程式碼,我們把這件事翻譯成廚房裡食譜、火候與一道菜如何被精準重做的滋味故事。

刊出 (台北時間) 閱讀約 4 分鐘

10 月 28 日,商湯發布了 SenseNova 6.8 Code2Video 模型,27B 的體量,權重直接開源在 GitHub 和 Hugging Face 上。它做事的方式很有意思:你描述一段影片,它寫出程式碼,再用程式碼把影片做出來。動態字體、圖形動畫、知識講解,這些畫面裡有明確文字、位置和運動關係的東西,傳統逐像素生成的影片模型很難工程化處理,它選擇換一條路。

聽到「把需求寫成代碼、再照著做出成品」,任何一個在廚房裡待過的人應該都會心一笑。這不就是食譜嗎?

一道菜和一段影片,都始於一份說明

小球從 A 點走到 B 黈,走什麼線,速度多快。這是那段需求描述裡的話。換到廚房,就是蔥花什麼時候下鍋、火開多大、湯滾了之後燜幾分鐘。

好的食譜從來不說「炒到差不多」。它寫的是:熱鍋冷油,薑絲爆香三十秒,魚身兩面各煎兩分鐘,直到邊緣金黃翹起。你照著做,第一次和第五次的成品差距不會太大。這就是可工程化,把手感變成可以被重複執行的指令。逐像素生成的影片像憑感覺顛勺,每次成果都有驚喜,也都有意外;寫程式碼做影片像照食譜開火,每一次翻頁牌翻下來的時間點,都算得準準的。

官方案例裡,最像廚房的是「改」

發布資料裡兩組案例,比成片本身更值得說。

第一個案例是 20 秒的復古機場翻頁提示牌,文字靠翻片切換。接下來的兩次修改很廚房:第一次,保留文字、時間安排和翻頁機制,把場景換成粉色牆面、金色邊框、薄荷綠翻片的酒店大堂。第二次,在這個版本上加上飛機和旅客,飛機走上方,旅客走前景,還得避開牌子上的字。

這就是每次你改一道家常菜的樣子。滷肉滷了十年,某天想換成不那麼鹹的版本,你動的是醬油和糖的比例,八角照放,火候照舊,肉照樣燉到筷子一撥就開。修改一道菜最難的地方從來不是加東西,是加了東西之後,原本好的部分還在不在。飛機飛過、旅客走過,牌子上的字一個都不能被擋住,這種「局部動、整體穩」的要求,廚房裡叫火候,程式裡叫模組。

第二個案例更妙。只餵進一段 Forma 的產品宣傳片 mp4,模型分析它的布局與運動,寫出程式碼重建一份,再把名字換成 KITE、畫布換成淺綠色。發文的人自己也提醒了:這是重建一份新的實現,並沒有拿回原片的工程檔案。就像你喫到一碗讓人念念不忘的牛肉麵,回家憑味覺記憶復刻:湯頭的厚度對了,辣油的香氣對了,但那終究是你鍋裡的一碗新麵,跟老闆竈上那份原版,是兩回事。想模仿某種節奏的人,這個分界線要看清楚。

開源這件事,像把食譜印出來貼在牆上

權重直接開源,擺在 GitHub 和 Hugging Face 上,INT4、INT8 量化版本也計畫後續提供。這讓人想起家裡那本被翻到起毛邊的手寫食譜。祕方鎖在店裡,只有一個竈能做;食譜貼出來,誰家的爐子都能試。這和先前我們聊過的湯在家裡燉就好,不必端去別人家的爐子上是同一個道理:東西回到自己手邊,怎麼改、改幾次,節奏都由自己定。

不過發文者也留了清醒的一句:通用程式碼模型同樣能寫動畫,Code2Video 是否真的更省修正次數、局部修改能否保住其他內容,還得對照程式碼和完整紀錄才能下結論。那些流傳的 GIF 只是官方案例的視覺結果。就像一張漂亮的成品照不等於一份經得起考驗的食譜,第一鍋香,第五鍋還香不香,得真的開火才知道。另外,像是甲烷燃燒那段講解動畫,展示的是表達形式,科學內容本身還是要另外核對,端上桌之前,嚐一口鹹淡永遠是廚師自己的責任。

收在餐桌邊

這件事對不做影片的人也有點用處。它提醒了一個老道理:能把想法說清楚的人,才拿得出好成品。下次進廚房前,試著把一道想做的菜寫成三行具體的指令,什麼料、什麼火、什麼時候起鍋。寫得出來,菜就成功了一半。至於商湯這套東西最後燉得夠不夠味,等量化版本上桌,大家自己開火試吧。