Wan 2.2 是阿里 Wan-Video 團隊釋出的開源影片生成模型系列。
Google Trends 美國區的 “AI video” 上升查詢中出現 wan 2.2,但本地部署最容易踩坑的並不是啟動命令,而是下載了不適合顯示記憶體和工作流的模型變體。
本文先解釋模型家族,再分別給出 ComfyUI 和 Python 路線,所有顯示記憶體數字都應以具體模型卡、解析度和 offload 設定重新驗證。
下載前先識別模型名稱
Wan 2.2 倉庫可能同時列出文字生成影片、圖片生成影片、TI2V、Animate、S2V 等不同任務。 同一任務還可能存在不同參數規模、MoE 或量化版本。 模型檔名相似,不代表可以放進同一個工作流節點。 先在官方 README 記錄四項資訊:
- 任務型別。
- 參數規模與架構。
- 推薦解析度。
- 官方推理入口。
不要先下載幾十 GB 檔案,再根據報錯猜模型用途。
顯示記憶體規劃按峰值而不是模型檔案大小
模型權重只是顯示記憶體的一部分。 推理還需要文字編碼器、VAE、啟用、注意力快取和輸出張量。 解析度、幀數、batch size 與取樣步驟都會改變峰值。 CPU offload 能降低顯示記憶體,但會增加系統記憶體和 PCIe 傳輸。 量化能減少權重佔用,但不一定同比降低所有啟用。 不要用“模型檔案 14 GB,所以 16 GB 顯示卡一定夠”做預算。
三種硬體路線怎麼選
24 GB 以上 NVIDIA 顯示卡適合從官方較完整工作流開始。
12–16 GB 顯示卡需要選擇較小模型、量化、低解析度或 CPU offload。
8 GB 顯示卡更適合短片、低解析度實驗,不適合作為穩定生產基線。
多卡只有在推理框架明確支援時才有效,不能靠設定 CUDA_VISIBLE_DEVICES=0,1 自動合併顯示記憶體。
純 CPU 可以驗證環境與節點,但生成速度通常不可實用。
AMD、Intel 和 Apple Silicon 支援情況以官方倉庫與框架版本為準。
檢查 NVIDIA 驅動和 CUDA 可見性
|
|
記錄驅動版本、顯示卡型號、總顯示記憶體和當前佔用。 Python 環境中再檢查 PyTorch:
|
|
nvidia-smi 正常而 torch.cuda.is_available() 為 false,通常是 PyTorch 安裝了 CPU 版本或環境選錯。
不要反覆重灌顯示卡驅動掩蓋 Python 虛擬環境問題。
為 Wan 2.2 建立獨立 Python 環境
|
|
Linux:
|
|
不要把 ComfyUI、自定義節點和獨立 Diffusers 專案塞進同一個全域性 Python。 依賴衝突時,獨立環境比強制降級整個系統更容易恢復。
克隆官方倉庫並鎖定 commit
|
|
先閱讀當前 README 的安裝命令和模型表。
|
|
教程與倉庫更新不同步時,commit SHA 能說明你實際使用的版本。 不要在第一次成功前追蹤未經驗證的 PR 分支。
安裝 PyTorch 時匹配官方支援組合
先到 PyTorch 官方安裝頁選擇作業系統、包管理器和 CUDA 版本。 示例命令不能脫離當前驅動照抄:
|
|
cu128 只是示例,執行前確認 Wan 2.2 與依賴支援。
安裝後再次執行 CUDA 可見性檢查。
再按倉庫要求安裝依賴:
|
|
模型下載目錄要有足夠空間
權重、文字編碼器、VAE 和快取可能佔用數十 GB。 下載前檢查:
|
|
Windows:
|
|
把 Hugging Face 快取放到大容量磁碟:
|
|
環境變數只對當前終端生效時,開啟新視窗會重新下載到預設位置。
使用 Hugging Face CLI 下載指定倉庫
|
|
只下載官方模型卡列出的倉庫,不使用名稱相似的未知映像。
|
|
將佔位符替換為官方 README 當前給出的模型 ID。 下載後儲存檔案清單和大小:
|
|
ComfyUI 路線先更新核心再裝節點
備份現有 ComfyUI:
|
|
有使用者修改時不要直接 pull。 在新目錄測試更新版本,或先儲存補丁。
|
|
Wan 2.2 原生節點支援情況以 ComfyUI 當前版本和官方工作流為準。
模型檔案必須放進節點實際讀取的目錄
ComfyUI 常見目錄包括:
|
|
不同工作流對目錄和檔案型別要求不同。
不要把所有檔案都放進 checkpoints。
開啟工作流後,節點下拉框沒有模型,先檢視 ComfyUI 啟動日誌中的掃描路徑。
重啟 ComfyUI,再重新整理瀏覽器。
用額外模型路徑避免重複佔用磁碟
可以在 extra_model_paths.yaml 指向統一模型庫。
|
|
Windows 路徑推薦使用正斜槓,減少 YAML 轉義問題。 修改後從啟動日誌確認新路徑被載入。 共享目錄設為只讀時,自定義節點不能在裡面自動下載或改名。
匯入官方工作流後先檢查缺失節點
工作流 JSON 可能依賴特定 ComfyUI 版本或自定義節點。 看到紅色節點時,先記錄節點類名。 只從可信倉庫安裝對應節點,不要讓 Manager 批次安裝所有搜尋結果。 安裝後記錄倉庫 URL 和 commit:
|
|
自定義節點擁有執行本機 Python 的許可權,應像普通軟體一樣審查。
第一段影片用低成本參數
先選擇模型推薦的較低解析度。 幀數控制在官方示例範圍。 batch size 設為 1。 取樣步驟先用示例值,不追求最大。 固定 seed,方便比較配置變化。 提示詞描述一個主體、一個動作和簡單鏡頭。 第一輪目標是驗證資料流,不是生成最終作品。
文字生成影片的提示詞結構
|
|
主體過多會增加一致性難度。 動作、鏡頭和環境分別說明,比堆疊風格詞更容易復現。 如果模型支援負面提示詞,把變形、文字和低質量等約束放在對應輸入,不要混進主提示詞末尾猜語法。
圖片生成影片先處理輸入畫布
輸入圖片應與目標寬高比接近。 主體不要貼邊,給運動留出空間。 透明 PNG 的 alpha 處理取決於工作流,必要時先合成背景。 EXIF 旋轉可能讓實際畫素方向與預覽不同。
|
|
規範化後再放進工作流。
顯示記憶體不足先看峰值發生在哪個階段
文字編碼器階段 OOM、擴散階段 OOM 和 VAE 解碼階段 OOM 的處理不同。 檢視日誌最後一個載入元件。
|
|
降低解析度和幀數對啟用顯示記憶體最有效。 啟用模型或文字編碼器 CPU offload 會增加記憶體佔用。 VAE tiled decode 可以緩解解碼峰值,但可能增加接縫或耗時。 不要一遇到 OOM 就同時改五個設定。
Windows 頁面檔案與系統記憶體
CPU offload 可能消耗大量 RAM。 系統記憶體不足時,Windows 會使用頁面檔案,生成速度可能驟降。 檢查工作管理員中的 Commit 和磁碟活動。 頁面檔案放在空間充足的 SSD,並設定合理上限。 不要在系統盤只剩幾 GB 時啟動大模型下載和 offload。
CUDA out of memory 後要徹底釋放程序
某些失敗工作流會保留顯示記憶體。 停止 ComfyUI 佇列不一定釋放 Python 程序。
|
|
確認 PID 屬於本次 ComfyUI 後再結束程序。 不要殺死其他使用者或訓練任務的 Python。 重新啟動後只改一個參數驗證。
No module named 通常是啟動環境不一致
確認 ComfyUI 使用的 Python:
|
|
便攜版 ComfyUI 可能帶獨立 Python。
把依賴安裝到系統 Python 不會自動進入便攜環境。
使用該環境的 python -m pip install ...,而不是裸 pip。
shape mismatch 多半是模型元件混用
檢查 diffusion model、VAE、text encoder 和工作流是否來自同一模型族。 Wan 2.1 的元件不應根據檔名猜測與 Wan 2.2 完全相容。 量化權重還需要對應 loader 節點。 回到官方工作流與完整精度元件做最小驗證,再逐項替換。 不要透過忽略 state dict 錯誤強行載入影片模型。
黑色影片先排除編碼器問題
確認生成的幀是否正常,再判斷 MP4 編碼。 把幀匯出為 PNG 檢查。 FFmpeg 不存在或編碼器失敗時,預覽可能為空但推理結果仍在。
|
|
若 PNG 同樣全黑,再檢查 VAE、精度和輸入範圍。
生成速度要按有效幀計算
記錄 warm-up 後的第二次執行。 儲存模型、解析度、幀數、步驟、seed、GPU、峰值顯示記憶體和總耗時。
|
|
首輪包含模型載入,不能直接與已快取的第二輪比較。 開啟 offload 後 GPU 利用率降低並不一定是錯誤,可能在等待記憶體傳輸。
用 ffprobe 驗收輸出
|
|
確認解析度、幀率、幀數和時長符合工作流。 瀏覽器能播放不代表編碼參數適合剪輯軟體。 需要後期處理時轉成明確的 H.264 或中間編碼格式。
批次佇列要防止磁碟寫滿
每個影片可能產生預覽、臨時幀和最終 MP4。 為輸出目錄設定空間告警。 任務開始前估算最大產物數量。 失敗任務的臨時目錄設定過期清理,但不要在 Python 程序仍使用時刪除。 檔名包含 job ID、模型和 seed,避免覆蓋。
自定義節點升級採用可回退方式
|
|
升級前儲存工作流 JSON。 新版本失敗時回到記錄的 commit,而不是隨機安裝另一個 fork。 ComfyUI 核心、節點和模型三者不要在同一天全部升級。
遠端開放 ComfyUI 的風險
ComfyUI 和自定義節點通常不是為無認證公網設計。 預設只監聽迴環地址。 遠端訪問使用 VPN 或 SSH 隧道:
|
|
不要把 8188 埠直接對映到公網。 上傳素材可能含人臉、客戶影片和版權內容,遠端儲存需要訪問控制與清理策略。
釋出工作流時帶上依賴清單
只分享 JSON 不足以復現。 同時記錄:
- ComfyUI commit。
- 自定義節點倉庫與 commit。
- 模型倉庫與檔名。
- Python、PyTorch 和 CUDA 版本。
- 解析度、幀數、步驟和 seed。
- 是否使用量化與 offload。
不要分享模型檔案本身來繞過許可證或訪問限制。
更新 Wan 2.2 前保留一次基準
準備固定圖片、提示詞、seed 和工作流。 升級後生成同樣任務,比較峰值顯示記憶體、耗時、輸出尺寸和關鍵幀。 模型隨機性意味著畫面不會像畫素測試一樣完全相同。 重點檢查是否能完成、是否出現異常閃爍和動作崩壞。 效能退步時分別回退模型、節點和 PyTorch,定位是哪一層變化。
本地部署完成標準
- CUDA 在目標虛擬環境可見。
- 模型任務與工作流型別一致。
- ComfyUI 能發現所有元件。
- 第一段低解析度影片能完成。
- OOM 階段和峰值顯示記憶體有記錄。
- ffprobe 輸出參數正確。
- 自定義節點來源和 commit 可追溯。
- 遠端埠沒有直接暴露公網。
- 固定基準可用於以後升級。
Wan 2.2 的本地部署不是把權重放進一個目錄就結束。把模型元件、工作流、顯示記憶體和媒體輸出分別驗證,才能區分下載錯誤、節點不相容、CUDA 問題與真正的模型能力限制。