ChatGPT 能做 GIF 了,六格圖也行

ChatGPT 能做 GIF 了,六格圖也行

OpenAI 11 月 4 日推出 ChatGPT Images 2.6,最受關注的新功能是 GIF:給一句提示詞或一張照片,就能生成循環動圖,之後還能調速度、改單格畫面。官方示範用的提示詞簡單到有點隨意:「can you make a gif of a cat dancing?」

我們用本機的 Codex 照著做了一組動圖,第一步就沒照預期走。

直接要 GIF,回來一張 PNG

OpenAI 表示 Images 2.6 已在 ChatGPT 和 Codex 全方案開放。在 Codex 裡直接要一隻紙船的 GIF,約 21 秒後拿到的是一張 1536×1024 的單格 PNG。

Codex 內建生圖工具的輸入參數只有四個:提示詞、參考圖路徑、帶入最近幾張圖片、是否透明背景。模型名稱、輸出格式、影格數都不在其中,回覆也不會顯示模型版本。

所以這組圖的來歷要先交代清楚:它們都是在 Codex 裡明確要求依 Images 2.6 的能力生成的,但我們無法確認確實出自 2.6。這次沒拿到原生 GIF,也不能推論 2.6 不支援,ChatGPT 網頁版和 API 走的是另外的入口。另有報導提到 GIF 仍在陸續推送,帳號暫時看不到也屬正常。

換條路:先畫一張六格圖

OpenAI 的官方範例其實給了思路:把動作畫成一張 sprite sheet,再串成動圖。這個辦法不挑入口,能生成圖片的地方都能用。提示詞結構如下:

一張 3 欄 × 2 列的 sprite sheet,共 6 格,每格等大,
閱讀順序由左至右、由上至下。
內容:一艘白色摺紙船在淺藍色水面上輕輕起伏,水波隨之變化。
所有格的鏡頭、船的形狀、背景保持不變。
第 6 格要能自然接回第 1 格。
不加文字、數字和 logo。

拿到圖之後切開,幾行 Python 就能合成:

from PIL import Image

sheet = Image.open("boat-sheet.png").convert("RGB")
w, h = sheet.width // 3, sheet.height // 2
frames = [sheet.crop((x * w, y * h, (x + 1) * w, (y + 1) * h))
          for y in range(2) for x in range(3)]
frames[0].save("boat.gif", save_all=True, append_images=frames[1:],
               duration=140, loop=0)

這艘紙船就是這樣做出來的,6 格,每格 140 毫秒,512×512,檔案不到 500KB。

示意图:折纸船在浅蓝水面起伏,用AI绘画生成的六格图合成循环动图

做完四個動圖的觀察

角色形象比預期穩定。這隻原創小狐狸的圍巾、肚皮、耳朵,六格都對得上,只有黏土質感和輪廓有一點抖動。

示意图:戴蓝围巾的黏土小狐狸挥手,六帧形象基本一致的AI绘画动图

背景越細碎,越容易露餡。紙船那張的水面紋理每格都略有不同,放慢速度就看得出來。想要乾淨的循環,背景盡量選純色或大色塊。

軌跡類動作最難。繞圈飛的紙飛機第一版路線歪歪扭扭,重畫一次才堪用,最後一版的折線仍有輕微漂移。揮手、起伏、點頭這種原地小動作,成功率明顯更高。

六格夠用,但別貪心。一個 GIF 只表達一件事就好。穩妥的做法是先做一個,同一角色多產出幾版,檢查臉、顏色和 logo 有沒有變形,再決定要不要批次製作。

API 的參數更明確

開發者這邊是正式參數:output_format 設為 gif,搭配 frame_count 和 frame_duration_ms,預設 9 格、每格 200 毫秒。影格數上限的文件說法不一,指南寫 2 到 64,API 參考寫 2 到 16,保險起見先以 16 以內使用。

動起來之前,先定靜態圖

重工多半出在動之前。角色的臉型、配色、圍巾的綁法如果還沒定,六格圖裡任何一格跑掉,整張都得重來。

所以比較省事的順序是先產出一張滿意的靜態定裝圖,確定之後再讓它動。這一步不一定要在 ChatGPT 裡做。PixPix 上的 GPT Image 2.6 頁面打開就是這類工作流程,可以從提示詞或參考圖開始,一次改一處,同時交代哪些細節要保留,預設選的是偏精細的 Sunburst。上面那段 sprite sheet 提示詞本身就是一張靜態圖的需求,理論上也能放過去試,切格合成仍然在本機做。這條路我們還沒實測,PixPix 的頁面也沒有寫 GIF 功能,只能算一個思路。

發布前還有幾件事要留意:部分平台對 GIF 上傳支援不佳,可能得轉成影片;圖裡的文字和 logo 要逐格檢查;拿別人的照片做動圖,要先取得對方同意。

參考來源:OpenAI 開發者社群公告、CocoLoop、OpenAI 圖像生成文件、The Decoder、AI×SNS Lab;耗時與檔案參數為本站實測,模型版本無法確認。