
Wan 2.2 ComfyUI: cài từ máy trắng đến clip đầu tiên trong 14 phút
AIDev TeamTham vấn chuyên môn: Nguyễn Việt Chung
Đăng 13 phút đọc1 lượt xem
Mục lục · 26
Hướng dẫn cài Wan 2.2 ComfyUI trên máy GPU Ubuntu 24.04: một script chạy hết từ apt, PyTorch, tải 47GB model đến clip thử, hoặc cài tay từng lệnh. Có bảng thời gian đo thật trên RTX 3090, cách mở giao diện qua SSH tunnel, bật LoRA 4 bước và các lỗi mình đã gặp.
Cách nhanh nhất để chạy Wan 2.2 trên card 24GB là dùng ComfyUI với bản model fp8 đóng gói lại của Comfy-Org, rồi bật LoRA 4 bước. Trên máy RTX 3090 trắng tinh, mình chạy một script và có clip đầu tiên sau 14,2 phút, không gõ thêm lệnh nào. Sau đó mỗi clip 5 giây mất khoảng 107 đến 124 giây.
Nắm mấy điểm này trước khi làm:
Bộ Wan 2.2 ComfyUI mình dùng gồm ComfyUI 0.41.0, PyTorch 2.14.1 (CUDA 13.0), model I2V 14B fp8 và TI2V-5B. Gói này tải về 47GB model.
Model 14B bản gốc của Wan-AI không chạy được trên card 24GB (README ghi cần ít nhất 80GB VRAM). Bản fp8 trong ComfyUI thì chạy, VRAM đỉnh đo được 23.924MiB ở 640×640 và 24.116MiB ở 736×544.
Workflow mẫu mặc định tắt LoRA 4 bước. Để mặc định, một clip mất 992 giây; bật lên còn 110 giây.
Mọi số trong bài đo ngày 17/10/2026 trên máy RTX 3090 của AIDev Cloud, Ubuntu 24.04.
Cần chuẩn bị gì để chạy Wan 2.2?
Mình thử trên hai cấu hình, cả hai đều là RTX 3090 24GB:
Thứ cần có | Mức mình đã chạy | Ghi chú |
|---|---|---|
GPU | RTX 3090 24GB (Ampere) | script cảnh báo nếu VRAM dưới 16GB hoặc GPU đời cũ hơn RTX 30xx |
RAM | gói Standard 55GB (máy báo 53GB), gói Pro 110GB | sau clip thử, máy 53GB dùng 38GB |
Ổ đĩa | 47GB model + 6,9GB venv | script dừng nếu ổ trống dưới 60GB |
Hệ điều hành | Ubuntu 24.04, image AI của AIDev Cloud | có sẵn Python 3.12.3, chưa có ffmpeg, python3-venv |
Quyền | root | script kiểm tra ngay bước đầu |
RAM là chỗ mình lo nhất, vì model 14B có hai expert (high noise và low noise) đổi qua lại trong lúc chạy. Máy 53GB vẫn đủ, nên script chỉ cảnh báo khi RAM dưới 50GB. Card 12GB hay 16GB thì mình chưa đo. Tài liệu của ComfyUI có ghi bản 5B "should fit well on 8GB vram" nhờ offload, nhưng đó là lời của tài liệu, mình chưa tự đo.
Chưa có card 24GB thì thuê theo giờ là gọn nhất: toàn bộ bài này chạy trên máy RTX 3090 của AIDev Cloud. Từ lúc bấm tạo đến khi máy sẵn sàng mất khoảng 75 đến 97 giây.
Cách 1: cài đặt Wan 2.2 ComfyUI bằng một lệnh
Mình gói toàn bộ các bước vào file setup-wan22.sh, tải ở mục Tệp đính kèm ngay dưới bài này (cần đăng nhập tài khoản AIDev). Tải về máy của bạn, chép lên máy GPU rồi chạy bằng root:
scp -P CỔNG setup-wan22.sh root@hn1.forai.cloud:/root/
ssh -p CỔNG root@hn1.forai.cloud
bash setup-wan22.sh
Script đi qua 7 bước: kiểm tra máy, cài gói hệ thống, clone ComfyUI v0.41.0 và cài PyTorch, tải model, dựng service, dựng thư mục xưởng video ở /root/xuong-video, rồi tạo thử một clip từ ảnh ví dụ trong repo Wan2.2 (con mèo đeo kính ngồi trên ván lướt). Log đầy đủ nằm ở /root/wan22-setup.log.

