Model
.ai
memantau model AI terbuka

Cara kerja model gambar AI generatif: difusi, latents, dan pengkode teks dijelaskan dengan sederhana

Topik: Model
Oleh Quartermaster
Diterbitkan 28 Agu 2025

Ikhtisar

Setiap model gambar saat ini adalah denoiser. Saat pelatihan, model ditunjukkan jutaan gambar dengan jumlah noise acak yang bertambah, bersama dengan keterangan setiap gambar, dan model belajar memprediksi noise apa yang ditambahkan. Saat pembuatan gambar, prosesnya berjalan mundur: mulai dari noise murni, tanya model noise apa yang ada di situ berdasarkan promptmu, hilangkan sedikit, ulangi dua puluh atau tiga puluh kali, dan gambar yang sesuai keterangan muncul. Itu inti triknya; "difusi" adalah nama proses bertahap tambah noise, hilangkan noise ini.
Bekerja langsung pada piksel ukuran penuh akan sangat lambat, jadi sejak Stable Diffusion 1.x denoising dilakukan di ruang terkompresi yang disebut latent. Jaringan kecil terpisah, VAE, memampatkan gambar 1024x1024 menjadi grid angka 128x128 dan mengembalikannya di akhir. Denoiser (U-Net di SD 1.5 dan SDXL, transformer di Flux, Qwen, Z-Image dan model video) tidak pernah melihat piksel. Ini sebabnya ukuran gambar harus kelipatan 8 atau 16, dan kenapa langkah decode VAE di akhir bisa kehabisan memori sendiri.
Prompt masuk lewat pengkode teks, yang mengubah kata-kata jadi daftar angka yang bisa dipakai denoiser sebagai kondisi. SD 1.5 pakai satu pengkode CLIP dengan batas 77 token, SDXL pakai dua, Flux tambah model bahasa besar T5, dan model 2025 dan 2026 (Qwen Image, FLUX.2, Z-Image, Wan 2.2) pakai LLM penuh sebagai pengkode. Perubahan ini menjelaskan sebagian besar perbedaan cara menulis prompt: daftar tag untuk model berbasis CLIP, kalimat alami untuk yang berbasis LLM. LoRA, akhirnya, adalah set kecil koreksi bobot denoiser (dan kadang pengkode) yang mengarahkan apa yang digambar; ini tidak menambah pengetahuan baru, tapi mengubah bobot dari apa yang sudah dipelajari model dasar.

Referensi

Nama
Tipe
Artinya
Denoiser (U-Net / DiT)
component
Jaringan utama. Memprediksi noise dalam latent berdasarkan prompt dan langkah. U-Net di SD 1.5 dan SDXL; transformer difusi (DiT / MMDiT) di Flux, FLUX.2, Qwen, Z-Image, Wan, LTX, H3.
VAE
component
Memampatkan gambar ke latent dan mengembalikannya. VAE yang salah atau hilang bikin gambar jadi pudar atau ungu. Flux dan keluarga baru punya VAE 16-channel sendiri.
Text encoder
component
CLIP-L, CLIP-G, T5-XXL atau LLM (Qwen2.5-VL, Mistral, Gemma). Menentukan bagaimana prompt dipahami dan seberapa panjang bisa dipakai.
Scheduler / sampler
setting
Jadwal berapa banyak noise yang dihilangkan tiap langkah dan metode numerik yang dipakai. Mengubah tekstur dan kecepatan konvergensi, bukan isi gambar.
Steps
setting
Berapa banyak iterasi denoising. Model distilasi (Turbo, Lightning, Schnell, Klein) dilatih supaya butuh 1 sampai 8 langkah.
CFG / guidance
setting
Classifier-free guidance: seberapa jauh prediksi yang dikondisikan oleh prompt didorong menjauh dari yang tidak dikondisikan. Terlalu tinggi bikin warna terbakar; model guidance-distilled (Flux dev) pakai satu nilai guidance saja.
Latent size
setting
Ukuran gambar dibagi 8 (SD) atau 16 (Flux, Wan). Model menggambar terbaik di resolusi yang mirip dengan pelatihannya.
Flow matching
training method
Pengganti jadwal noise difusi klasik sejak 2024+ (Flux, SD3, Wan, Z-Image). Ide sama, jalur lebih lurus dari noise ke gambar, butuh langkah lebih sedikit.

Langkah demi langkah

  1. Noise masuk: sampler buat grid latent angka acak dari seed. Ganti seed, semua hasil berubah.
  2. Prompt masuk: pengkode teks ubah kata jadi embedding. Di model CLIP, lebih dari 77 token dipotong atau dibuang; di model LLM, paragraf panjang tidak masalah.
  3. Setiap langkah: denoiser dijalankan dua kali di SD dan SDXL (dengan dan tanpa prompt); selisihnya, dikali CFG, mengarahkan latent ke prompt. Flux dev jalan sekali dengan nilai guidance yang sudah dipasang.
  4. Sampler kurangi noise yang diprediksi sesuai jadwal (Karras, eksponensial, sederhana, beta). Setelah langkah terakhir, latent jadi gambar bersih dalam bentuk terkompresi.
  5. Decode: VAE kembangkan latent jadi piksel. Decode VAE bertile ada karena langkah ini bisa melebihi memori kartu 8 GB di ukuran besar.
  6. Lewatkan kedua opsional: hires-fix menambah noise sedikit lalu denoise di ukuran lebih besar; img2img mulai dari gambar yang sudah ada bukan noise murni; inpainting batasi perubahan hanya di area masker.
  7. Model video tambah sumbu waktu ke latent (klip 5 detik jadi satu latent 3D) dan sisanya loop sama, makanya butuh memori sepuluh kali lipat.

