本地端 AI 動畫教學:8GB 顯卡能跑到哪一步,官方文件怎麼寫
用 ComfyUI 加 Wan2.2 在自己電腦上做 AI 動畫,不付雲端 API 費用。這篇照官方文件整理 VRAM 門檻、模型檔案該放哪、四階段流程與批次腳本,並算出顯卡要生成多少秒才回本。
雲端的影片生成是按秒計費的。我在 Seedance 2.5 那篇算過,720p 一秒 0.231 美元,一支 30 秒的片子重跑三次就是 20 美元。量一大,帳單很快失控。
另一條路是在自己的電腦上跑開源模型。硬體買一次,之後生成多少都不再付費。
八月這篇教學寫的就是這條路。這次重寫之前,我把裡面提到的每一個工具的官方文件重新讀了一遍,發現原本的版本有兩個問題。第一,硬體門檻寫得太高,說 24GB 顯示記憶體是「實務門檻」,官方文件並不是這樣寫。第二,它從頭到尾沒有交代哪些步驟是實際跑過的。
所以先把話說清楚。
這篇做了什麼: 我在自己的機器上查了顯示卡的規格,逐一對照了 ComfyUI、Wan2.2、musubi-tuner、ACE-Step、GPT-SoVITS 的官方 README 跟教學頁,寫了一支批次送件的 Python 腳本並確認它語法正確、參數解析正常。
這篇沒做什麼: 我沒有在這台機器上安裝 ComfyUI,也沒有實際生成過任何一段影片。下面的流程是照官方文件整理的路線圖,不是我的操作紀錄。哪些數字出自哪份文件,我會逐一標明。
如果你要的是有人實際跑過、附上生成時間跟成品的教學,這篇不是。它能幫你的是在動手之前判斷:你的硬體走得到哪一步,以及該去讀哪幾份文件。
ComfyUI 是什麼,為什麼用它?
圖:ComfyUI 的 GitHub 專案頁,2026 年 10 月擷取(來源:github.com)
ComfyUI 是一套開源的圖形介面,用「節點」把生成的每個步驟接起來。載入模型是一個節點,輸入提示詞是一個節點,取樣是一個節點,存檔是一個節點。你用線把它們連成一張圖,按下執行,它就照著圖跑。
專案頁上的自我介紹是:最強大、最模組化的擴散模型圖形介面、API 與後端。授權是 GPL-3.0。專案現在掛在 Comfy-Org 這個組織底下,原本的 comfyanonymous/ComfyUI 網址會導過去。
選它的理由有三個,都可以在 README 裡找到依據。
支援的模型最多。 README 列出的影片模型有 Wan 2.1 與 2.2、LTX-Video 2 與 2.3、HunyuanVideo 1.5、CogVideoX、Mochi 等等。音訊模型有 ACE-Step 1.5、Stable Audio 3。也就是說,畫面跟配樂可以在同一套介面裡處理。
工作流可以存成檔案。 整張節點圖可以存成 JSON,也可以從生成出來的 PNG 還原,連亂數種子都會帶回來。這表示別人的流程你可以直接載入,你自己的流程也可以版本控管。
有本機 API。 這是後面批次處理的基礎。
安裝方式 README 列了四種:桌面版(Windows 跟 macOS,官方建議多數人用這個)、Windows 免安裝版、手動安裝、以及 comfy-cli(pip install comfy-cli 之後 comfy install)。
Python 版本的建議跟八月那篇寫的不一樣。README 現在建議 3.13,說支援得很好;如果某些自訂節點的相依套件有問題,退到 3.12。Windows 免安裝版內建的就是 3.13。八月那篇寫「3.10 以上」已經過時。
第零步:你的顯卡有多少 VRAM?
在裝任何東西之前,先做這件事。顯示記憶體(VRAM)決定了你能載入哪些模型。
如果你用的是 NVIDIA 的顯卡,打開終端機輸入:
nvidia-smi
這是我在寫這篇的機器上跑出來的結果(只留表頭,程序清單省略):
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 616.56 KMD Version: 616.56 CUDA UMD Version: 13.4 |
+-----------------------------------------+------------------------+----------------------+
| GPU Name Driver-Model | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
|=========================================+========================+======================|
| 0 NVIDIA GeForce RTX 5060 Ti WDDM | 00000000:01:00.0 On | N/A |
| 0% 43C P8 5W / 180W | 1042MiB / 8151MiB | 0% Default |
+-----------------------------------------+------------------------+----------------------+
要看的是 Memory-Usage 那一格:1042MiB / 8151MiB。
右邊的 8151MiB 是總量,這張卡是 8GB。左邊的 1042MiB 是現在已經被用掉的。我當時沒有在跑任何 AI 的東西,只開著瀏覽器、編輯器跟幾個常駐程式,就已經用掉 1GB。
這個數字是我這次才注意到的。規格表寫 8GB,但如果這張卡同時負責螢幕輸出,實際能給模型用的大概只有 7GB。官方文件寫的門檻都是剛好卡在邊緣的數字,這 1GB 可能就是跑得動跟跑不動的差別。跑之前把瀏覽器關掉,是最便宜的升級。
各個工具需要多少 VRAM?
圖:各工具官方文件記載的 VRAM 需求(本文整理,出自各專案的 GitHub README 與 docs.comfy.org,2026 年 10 月查核)
八月那篇的硬體表只有一列:建議 RTX 3090 或 4090,24GB 是實務門檻。這張表把它拆開,因為不同的事情門檻差很多。
最容易讓人搞混的是 Wan2.2。同一個模型,兩份官方文件寫了兩個數字。
Wan2.2 自己的 README 寫,5B 版本「至少需要 24GB VRAM(例如 RTX 4090)」,而且要開啟卸載選項。14B 版本的範例指令寫的是「至少 80GB」。
ComfyUI 的官方教學寫的是另一回事:
圖:ComfyUI 官方 Wan2.2 教學裡關於 8GB 的說明(來源:docs.comfy.org)
「Wan2.2 5B 版本在 ComfyUI 原生的卸載機制下,8GB VRAM 應該可以順利執行。」
兩個數字都沒錯,差別在怎麼跑。Wan2.2 的 README 講的是用它自己的指令直接跑。ComfyUI 有一套自己的記憶體管理,會把暫時用不到的部分移到系統記憶體,要用的時候再搬回來。這叫卸載(offloading)。代價是慢,好處是小顯卡也跑得動。
所以結論是:8GB 的顯卡可以試 Wan2.2 的 5B 版本,前提是透過 ComfyUI。 5B 版本的輸出規格是 720p、每秒 24 格。Wan2.2 的 README 說,它在單張消費級顯卡上生成一段 5 秒的 720p 影片不到 9 分鐘。這個時間是官方在 24GB 顯卡上的說法,8GB 靠卸載會慢多少,我沒有量過。
14B 版本的品質比較好,但 80GB 不是消費級硬體。ComfyUI 的教學提到社群有量化過的 GGUF 版本可以降低需求,那是另一條要自己研究的路。
訓練是另一個門檻。如果你想讓影片模型記住一個固定的角色,要訓練 LoRA。musubi-tuner 的 README 建議:訓練圖像模型 12GB 以上,訓練影片模型 24GB 以上,系統記憶體 64GB 以上(32GB 加上虛擬記憶體「也許可行」)。
也就是說,8GB 的機器可以生成,不能訓練影片模型的角色。這是這條路上最硬的一道牆。
模型檔案要放哪裡?
圖:Wan2.2 5B 版本在 ComfyUI 中需要的檔案與位置(本文整理,出自 docs.comfy.org 的 Wan2.2 教學)
第一次用 ComfyUI 的人最常卡在這裡:模型下載了,介面裡卻選不到。原因幾乎都是放錯資料夾。
Wan2.2 的 5B 版本要三個檔案,分別放在 ComfyUI 資料夾底下的三個地方:
ComfyUI/
└── models/
├── diffusion_models/
│ └── wan2.2_ti2v_5B_fp16.safetensors
├── vae/
│ └── wan2.2_vae.safetensors
└── text_encoders/
└── umt5_xxl_fp8_e4m3fn_scaled.safetensors
三個檔案的角色不同。文字編碼器把你的提示詞變成一串數字。模型本體根據這串數字,在一個壓縮過的空間裡一步一步把雜訊變成影片。VAE 最後把壓縮的結果還原成你看得到的畫面。
注意 VAE 的版本。教學特別寫了:5B 用 wan2.2_vae.safetensors,14B 用的是 wan_2.1_vae.safetensors。兩個不能混用。
檔案放好之後,照教學的步驟:
- 把 ComfyUI 更新到最新版。
- 打開工作流範本(Workflow Templates),搜尋「Wan2.2 5B」。
- 載入範本。如果有節點顯示遺失,通常是版本太舊。
- 在
Wan22ImageToVideoLatent這個節點調整尺寸跟總格數(length)。
第一次跑,我建議把尺寸跟格數都調小。目的不是要成品,是要確認整條路是通的。
整個流程分成哪幾段?
圖:本地動畫流程的四個階段與對應工具(本文整理,出自各專案 GitHub README,2026 年 10 月查核)
八月那篇把流程分成四個階段:資產建立、動作引導、渲染生成、後製合成。這個分法我覺得還是對的。「輸入一句話就出一支片」做幾秒的素材可以,要做有固定角色、有劇情的東西,一定要拆開。
下面照階段講,重點放在每個工具的官方文件實際寫了什麼。
角色:讓同一張臉出現在每個鏡頭
最容易失敗的環節。同一個角色在不同鏡頭裡長得不一樣,整支片就散了。
做法是訓練一個角色專屬的 LoRA,一種小型的附加權重,讓模型記住特定的長相。
工具要看你訓練的是哪種模型。圖像模型用 kohya-ss 的 sd-scripts。影片模型用同一位作者的 musubi-tuner,README 列出它支援 HunyuanVideo、Wan2.1 與 2.2、FramePack 等架構。
兩件事要知道。musubi-tuner 的 README 開頭就寫,這個專案是「實驗性質、積極開發中」,「不建議用於正式生產」,功能跟介面可能不預告就改。還有前面講過的,影片模型的訓練建議 24GB 以上。
如果你的顯卡不到 24GB,比較務實的替代做法是用 Wan2.2 的圖生影片:先用圖像模型畫好一張角色跟構圖都對的圖,再讓影片模型從這張圖開始動。5B 版本同時支援文字跟圖片當輸入。角色的一致性由那張起始圖來保證,不用訓練影片模型。
動作:不要讓模型自由發揮
八月那篇建議先在 Blender 裡用 3D 人偶把動作跟鏡頭定下來,匯出骨架或深度圖的序列,再用 ControlNet 讓 AI 照著畫。它列了幾個社群節點:AnimateDiff-Evolved、IPAdapter_plus、Advanced-ControlNet、Frame-Interpolation、SUPIR。
這些節點我這次沒有逐一查證現況,也沒有確認它們跟 Wan2.2 的原生工作流合不合。ComfyUI 的自訂節點更新很快,半年前能用的組合現在不一定能用。所以我不照抄那份清單。
我能確認的是 Wan2.2 本身提供的控制方式。官方 README 列的模型裡有一個 Animate-14B,用途是角色動畫與替換。ComfyUI 的教學裡有首尾幀生成(FLF2V):你給第一格跟最後一格,模型補中間。後者是控制動作最簡單的辦法,不需要 3D 軟體。兩者都是 14B 的模型,8GB 的顯卡要靠量化版本。
聲音:配音跟配樂
配音用 GPT-SoVITS。 MIT 授權。README 寫的能力是:5 秒的人聲樣本就能做零樣本的語音合成,1 分鐘的訓練資料可以微調出更像的聲音。支援中文、英文、日文、韓文、粵語。README 沒有寫 VRAM 需求。
用別人的聲音之前,請確認你有權利這樣做。技術上只要 5 秒,法律跟道德上不是。
配樂用 ACE-Step 1.5。 也是 MIT 授權。README 寫它在本機執行需要不到 4GB VRAM,在 RTX 3090 上生成一首完整的歌不到 10 秒,長度從 10 秒到 10 分鐘,歌詞支援 50 多種語言。XL 版本(40 億參數)品質較好,需要 12GB 以上。
這是整條流程裡硬體門檻最低的一段。8GB 的顯卡跑標準版綽綽有餘。ComfyUI 的 README 也把 ACE-Step 1.5 列在支援的音訊模型裡。
剪輯:這一步不是開源的
八月那篇的描述寫「全程使用開源工具」。這不正確。它建議的剪輯軟體 DaVinci Resolve 免費版是專有軟體,免費,但不開源。
這不影響「不付 API 費用」這個目標,只是要講清楚。如果你堅持全部開源,可以另外找開源的剪輯軟體,那不在這篇的範圍。
怎麼讓它晚上自己跑?
本地跑最大的好處是可以排隊。睡前把二十個鏡頭丟進去,早上起來收成果。
ComfyUI 啟動之後會在本機開一個服務,預設位址是 http://127.0.0.1:8188。官方的範例腳本示範了怎麼對它送工作。這裡的 API 是你自己電腦上的服務,不經過任何雲端,不收費。
步驟是:
- 在 ComfyUI 介面裡把工作流調到滿意。
- 用「File → Export (API)」匯出 API 格式的 JSON。這個格式跟一般存檔的格式不同,一定要用這個選項。
- 打開匯出的 JSON,找出提示詞節點跟取樣器節點的編號。JSON 最外層的鍵就是節點編號。
- 準備一份 CSV,每一列是一個鏡頭。
我照官方範例改寫了一支批次腳本:
"""Queue one ComfyUI job per row of a CSV shot list.
Usage: python batch_shots.py workflow_api.json shots.csv --prompt-node 6 --seed-node 3
The workflow must be exported with File -> Export (API) in ComfyUI.
"""
import argparse
import copy
import csv
import json
from urllib import request
SERVER = "http://127.0.0.1:8188/prompt"
def queue_prompt(workflow: dict) -> None:
data = json.dumps({"prompt": workflow}).encode("utf-8")
request.urlopen(request.Request(SERVER, data=data))
def main() -> None:
ap = argparse.ArgumentParser()
ap.add_argument("workflow")
ap.add_argument("shots")
ap.add_argument("--prompt-node", required=True, help="node id of the positive prompt")
ap.add_argument("--seed-node", required=True, help="node id of the sampler")
args = ap.parse_args()
with open(args.workflow, encoding="utf-8") as f:
base = json.load(f)
with open(args.shots, encoding="utf-8", newline="") as f:
for row in csv.DictReader(f): # columns: prompt, seed
wf = copy.deepcopy(base)
wf[args.prompt_node]["inputs"]["text"] = row["prompt"]
wf[args.seed_node]["inputs"]["seed"] = int(row["seed"])
queue_prompt(wf)
print("queued:", row["prompt"][:40])
if __name__ == "__main__":
main()
CSV 長這樣:
prompt,seed
"a girl walks through a rainy street at night, neon signs",101
"close-up of the girl looking up, rain on her face",102
這支腳本只用 Python 內建的函式庫,不用另外裝套件。我在 Python 3.10 上確認過它可以編譯,--help 的參數說明也正常。但我沒有拿它對著一個真的 ComfyUI 服務送過工作,所以第一次用請先放兩列測試。
兩個容易踩到的地方。
節點編號要用引號裡的字串,例如 "6",不是數字 6。腳本裡是從命令列讀進來的,本來就是字串。
inputs 底下的欄位名稱跟你用的節點有關。官方範例的提示詞節點是 CLIPTextEncode,欄位叫 text,取樣器節點的種子欄位叫 seed。Wan2.2 的工作流如果用的是不同的節點,欄位名稱可能不一樣,打開匯出的 JSON 看一眼就知道。
顯卡要生成多少秒才回本?
圖:顯卡價格相對雲端費用的回本秒數(本文試算,未計電費、重跑與時間成本)
八月那篇的標題是「零 API 費用」。這句話是對的,但容易被讀成零成本。硬體要錢,電要錢,你的時間也要錢。
算法很簡單:顯卡的價格除以雲端每秒的價格。
我用 Seedance 2.5 在 BytePlus 上的 720p 價格當基準,每秒 0.231 美元。表裡的顯卡價格是我為了示範設的三個數字,不是任何一張卡的實際售價。
一張 1,000 美元的顯卡,要生成 4,329 秒的成品才打平。72 分鐘。
72 分鐘聽起來不多,但那是「成品」的秒數。雲端跟本地都要重跑,假設三次留一次,兩邊都乘以三,回本的秒數不變。真正讓這個數字失真的是另外三件事:
- 畫質不一樣。 本地 8GB 能跑的 5B 模型,跟雲端的旗艦模型不是同一個等級。拿它們的每秒價格直接比,對本地是高估。
- 速度不一樣。 官方說 5 秒的影片在 24GB 顯卡上不到 9 分鐘。8GB 靠卸載會更久。72 分鐘的成品,機器要跑好幾十個小時。
- 你的時間。 裝環境、找模型、除錯。第一次大概要花掉一個週末。
所以我的判斷是:如果你只是偶爾做幾支短片,用雲端。按秒付費,不用維護任何東西。
本地值得的情況是這三種之一。你要做的量很大,而且持續。你要反覆嘗試,不想每按一次生成就想到錢。或者你的素材不能上傳到別人的伺服器。
我的建議
如果你讀到這裡決定要試,我會這樣排順序。
- 先跑
nvidia-smi。 知道自己有多少 VRAM,再往下看哪些走得通。 - 裝 ComfyUI 桌面版,先跑內建的圖像範本。 確認顯卡驅動、PyTorch、介面都正常。這一步不用下載任何影片模型。
- 再下載 Wan2.2 5B 的三個檔案,跑官方範本。 尺寸調小,格數調少。目標是看到一段會動的東西。
- 通了之後才調畫質、加聲音、寫批次。
八月那篇最後建議「先做 5 秒的試作,再談長片」。這個建議我完全同意,而且現在想講得更極端一點:第一次的目標連 5 秒都不用,1 秒就夠。你要驗證的是整條管線,不是作品。
什麼會讓我修改這篇的內容?兩件事。如果有人在 8GB 的顯卡上實際量出 Wan2.2 5B 的生成時間跟峰值記憶體,那比我引用的任何一份官方文件都有用,我會把它加進來。另外,這些專案更新得很快。ComfyUI 的 README 說它大約每兩週出一個穩定版。這篇裡的檔名、節點名稱、版本建議,半年後很可能有一部分不對。動手之前請以官方文件為準,連結都在圖說跟內文裡。
開放權重是什麼、跟開源差在哪,可以看名詞解釋。
這次改寫更正了什麼
- 原文沒有說明哪些步驟實際執行過。這次在開頭明列:查了顯卡規格、對照了官方文件、寫了並檢查了批次腳本;沒有安裝 ComfyUI,也沒有生成影片。
- 原文寫 24GB VRAM 是「實務門檻」。ComfyUI 官方教學寫 Wan2.2 5B 在其原生卸載下 8GB 應可執行;24GB 與 80GB 是 Wan2.2 README 對直接執行官方指令的說法。這次分開列出。
- 原文建議 Python 3.10 以上。ComfyUI 的 README 現在建議 3.13。
- 原文的描述寫「全程使用開源工具」。DaVinci Resolve 免費版是免費的專有軟體,不是開源。
- 原文列出多個社群自訂節點作為必裝。這次沒有逐一查證它們的現況與相容性,改為只介紹官方文件記載的 Wan2.2 控制方式。
- 原文沒有提到 musubi-tuner 自稱實驗性質、不建議用於正式生產。這次補上。
- 原文說硬體是一次性投資、之後「不會再多花一毛錢」。這次補上回本試算,並說明電費、速度與時間成本。



