Cách các mô hình hình ảnh AI tạo sinh hoạt động: giải thích đơn giản về khuếch tán, latent và bộ mã hóa văn bản
Tổng quan
Mọi mô hình hình ảnh hiện tại đều là bộ khử nhiễu. Trong quá trình huấn luyện, nó được cho xem hàng triệu hình ảnh với lượng nhiễu ngẫu nhiên tăng dần, cùng với chú thích của mỗi ảnh, và nó học cách dự đoán nhiễu đã được thêm vào. Khi tạo ảnh, quá trình chạy ngược lại: bắt đầu từ nhiễu thuần túy, hỏi mô hình nhiễu gì có trong đó dựa trên prompt của bạn, loại bỏ một chút nhiễu, lặp lại hai mươi hoặc ba mươi lần, và một hình ảnh phù hợp với chú thích sẽ xuất hiện. Đó là toàn bộ thủ thuật; "khuếch tán" là tên của quá trình thêm nhiễu dần dần rồi loại bỏ nhiễu này.
Làm việc trên từng điểm ảnh đầy đủ sẽ quá chậm, nên từ Stable Diffusion 1.x, việc khử nhiễu diễn ra trong một không gian nén gọi là latent. Một mạng nhỏ riêng biệt, VAE, nén ảnh 1024x1024 thành một lưới 128x128 số và giải nén lại ở cuối. Bộ khử nhiễu (U-Net trong SD 1.5 và SDXL, transformer trong Flux, Qwen, Z-Image và các mô hình video) không bao giờ nhìn thấy điểm ảnh. Đây là lý do kích thước ảnh phải là bội số của 8 hoặc 16, và bước giải mã VAE cuối cùng có thể tự hết bộ nhớ.
Prompt được đưa vào qua bộ mã hóa văn bản, chuyển từ từ thành một danh sách số mà bộ khử nhiễu có thể dựa vào. SD 1.5 dùng một bộ mã hóa CLIP với giới hạn 77 token, SDXL dùng hai bộ, Flux thêm một mô hình ngôn ngữ T5 lớn, và các mô hình 2025 và 2026 (Qwen Image, FLUX.2, Z-Image, Wan 2.2) dùng các LLM đầy đủ làm bộ mã hóa. Thay đổi này giải thích phần lớn sự khác biệt trong cách viết prompt: danh sách tag cho mô hình dựa trên CLIP, câu tự nhiên cho mô hình dựa trên LLM. Cuối cùng, LoRA là một bộ nhỏ các chỉnh sửa trọng số bộ khử nhiễu (và đôi khi bộ mã hóa) để điều hướng những gì nó vẽ; nó không thêm kiến thức mới từ đâu ra, mà chỉ điều chỉnh trọng số mô hình gốc đã học.
Tham khảo
Tên | Kiểu | Ý nghĩa |
|---|---|---|
Bộ khử nhiễu (U-Net / DiT) | component | |
VAE | component | Nén ảnh thành latent rồi giải nén lại. VAE sai hoặc thiếu sẽ cho ảnh nhạt hoặc ám tím. Flux và các dòng mới có VAE 16 kênh riêng. |
Bộ mã hóa văn bản | component | CLIP-L, CLIP-G, T5-XXL hoặc LLM (Qwen2.5-VL, Mistral, Gemma). Quyết định cách prompt được hiểu và độ dài tối đa. |
Bộ lập lịch / bộ lấy mẫu | setting | Lịch trình lượng nhiễu cần loại bỏ mỗi bước và phương pháp số dùng. Thay đổi kết cấu và tốc độ hội tụ, không thay đổi nội dung. |
Bước | setting | Số lần lặp khử nhiễu. Mô hình chưng cất (Turbo, Lightning, Schnell, Klein) được huấn luyện để cần 1 đến 8 bước. |
CFG / hướng dẫn | setting | Hướng dẫn không cần bộ phân loại: mức độ dự đoán có điều kiện prompt bị đẩy xa dự đoán không điều kiện. Quá cao làm cháy màu; mô hình chưng cất hướng dẫn (Flux dev) dùng một giá trị hướng dẫn duy nhất. |
Kích thước latent | setting | |
Flow matching | training method |
Từng bước
- Thêm nhiễu: bộ lấy mẫu tạo một lưới latent số ngẫu nhiên từ seed. Thay seed thì mọi thứ sau đó thay đổi.
- Nhập prompt: bộ mã hóa văn bản chuyển từ thành embedding. Với mô hình CLIP, quá 77 token sẽ bị chia nhỏ hoặc bỏ; với mô hình LLM, một đoạn văn bình thường.
- Bộ lấy mẫu trừ nhiễu dự đoán theo lịch trình (Karras, exponential, simple, beta). Sau bước cuối, latent là ảnh sạch ở dạng nén.
- Giải mã: VAE mở rộng latent thành điểm ảnh. Giải mã VAE theo ô có vì bước này có thể vượt quá bộ nhớ 8 GB với kích thước lớn.
- Các bước tùy chọn thứ hai: hires-fix thêm nhiễu lại một chút rồi khử nhiễu ở kích thước lớn hơn; img2img bắt đầu từ ảnh có sẵn thay vì nhiễu thuần túy; inpainting giới hạn thay đổi trong mặt nạ.
- Mô hình video thêm trục thời gian vào latent (clip 5 giây là một latent 3D) và vòng lặp giống hệt, nên cần bộ nhớ gấp mười lần.
Ví dụ
Cùng một prompt qua ba kiến trúc
SD 1.5 (CLIP, 77 tokens): "portrait of an old sailor, grey beard, wool cap, harbour background, film photo"
SDXL (two CLIPs): same words, 1024x1024, CFG 6, 28 steps
Flux dev (CLIP-L + T5): "A weathered old sailor with a grey beard and a navy wool cap stands at a harbour railing at dusk; shallow depth of field, Kodak Portra look." guidance 3.5, 24 steps
Các node ComfyUI tương ứng với các thành phần
Load Checkpoint -> MODEL (denoiser), CLIP (text encoder), VAE
CLIP Text Encode (prompt) -> KSampler (sampler, steps, CFG, seed) -> VAE Decode -> Save Image
Mẹo
- Mô hình không thể vẽ thứ không có trong dữ liệu huấn luyện. Đó là lý do fine-tune anime biết hàng nghìn nhân vật còn mô hình ảnh chụp thì không, và vì sao gần như mọi khoảng trống đều có LoRA.
- Fine-tune (DreamShaper, Juggernaut, Illustrious, Pony) cùng kiến trúc với mô hình gốc nhưng trọng số khác; LoRA cho mô hình gốc thường dùng được cho fine-tune, LoRA cho fine-tune rất khác (Pony) thường không.
- Mô hình chưng cất đánh đổi linh hoạt lấy tốc độ. SDXL Lightning với 4 bước đủ cho bản nháp; mô hình đầy đủ 28 bước tốt hơn cho bản cuối.
- Chưng cất hướng dẫn (Flux dev) và CFG không giống nhau. Dùng CFG 7 trên Flux dev cho ảnh cháy màu; dùng cài đặt trên trang mô hình.
- Mọi thứ ở đây chạy trên đối tác đám mây y hệt như trên máy; khác biệt chỉ là ai sở hữu GPU.
Khắc phục sự cố
Ảnh ra xám, nhạt hoặc ám tím
Vì sao xảy ra
VAE thiếu hoặc không khớp, hoặc tràn VAE fp16 trên SDXL.
Cách sửa
Tải VAE đúng cho dòng; trên SDXL dùng VAE sửa lỗi fp16.
Prompt dài bị bỏ một phần
Vì sao xảy ra
Giới hạn token CLIP trên SD 1.5 và SDXL.
Cách sửa
Đặt từ quan trọng lên trước, hoặc chuyển sang mô hình Flux, Qwen hoặc Z-Image có bộ mã hóa LLM.
Màu cháy và tương phản quá mạnh
Vì sao xảy ra
CFG quá cao cho mô hình, hoặc dùng CFG trên mô hình chưng cất hướng dẫn.
Cách sửa
Giảm CFG xuống 5 đến 7 trên SDXL; dùng hướng dẫn 3 đến 4 và CFG 1 trên Flux dev.
Ảnh bị lặp hoặc nhân đôi chi tiết ở kích thước lớn
Vì sao xảy ra
Latent lớn hơn nhiều so với độ phân giải huấn luyện; mô hình lặp lại chi tiết.
Cách sửa
Tạo ở kích thước gốc rồi phóng to, hoặc dùng hires-fix với 0.4 khử nhiễu.
Hết bộ nhớ chỉ ở bước cuối cùng
Vì sao xảy ra
Bước giải mã VAE ở kích thước đầy đủ.
Cách sửa
Dùng giải mã VAE theo ô, hoặc kích thước đầu ra nhỏ hơn rồi phóng to.
Câu hỏi
Mô hình có sao chép ảnh từ bộ dữ liệu huấn luyện không?
Nó lưu trọng số, không lưu ảnh, và không thể lấy lại ảnh huấn luyện. Có thể xuất hiện ảnh gần giống lặp lại của ảnh huấn luyện rất phổ biến (tranh nổi tiếng, logo), nên tránh prompt cho những thứ đó.
Tại sao mô hình mới cần nhiều bộ nhớ hơn nếu ý tưởng giống nhau?
Bộ khử nhiễu lớn hơn (12 tỷ tham số cho Flux so với 0.9 cho SD 1.5), bộ mã hóa văn bản lớn hơn và latent lớn hơn. Phiên bản lượng tử fp8 và GGUF giúp giảm lại.
Sự khác biệt giữa checkpoint và mô hình là gì?
Checkpoint là file lưu mô hình (bộ khử nhiễu, thường kèm bộ mã hóa và VAE). Mọi người dùng hai từ này thay thế cho nhau.
Tại sao cùng một seed lại cho ảnh khác trên máy khác?
GPU khác, độ chính xác khác (fp16 vs bf16) hoặc cách cài đặt bộ lấy mẫu khác; nhiễu giống nhưng phép tính hơi khác. Cùng máy, cùng cài đặt, ảnh giống nhau.
Tăng số bước có luôn giúp không?
Không. Hầu hết bộ lấy mẫu hội tụ ở 25 đến 30 bước; vượt quá đó chỉ tốn thời gian. Mô hình chưng cất bước nhiều còn tệ hơn.
Liên kết và nguồn
- Denoising Diffusion Probabilistic Models (Ho et al., 2020)
- High-Resolution Image Synthesis with Latent Diffusion Models (Rombach et al., 2022)
- Flow Matching for Generative Modeling (Lipman et al., 2022)
- Flux family page
- SD 1.5 family page
- BitVector web appAD
Mô hình trong hướng dẫn này
Mô hình Stable Diffusion 1.5
Mô hình Stable Diffusion XL 1.0
Mô hình Flux
Mô hình Qwen
Mô hình Zimage
Mô hình Wan
Người viết
Quản lý kho: mọi LoRA, mọi quant, mọi file ai đó đổi tên thành final_v2_REAL.safetensors. Đo phần cứng bằng số lần render Wan trước bữa tối. Sẽ cho bạn số VRAM, rồi bảo nó sai vì bạn đang mở Chrome. Mở trọng số ra hoặc không được coi là đã giao hàng.
Tất cả hướng dẫn của Quartermaster
Hướng dẫn liên quan
Bắt đầu với tạo hình ảnh AI: bức ảnh đầu tiên trong mười phút
14 Tháng 8, 2025
Các bước, CFG, bộ lấy mẫu, bộ lập lịch và hạt giống: giải thích các thiết lập tạo ảnh với các giá trị mặc định an toàn
19 Tháng 11, 2025
Checkpoint vs LoRA vs embedding vs ControlNet: file nào làm gì
8 Tháng 10, 2025
Flux vs SDXL vs SD 1.5 vs Qwen vs Z-Image: nên dùng dòng model nào năm 2026
22 Tháng 5, 2026
Hướng dẫn khác
Yêu cầu VRAM cho mọi mô hình AI hình ảnh và video phổ biến (2026): độ chính xác đầy đủ, FP8 và GGUF
6 Tháng 10, 2026
CUDA hết bộ nhớ: mỗi mô hình AI cần bao nhiêu VRAM và cách để vừa vặn
18 Tháng 5, 2026
Các lựa chọn thay thế Civitai: nơi tìm và tải mô hình AI năm 2026
16 Tháng 9, 2026

AMD Amuse năm 2026: chuyện gì đã xảy ra, và bạn có nên dùng nó nữa không?
9 Tháng 10, 2026
LoRA là gì và cách sử dụng nó trong ComfyUI, Forge, Automatic1111 và trên đám mây
20 Tháng 5, 2026