Contoh

Prompt yang sama lewat tiga arsitektur

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

Node ComfyUI dipetakan ke komponen

Load Checkpoint -> MODEL (denoiser), CLIP (text encoder), VAE
CLIP Text Encode (prompt) -> KSampler (sampler, steps, CFG, seed) -> VAE Decode -> Save Image

Tips

  • Model tidak bisa menggambar apa yang tidak ada di data latihannya. Itu sebabnya fine-tune anime tahu ribuan karakter dan model foto tidak, dan kenapa hampir setiap kekurangan ada LoRA-nya.
  • Fine-tune (DreamShaper, Juggernaut, Illustrious, Pony) arsitekturnya sama dengan dasar tapi bobot beda; LoRA untuk dasar biasanya bisa dipakai di fine-tune, LoRA untuk fine-tune yang sangat berbeda (Pony) sering tidak bisa.
  • Model distilasi tukar fleksibilitas dengan kecepatan. SDXL Lightning dengan 4 langkah cukup untuk draft; model penuh dengan 28 langkah lebih baik untuk hasil akhir.
  • Pengkode teks sering jadi file terbesar. Flux dengan T5-XXL fp16 butuh 9 GB cuma untuk pengkode, makanya ada versi fp8 dan GGUF.
  • Guidance distillation (Flux dev) dan CFG bukan hal yang sama. Pakai CFG 7 di Flux dev bikin gambar terbakar; pakai pengaturan di halaman model.
  • Semua ini berjalan di cloud partner sama persis seperti lokal; bedanya cuma siapa yang punya GPU.

Pemecahan masalah

Gambar keluar abu-abu, pudar, atau bernuansa ungu

Mengapa terjadi
VAE hilang atau tidak cocok, atau overflow VAE fp16 di SDXL.

Cara memperbaikinya
Muat VAE yang sesuai keluarga; di SDXL pakai VAE fp16-fix.

Prompt panjang sebagian diabaikan

Mengapa terjadi
Batas token CLIP di SD 1.5 dan SDXL.

Cara memperbaikinya
Taruh kata penting di depan, atau pindah ke model Flux, Qwen, atau Z-Image dengan pengkode LLM.

Warna terbakar dan kontras ekstrem

Mengapa terjadi
CFG terlalu tinggi untuk model, atau CFG dipakai di model guidance-distilled.

Cara memperbaikinya
Turunkan CFG ke 5 sampai 7 di SDXL; pakai guidance 3 sampai 4 dan CFG 1 di Flux dev.

Tiling atau subjek ganda di ukuran besar

Mengapa terjadi
Latent jauh lebih besar dari resolusi pelatihan; model mengulang gambar.

Cara memperbaikinya
Buat di ukuran asli lalu upscale, atau pakai hires-fix dengan denoise 0.4.

Kehabisan memori hanya di akhir proses

Mengapa terjadi
Langkah decode VAE di ukuran penuh.

Cara memperbaikinya
Pakailah decode VAE bertile, atau ukuran output lebih kecil lalu di-upscale.

Pertanyaan

Apakah model menyalin gambar dari data latihannya?

Model menyimpan bobot, bukan gambar, dan tidak bisa mengambil gambar pelatihan. Duplikat dekat gambar pelatihan yang sangat sering bisa muncul (lukisan terkenal, logo), itu alasan untuk tidak memintanya.

Kenapa model baru butuh memori lebih besar padahal idenya sama?

Denoiser lebih besar (12 miliar parameter untuk Flux dibanding 0.9 untuk SD 1.5), pengkode teks lebih besar, dan latent lebih besar. Versi quantized fp8 dan GGUF menguranginya lagi.

Apa bedanya checkpoint dan model?

Checkpoint adalah file simpanan model (denoiser, sering dengan pengkode dan VAE). Orang sering pakai kata ini bergantian.

Kenapa seed sama hasilnya beda di PC lain?

GPU berbeda, presisi (fp16 vs bf16) atau implementasi sampler; noise sama tapi perhitungan sedikit beda. Mesin sama, pengaturan sama, gambar sama.

Apakah langkah lebih banyak selalu membantu?

Tidak. Kebanyakan sampler konvergen di 25 sampai 30 langkah; lebih dari itu cuma buang waktu. Model distilasi malah makin buruk dengan langkah lebih banyak.

Model dalam panduan ini

Ditulis oleh
Mengatur inventaris: setiap LoRA, setiap quant, setiap file yang seseorang ganti namanya menjadi final_v2_REAL.safetensors. Mengukur perangkat keras berdasarkan berapa banyak render Wan yang muat sebelum makan malam. Akan memberimu angka VRAM, lalu bilang itu salah karena kamu membuka Chrome. Bobot terbuka atau tidak dikirim.
Semua panduan oleh Quartermaster

Panduan lainnya