Dòng "~548đ" trong ảnh là tiền máy tính theo giá 17.000đ/giờ của bản script lúc đó. Bản hiện tại đọc biến GIA_GIO, mặc định 15.000đ (gói Standard), nên cùng 116 giây sẽ ra khoảng 483đ.
Thời gian từng bước trên máy RTX 3090 · Standard (25 vCPU, 55GB RAM, máy báo 53GB), lần chạy đầu tiên:
Bước | Thời gian |
|---|---|
apt: python3.12-venv, python3.12-dev, ffmpeg | 37 giây |
Clone ComfyUI v0.41.0 + torch 2.14.1+cu130 + requirements | 204 giây |
Tải 8 file model (47GB) | 475 giây |
Dựng service systemd, đợi ComfyUI lên | 17 giây |
Chạy thử 1 clip 544×720, LoRA 4 bước | 116 giây |
Tổng, từ máy trắng đến clip đầu tiên | 849 giây (14,2 phút) |
Bước tải model chiếm hơn nửa thời gian. Riêng hai file 14B high noise và low noise, mỗi file 14GB, mất 131 và 130 giây.
Chạy lại hoặc khởi động lại máy thì sao?
Script chạy lại được bao nhiêu lần cũng được: bước nào xong thì bỏ qua, file model nào có rồi thì không tải lại. Lần thứ hai mình chạy với CHAY_THU=0 (bỏ clip thử), hết 28 giây, thoát với mã 0.
ComfyUI được dựng thành service systemd tên comfyui, nên tự chạy khi máy khởi động. Mình gõ systemctl reboot, 14 giây sau khi boot thì log đã có dòng Started comfyui.service và ComfyUI version: 0.41.0. Hai lệnh hay dùng: systemctl restart comfyui để khởi động lại, journalctl -u comfyui -f để xem log.
Chọn gói model bằng biến GOI
Mặc định script tải gói i2v,5b: ảnh ra video 14B kèm LoRA 4 bước, cộng thêm TI2V-5B. Muốn gói khác thì đặt biến GOI trước lệnh:
GOI=5b bash setup-wan22.sh # chỉ TI2V-5B
GOI=i2v,5b bash setup-wan22.sh # mặc định
GOI=i2v,t2v,5b bash setup-wan22.sh # thêm chữ ra video 14B
Gói 5b không có model I2V 14B nên script bỏ qua bước chạy thử. Mình mới chạy hết gói mặc định trên máy sạch; hai gói còn lại mình chưa đo thời gian tải.
Cách 2: cài tay từng bước
Ai muốn biết script làm gì, hoặc muốn cài vào máy đang có sẵn đồ, thì gõ tay theo đúng thứ tự dưới đây. Đây là các lệnh script chạy, bỏ phần kiểm tra.
Gói hệ thống, ComfyUI và PyTorch
apt-get update
apt-get install -y python3.12-venv python3.12-dev git ffmpeg
git clone --depth 1 --branch v0.41.0 https://github.com/Comfy-Org/ComfyUI.git /root/ComfyUI
cd /root/ComfyUI
python3 -m venv venv && source venv/bin/activate
pip install -U pip
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu130
pip install -r requirements.txt
python -c "import torch;print('torch',torch.__version__,'cuda',torch.version.cuda,'gpu',torch.cuda.get_device_name(0))"
torch 2.14.1+cu130 cuda 13.0 gpu NVIDIA GeForce RTX 3090
python3.12-dev cần cho Triton biên dịch kernel ở lần chạy đầu, thiếu nó thì model mới báo lỗi Python.h (mình đã kể trong bài ComfyUI là gì). Trên máy Pro, mình cài tay riêng từng lệnh: clone 85 giây, PyTorch 115 giây, requirements 103 giây, thư mục venv nặng 6,9GB. Không cần flash_attn: ComfyUI dùng attention có sẵn của PyTorch.
Tải model từ Hugging Face
Model lấy từ repo Comfy-Org/Wan_2.2_ComfyUI_Repackaged, riêng text encoder nằm ở repo Wan 2.1 của Comfy-Org. Lệnh tải là hf (huggingface_hub 2.x, cài sẵn trong venv khi cài requirements):
R=Comfy-Org/Wan_2.2_ComfyUI_Repackaged
T=/root/.cache/wan22-tai
hf download Comfy-Org/Wan_2.1_ComfyUI_repackaged split_files/text_encoders/umt5_xxl_fp8_e4m3fn_scaled.safetensors --local-dir $T
hf download $R split_files/vae/wan_2.1_vae.safetensors --local-dir $T
hf download $R split_files/diffusion_models/wan2.2_i2v_high_noise_14B_fp8_scaled.safetensors --local-dir $T
hf download $R split_files/diffusion_models/wan2.2_i2v_low_noise_14B_fp8_scaled.safetensors --local-dir $T
hf download $R split_files/loras/wan2.2_i2v_lightx2v_4steps_lora_v1_high_noise.safetensors --local-dir $T
hf download $R split_files/loras/wan2.2_i2v_lightx2v_4steps_lora_v1_low_noise.safetensors --local-dir $T
hf download $R split_files/diffusion_models/wan2.2_ti2v_5B_fp16.safetensors --local-dir $T
hf download $R split_files/vae/wan2.2_vae.safetensors --local-dir $T
for d in text_encoders vae diffusion_models loras; do mv $T/split_files/$d/* models/$d/; done
du -sh /root/ComfyUI/models
Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads.
47G /root/ComfyUI/models
Cảnh báo về HF_TOKEN hiện ở mỗi file nhưng không cản gì: không có token, mình vẫn tải được khoảng 105 đến 120MB/s (mỗi file 14B nặng 14,29GB mất 130 đến 138 giây). Tải ra thư mục tạm rồi mới chuyển vào models/ vì hf download giữ nguyên cây thư mục split_files/... của repo.
File | Dung lượng | Thư mục |
|---|---|---|
umt5_xxl_fp8_e4m3fn_scaled | 6,74GB | models/text_encoders |
wan2.2_i2v_high_noise_14B_fp8_scaled | 14,29GB | models/diffusion_models |
wan2.2_i2v_low_noise_14B_fp8_scaled | 14,29GB | models/diffusion_models |
wan2.2_i2v_lightx2v_4steps_lora_v1 (high + low) | 1,23GB mỗi file | models/loras |
wan2.2_ti2v_5B_fp16 | 10,0GB | models/diffusion_models |
wan_2.1_vae (cho 14B) / wan2.2_vae (cho 5B) | 0,25GB / 1,41GB | models/vae |
Dung lượng theo trang Hugging Face, tính theo GB thập phân. Trên máy, du báo 47G cho cả thư mục.
Chạy ComfyUI
python main.py --listen 127.0.0.1 --port 8188
Khoảng 20 giây là lên. Mấy dòng log đáng để ý trên máy Pro:
Total VRAM 24124 MB, total RAM 110592 MB
DynamicVRAM support detected and enabled
Using pytorch attention
Muốn ComfyUI tự chạy lại khi reboot như bản script, tạo file /etc/systemd/system/comfyui.service với nội dung giống hệt file script dựng:
[Unit]
Description=ComfyUI (Wan2.2)
After=network-online.target
[Service]
WorkingDirectory=/root/ComfyUI
ExecStart=/root/ComfyUI/venv/bin/python main.py --listen 127.0.0.1 --port 8188
Restart=on-failure
User=root
[Install]
WantedBy=multi-user.target
Dòng WorkingDirectory là bắt buộc vì main.py là đường dẫn tương đối; thiếu mục [Install] thì lệnh enable không có tác dụng. Sau đó chạy:
systemctl daemon-reload && systemctl enable --now comfyui
Mở giao diện ComfyUI từ máy của bạn thế nào?
ComfyUI chỉ nghe ở 127.0.0.1 trên máy GPU, nên bạn mở bằng SSH tunnel. Gõ lệnh này trên máy tính của bạn, giữ cửa sổ đó mở:
ssh -N -L 8188:127.0.0.1:8188 -p CỔNG root@hn1.forai.cloud
CỔNG là cổng SSH của máy, xem ở trang quản lý máy trên aidev.edu.vn/cloud. Sau đó vào http://127.0.0.1:8188 trên trình duyệt của bạn.
Vì sao không chạy --listen 0.0.0.0 cho nhanh? Máy AIDev Cloud không có IP public, port 8188 đằng nào cũng không lọt ra ngoài. Còn trên máy có IP public, nghe ở 0.0.0.0 nghĩa là ai biết địa chỉ cũng vào dùng GPU của bạn được. SSH tunnel thì chỉ người có khóa SSH mới mở được giao diện.
Chạy workflow Wan 2.2 trong ComfyUI ra sao?
Trong giao diện, mở mục Templates rồi gõ "Wan2.2" vào ô tìm. ComfyUI 0.41 có sẵn bốn workflow mẫu: 14B Image to Video, 14B Text to Video, 14B First-Last Frame và 5B Video Generation.

Mình chọn Wan 2.2 14B Image to Video. Vừa mở ra, góc phải hiện ngay khung đỏ báo thiếu ảnh:

Workflow mẫu trỏ tới một ảnh không có trong ComfyUI/input. Bấm vào node Load Image, chọn "choose file to upload" và tải ảnh của bạn lên. Mình dùng ảnh bánh mì 1280×963 (ảnh CC0 trên Wikimedia Commons).
Tiếp theo là ba chỗ cần sửa trên node Image to Video (Wan2.2):
Ô prompt: viết lại theo ảnh của bạn. Prompt của mình: "A freshly made Vietnamese banh mi in a paper-lined basket. Steam rises gently from the warm bread, cilantro leaves tremble slightly. The camera slowly orbits around the basket. Warm restaurant lighting, appetizing food commercial style."
widthvàheight: mặc định 640×640. Ảnh ngang hay dọc thì đổi theo tỉ lệ ảnh, nếu không sẽ bị cắt (xem phần lỗi bên dưới).enable_turbo_mode: đây là công tắc bật LoRA 4 bước. Mặc định làfalse.

Với enable_turbo_mode để false, workflow chạy 20 bước, CFG 3.5. Clip 640×640, 81 khung (5 giây, 16 fps) của mình mất 16 phút 43 giây khi bấm Run trên giao diện (máy Standard). Bật lên true thì còn 4 bước, CFG 1, mất 115 giây, nhanh khoảng 9 lần. Đo qua API trên máy Pro cũng ra tỉ lệ đó: 992 giây so với 110 giây. Chất lượng có khác: bản 20 bước máy quay di chuyển rõ hơn, bản 4 bước chuyển động nhẹ hơn, cả hai đều giữ nguyên hình bánh mì, rau và giấy gói. Mình để true cho mọi lần thử, chỉ chuyển sang 20 bước khi đã chốt prompt. LoRA này do nhóm lightx2v làm, xem thêm ở Wan2.2-Lightning.
Bấm Run và chờ. Lần đầu có thêm thời gian nạp model từ ổ đĩa, và giữa chừng ComfyUI đổi từ expert high noise sang low noise.

Clip lưu ở ComfyUI/output. Muốn chạy hàng loạt nhiều ảnh mà không mở giao diện thì dùng xưởng video trong /root/xuong-video mà script đã dựng, mình viết riêng ở bài Wan 2.2 I2V: tạo video từ ảnh.
Lỗi mình đã gặp khi cài Wan 2.2
1. huggingface-cli: command not found
README của Wan2.2 vẫn hướng dẫn tải model bằng huggingface-cli. Trên máy mới, lệnh này không còn:
bash: line 1: huggingface-cli: command not found
WARNING: huggingface-hub 2.2.0 does not provide the extra 'cli'

Từ bản 2.x, huggingface_hub chỉ còn lệnh hf. Cài thêm huggingface_hub[cli] cũng không ra lệnh cũ. Đổi huggingface-cli download thành hf download, giữ nguyên tham số là chạy.
2. GitHub và pip chậm còn vài chục KB/s
Lúc đang tải model, mình tải thêm một file wheel từ GitHub Releases thì chỉ đạt khoảng 49KB/s, git clone ComfyUI thì đứng im. Đo lưu lượng mạng mới thấy hf download (tải nhiều luồng) đang chiếm khoảng 118MB/s, gần hết đường truyền. Dừng tải model là GitHub lên 4,6MB/s ngay. Từ đó mình cho script cài pip và clone xong hết rồi mới tải model.
3. Media input missing
Media input missing
Load Image is missing a required media file.
Gặp khi mở workflow mẫu Image to Video vì ảnh mẫu không có trên máy. Tải ảnh của bạn lên node Load Image là hết.
4. Ảnh ngang bị cắt thành hình vuông
Workflow mẫu ép 640×640. Ảnh bánh mì của mình là ảnh ngang, nên clip ra mất hai đầu ổ bánh. ComfyUI không báo gì, chỉ thấy khi xem clip.
Sửa: đặt width và height theo tỉ lệ ảnh. Với ảnh 1280×963, mình dùng 736×544, clip không bị cắt và mất 111 giây trên máy Pro (114 giây trong lô xưởng video trên máy Standard), gần bằng bản vuông.
5. Chạy lại chỉ mất 3 giây
Đây không phải lỗi. Bấm Run lần hai mà không đổi gì, ComfyUI trả luôn kết quả cũ trong cache: 3 giây với workflow 5B, 1,2 giây với I2V 14B. Muốn tạo clip mới thì đổi seed hoặc prompt.
Khi nào không nên dùng Wan 2.2 ComfyUI?
Bạn chỉ cần vài clip mỗi tháng. Cài đặt và tải 47GB model tốn hơn 14 phút trước khi có clip đầu, dịch vụ tạo video trên web sẽ nhanh hơn.
Bạn cần clip độ phân giải cao nhanh. Mình chạy I2V 14B kèm LoRA ở 1280×960 mất 655 giây một clip, gấp gần 6 lần bản 736×544.
Card của bạn dưới 24GB. Mình chưa đo trên card 12GB hay 16GB nên không dám nói chạy được. Số đo VRAM chi tiết ở bài Wan 2.2 cần bao nhiêu VRAM.
Bạn muốn chạy bản gốc của Wan-AI cho model 14B. Trên card 24GB, mình chạy bản gốc I2V-A14B thì hết VRAM sau 347 giây.
Câu hỏi thường gặp
Wan 2.2 trong ComfyUI cần bao nhiêu VRAM?
Trên RTX 3090 24GB, I2V 14B fp8 kèm LoRA 4 bước đạt đỉnh 23.924MiB ở 640×640 (24.116MiB ở 736×544), chạy 20 bước là 21.270MiB. Đó là mức đỉnh, vì ComfyUI bật DynamicVRAM và dùng hết chỗ còn trống. Card nhỏ hơn mình chưa thử.
Cài mất bao lâu?
Với script, 849 giây (14,2 phút) từ máy trắng đến clip đầu tiên, chưa tính khoảng 75 giây tạo máy. Tải model chiếm 475 giây.
Có cần tài khoản Hugging Face hay HF_TOKEN không?
Không. Các repo Comfy-Org tải được không cần đăng nhập. hf download chỉ in cảnh báo thiếu token, tốc độ mình đo được vẫn khoảng 105 đến 120MB/s.
Mỗi clip 5 giây mất bao lâu?
Với I2V 14B và LoRA 4 bước, 110 giây ở 640×640 và 116 giây ở 544×720. Chạy liên tiếp nhiều clip cũng không nhanh hơn, vì mỗi lần ComfyUI vẫn đổi hai expert 14B.
Nên chọn 14B hay 5B?
Ảnh ra video ở khoảng 480p thì 14B kèm LoRA chỉ mất 107 đến 124 giây. Lên 1280×960 thì khác: 14B kèm LoRA mất 655 giây, còn 5B chạy 20 bước mất 538 giây. Chữ ra video 720p bằng 5B mất 341 giây. Chất lượng clip 5B từ ảnh thì mình chưa so kỹ với 14B nên chưa dám khuyên bản nào.
Đọc tiếp
Muốn biết Wan 2.2 có những model nào, bản nào tải về được, đọc bài tổng quan Wan 2.2: tạo video AI mã nguồn mở. Tài liệu gốc ở docs.comfy.org và repo ComfyUI trên GitHub.
Muốn tạo hàng loạt clip từ ảnh sản phẩm thì xem tiếp bài Wan 2.2 I2V: tạo video từ ảnh. Các bài khác về chạy model AI trên GPU riêng có ở bài tổng quan AI Local: chạy LLM và AI tạo ảnh trên máy bạn.
Không có GPU 24GB ở nhà thì cứ thuê RTX 3090 trên AIDev Cloud, chép script lên, 14 phút sau là có clip.
Lệnh, số đo, ảnh và error message trong bài chạy trên máy RTX 3090 24GB của AIDev Cloud ngày 17/10/2026 (gói Standard 53GB RAM và gói Pro 110GB RAM; ComfyUI 0.41.0, PyTorch 2.14.1+cu130, driver NVIDIA 610.43.02, Ubuntu 24.04.4).
Tham vấn chuyên môn
Nhà sáng lập AIDev và VietPlatform · Thạc sĩ AI MSE
- Tốt nghiệp thủ khoa xuất sắc Thạc sĩ AI MSE.
- Đồng sáng lập, CTO E-University, SVOnline: số hóa 10+ đại học, 40.000+ sinh viên.
- Xây hệ thống AI cho doanh nghiệp tại VietPlatform.


