Tech

Stable Diffusion: Panduan Lengkap AI Image Generator Open Source

M
MUGHU
22 menit baca
Stable Diffusion: Panduan Lengkap AI Image Generator Open Source
Daftar isi

Pertama-tama, MUGHU mau kasih konteks: MUGHU sudah bertahun-tahun ngoprek AI image generator, dari DALL-E sampai Midjourney. Tapi Stable Diffusion itu spesial—soalnya model ini benar-benar open source, bisa dijalankan di komputer sendiri, dan punya ekosistem komunitas yang paling aktif MUGHU pernah lihat. Pernah sekali MUGHU bikin project generate gambar untuk klien, dan karena nggak ngerti cara setup Stable Diffusion dengan benar, MUGHU malah bikin gambar yang hasilnya... ya, kayak monster. Jadi MUGHU pengen Teman-Teman nggak ngalamin hal yang sama.

Stable Diffusion adalah model deep learning yang bisa ngubah deskripsi teks jadi gambar. Dibikin oleh Stability AI bersama CompVis Group dari LMU Munich dan Runway, model ini dirilis pertama kali bulan Agustus 2022. Yang bikin Stable Diffusion beda dari kompetitor kayak DALL-E atau Midjourney: kode dan bobot modelnya tersedia publik, dan bisa jalan di GPU konsumen dengan VRAM secukupnya—bahkan ada yang cuma butuh 2.4 GB VRAM.

Apa itu Stable Diffusion? Stable Diffusion adalah model latent diffusion yang menghasilkan gambar dari teks dengan cara mengompresi gambar ke ruang latent, menambahkan noise secara bertahap, lalu membalikkan proses tersebut untuk menghasilkan gambar baru yang sesuai dengan deskripsi teks pengguna.

Dalam tutorial ini, MUGHU bakal bahas semuanya dari A sampai Z: cara install, cara bikin gambar pertama, cara fine-tune, sampai troubleshooting error yang sering muncul. MUGHU juga bakal kasih studi kasus nyata dari pengalaman MUGHU sendiri, perbandingan antar versi model, dan tips-tips praktis yang biasanya cuma diketahui setelah "kencing darah" dulu di depan layar.

Apa yang Perlu Disiapkan Sebelum Mulai

Sebelum loncat ke kode, ada beberapa hal yang harus disiapkan dulu. MUGHU pernah coba install Stable Diffusion di laptop jadul tanpa GPU memadai, dan hasilnya cuma bikin MUGHU nunggu 30 menit buat satu gambar yang resolusinya kayak thumbnail WhatsApp. Jadi, yuk pastikan spesifikasi Teman-Taman memenuhi syarat.

Spesifikasi Hardware Minimum

Komponen

Minimum

Direkomendasikan

GPU

NVIDIA dengan 4 GB VRAM

NVIDIA RTX dengan 8+ GB VRAM

RAM

8 GB

16 GB atau lebih

Storage

10 GB free space

50+ GB SSD (untuk model & LoRA)

OS

Windows 10/11, Linux, macOS

Windows 11 atau Ubuntu 22.04

Python

3.8

3.10 atau 3.11

Beberapa catatan penting soal hardware:

  • GPU AMD juga bisa, tapi butuh konfigurasi tambahan lewat DirectML atau ROCm

  • CPU-only juga bisa lewat OpenVINO, tapi kecepatannya... ya, sabar aja

  • Kalau VRAM cuma 4 GB, bisa pakai mode --lowvram atau --medvram di AUTOMATIC1111

  • Untuk Stable Diffusion 3.5 Large, butuh VRAM yang lebih besar—setidaknya 9.9 GB untuk model Medium

Software yang Harus Diinstall

  1. Python 3.10 — jangan pakai 3.12 karena beberapa dependency belum support

  2. Git — buat clone repository

  3. NVIDIA CUDA Toolkit (kalau pakai NVIDIA GPU)

  4. Visual Studio Code atau editor favorit Teman-Teman

Cara Cek GPU dan Environment

Buka terminal atau Command Prompt, lalu jalankan:

BASH
# Cek apakah NVIDIA GPU terdeteksi
nvidia-smi

# Cek versi Python
python --version

# Cek versi pip
pip --version

Output yang diharapkan:

CODE
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 535.104.05   Driver Version: 535.104.05   CUDA Version: 12.2     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
|   0  NVIDIA GeForce...  On   | 00000000:01:00.0  On |                  N/A |
|  30%  45C    P8    20W / 220W |  1200MiB /  8192MiB |     15%      Default |
+-------------------------------+----------------------+----------------------+

Python 3.10.11
pip 24.0

Kalau nvidia-smi nggak muncul, berarti driver NVIDIA belum terinstall atau GPU nggak terdeteksi. Pastikan sudah install driver terbaru dari situs resmi NVIDIA.

Step 1: Install Stable Diffusion Web UI (AUTOMATIC1111)

Ada banyak cara buat pakai Stable Diffusion, tapi yang paling populer dan paling lengkap fiturnya adalah AUTOMATIC1111 Stable Diffusion Web UI. Ini interface web-based yang bikin kita bisa generate gambar tanpa nulis kode ribuan baris.

MUGHU pernah coba pakai library diffusers langsung dari Python script buat project production, dan emang lebih fleksibel. Tapi buat yang baru kenal Stable Diffusion, AUTOMATIC1111 itu jalan terbaik—soalnya semua setting udah ada UI-nya, tinggal klik-klik.

Clone Repository AUTOMATIC1111

Buka terminal di folder yang Teman-Teman mau, lalu jalankan:

BASH
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
cd stable-diffusion-webui

Kenapa kita clone dari AUTOMATIC1111 dan bukan dari repo resmi CompVis? Soalnya AUTOMATIC1111 udah bungkus semuanya jadi satu paket yang siap pakai—termasuk model loader, UI, sampling scripts, dan extensions system. Repo asli CompVis cuma kasih script dasar, dan Teman-Taman harus setup semuanya manual.

Jalankan Instalasi

Di Windows, tinggal double-klik file run.bat atau webui-user.bat. Di Linux/macOS:

BASH
bash webui.sh

Script ini bakal otomatis:

  • Bikin virtual environment Python

  • Install semua dependency (PyTorch, transformers, dll.)

  • Download model checkpoint default (Stable Diffusion v1.5)

  • Start web server di http://localhost:7860

Proses ini bisa makan 15-45 menit tergantung koneksi internet dan kecepatan komputer. Model checkpoint sendiri ukurannya sekitar 4-7 GB.

Output yang Diharapkan

CODE
Python 3.10.11 (tags/v3.10.11:da498f9, Dec  4 2023, 17:24:56) [MSC v.1937 64 bit (AMD64)]
Commit hash: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Installing torch and torchvision
Looking in indexes: https://download.pytorch.org/whl/cu118
...
Installing requirements
...
Launching Web UI with arguments: 
Loading weights [aaaaaaaa] from /path/to/model.ckpt
Model loaded in 12.3s
Running on local URL:  http://127.0.0.1:7860

Saat browser terbuka dan muncul interface AUTOMATIC1111, berarti instalasi sukses. Kalau nggak otomatis terbuka, buka manual di http://127.0.0.1:7860.

Error yang Sering Muncul Saat Install

Error: torch not found / CUDA not available

Ini paling sering terjadi kalau PyTorch nggak terinstall dengan dukungan CUDA. Solusinya, edit file webui-user.bat (Windows) atau webui-user.sh (Linux) dan tambahkan:

BASH
# Windows (webui-user.bat)
set COMMANDLINE_ARGS=--xformers --medvram

# Linux (webui-user.sh)
export COMMANDLINE_ARGS="--xformers --medvram"

Lalu jalankan ulang. Kalau masih error, install PyTorch manual:

BASH
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu118

Error: xformers not found

Xformers adalah library yang bikin attention mechanism lebih efisien. Kalau nggak keinstall, hapus --xformers dari argument atau install manual:

BASH
pip install xformers

Error: Model not found / 404 saat download

Model default kadang berubah URL-nya. Download manual dari Hugging Face dan taruh di folder models/Stable-diffusion/.

Step 2: Pahami Konfigurasi dan Setting Dasar

Setelah Web UI terbuka, Teman-Taman bakal lihat tab txt2img sebagai default. Ini tempat kita bikin gambar dari teks. Tapi sebelum asik generate, MUGHU mau jelaskan setting-setting penting biar Teman-Taman nggak bingung kayak MUGHU dulu yang langsung klik Generate tanpa ngerti apa-apa.

Prompt dan Negative Prompt

  • Prompt: deskripsi teks tentang gambar yang mau dibikin. Semakin spesifik, semakin baik hasilnya

  • Negative Prompt: hal-hal yang mau dihindari di hasil gambar. Ini fitur yang sangat powerful

Contoh prompt yang bagus:

CODE
Prompt: a majestic phoenix rising from emerald flames, fantasy art style, 
cinematic lighting, highly detailed, 8k resolution, sharp focus

Negative Prompt: blurry, pixelated, low resolution, watermark, text, 
logo, bad anatomy, distorted face, extra fingers

Kenapa negative prompt penting? Soalnya model kadang ngasilin hal-hal yang nggak kita mau kayak jari ekstra, wajah aneh, atau watermark. Dengan negative prompt, kita "kasih tahu" model buat menghindari hal-hal itu.

Sampling Steps

Ini ngontrol berapa kali model melakukan proses denoising. Logikanya kayak gini: bayangkan Teman-Taman punya kanvas penuh noise (titik-titik acak), dan model perlahan-lahan "membersihkan" noise itu sampai jadi gambar.

  • 20 steps: cepat tapi kualitas kurang optimal

  • 28-30 steps: titik manis antara kecepatan dan kualitas (rekomendasi MUGHU)

  • 50+ steps: kualitas lebih tinggi tapi makin lama, dan setelah titik tertentu improvement-nya nggak signifikan

CFG Scale (Classifier-Free Guidance)

CFG Scale ngontrol seberapa ketat model mengikuti prompt. Ini konsep yang agak tricky, tapi MUGHU kasih analogi:

Bayangkan Teman-Taman menyuruh teman bikin lukisan. CFG rendah itu kayak bilang "terserah kamu, kreatif aja". CFG tinggi itu kayak bilang "ikutin instruksi saya persis, jangan ngarang sendiri".

  • 1-3: model bebas berkreasi, kadang jauh dari prompt

  • 7-9: balance antara kreativitas dan adherence (default MUGHU)

  • 12-15: sangat mengikuti prompt tapi kadang over-saturated atau artifisial

  • 20+: hampir selalu jelek, gambar jadi terlalu "dipaksakan"

Sampler

Sampler adalah algoritma yang dipakai buat proses denoising. Yang paling populer:

Sampler

Kecepatan

Kualitas

Catatan

Euler a

Cepat

Bagus

Cocok buat eksplorasi cepat

DPM++ 2M Karras

Sedang

Sangat bagus

Default MUGHU buat production

DPM++ SDE Karras

Lambat

Terbaik

Buat hasil final yang premium

DDIM

Sedang

Bagus

Klasik, stabil

Coba Generate Gambar Pertama

Sekarang yuk coba bikin gambar pertama. Masukkan setting berikut di AUTOMATIC1111:

CODE
Prompt: foto pemandangan gunung Bromo saat sunrise, kabut tipis, 
langit berwarna jingga, gaya fotografi profesional, highly detailed

Negative Prompt: blurry, low quality, watermark, text, 
oversaturated, people, crowd

Sampling Steps: 28
Sampler: DPM++ 2M Karras
CFG Scale: 7
Width: 512
Height: 512
Seed: -1

Klik Generate dan tunggu beberapa detik. Kalau GPU Teman-Taman lumayan, gambar bakal muncul dalam 5-15 detik.

Output yang diharapkan: Sebuah gambar pemandangan gunung dengan suasana sunrise, kabut, dan langit jingga. Mungkin belum sempurna, tapi itu gambar pertama Teman-Taman dengan Stable Diffusion!

Kenapa Seed Penting?

Seed adalah angka acak yang menentukan variasi output. Kalau Teman-Taman pakai seed yang sama dengan prompt dan setting identik, hasilnya bakal sama persis. Ini berguna buat:

  • Reproduksi gambar yang sudah dibikin

  • Eksperimen: ganti satu kata di prompt sambil jaga seed sama, lalu bandingkan hasilnya

  • Debugging: kalau hasil jelek, bisa reproduce dan analisa masalahnya

Set Seed: -1 buat hasil acak setiap kali generate.

Step 3: Download dan Pasang Model Baru

Model default (v1.5) udah bagus, tapi ada banyak model lain yang bisa Teman-Taman pakai. Ini yang bikin MUGHU jatuh cinta sama ekosistem Stable Diffusion—komunitas terus bikin model baru dengan gaya dan kekuatan berbeda.

Jenis-Jenis Model

  • Checkpoint: model utama yang bisa generate gambar dari nol. Ukurannya 2-7 GB

  • LoRA (Low-Rank Adaptation): model tambahan kecil (10-500 MB) yang "di-layer" di atas checkpoint buat nambah gaya/karakter tertentu

  • Textual Inversion (Embedding): file kecil yang nambah konsep baru ke model

  • VAE: model yang ngurusin decoding dari latent space ke pixel space. Bisa improve warna dan detail

Cara Download Model dari Civitai

Home - Civitai Education

Civitai adalah platform terbesar buat download model Stable Diffusion. MUGHU sering banget cari model di sini soalnya ada preview, rating, dan komentar dari komunitas.

  1. Buka civitai.com

  2. Cari model dengan filter "Checkpoint"

  3. Download file .safetensors (jangan .ckpt soalnya kurang aman)

  4. Taruh file di folder models/Stable-diffusion/ di direktori AUTOMATIC1111

  5. Di Web UI, klik tombol Refresh di dropdown model

  6. Pilih model baru dari dropdown

Model Populer yang MUGHU Rekomendasikan

Model

Ukuran

Gaya

Cocok Buat

SD 1.5

4 GB

Serbaguna

Semua jenis gambar, cepat

SDXL 1.0

6.5 GB

High-res, realistis

Gambar detail 1024x1024

SD 3.5 Large

8 GB

Premium quality

Professional use, 1 MP

SD 3.5 Medium

2.5 GB

Balance

Consumer hardware, 0.25-2 MP

SDXL Turbo

6.5 GB

Real-time

Generate 1-4 steps

DreamShaper

2 GB

Artistik

Illustration, fantasy

Realistic Vision

2 GB

Fotorealistik

Portrait, foto realistis

MUGHU pernah pakai Realistic Vision buat project foto profil AI buat klien, dan hasilnya bikin klien nggak percaya itu AI. Tapi buat ilustrasi buku anak, MUGHU pakai DreamShaper soalnya gayanya lebih artistik dan lembut.

Cara Pakai LoRA

LoRA itu kayak "filter Instagram" buat Stable Diffusion—tapi lebih powerful. Misalnya Teman-Taman mau bikin gambar dengan gaya anime spesifik, tinggal download LoRA anime dan panggil di prompt.

  1. Download LoRA dari Civitai (file .safetensors, biasanya 50-300 MB)

  2. Taruh di folder models/Lora/

  3. Refresh model list di Web UI

  4. Panggil di prompt dengan format: <lora:nama_lora:1.0>

Contoh:

CODE
Prompt: a beautiful girl standing in a flower garden, 
<lora:animeStyle_v2:0.8>, highly detailed, vibrant colors

Angka 0.8 itu strength LoRA. 1.0 berarti full strength, 0.5 berarti setengah. MUGHU biasanya mulai dari 0.7 dan adjust dari situ.

Error: Model Tidak Muncul di Dropdown

Kalau model udah didownload tapi nggak muncul di dropdown:

  • Pastikan file di folder yang benar (models/Stable-diffusion/ buat checkpoint, models/Lora/ buat LoRA)

  • Klik tombol Refresh di sebelah dropdown

  • Restart Web UI

  • Cek apakah file .safetensors nggak corrupt (coba download ulang)

Step 4: Image-to-Image dan Inpainting

Sampai sini Teman-Taman udah bisa bikin gambar dari teks. Tapi Stable Diffusion punya kemampuan lain yang equally powerful: memodifikasi gambar yang sudah ada.

Image-to-Image (img2img)

Img2img itu kayak bikin remix dari gambar yang sudah ada. Teman-Taman kasih gambar input, kasih prompt baru, dan model bakal "mengecat ulang" gambar itu sesuai prompt.

Kenapa ini berguna? MUGHU pernah punya foto klien yang mau diubah jadi ilustrasi kartun. Daripada nulis prompt panjang buat ngegambar ulang dari nol, MUGHU pakai img2img biar struktur komposisi foto aslinya tetap dipertahankan.

Cara pakai img2img:

  1. Buka tab img2img di AUTOMATIC1111

  2. Drag & drop gambar ke area upload

  3. Tulis prompt yang mendeskripsikan transformasi yang diinginkan

  4. Set Denoising Strength (0.0-1.0)

Denoising Strength adalah kontrol utama di img2img:

  • 0.1-0.3: perubahan minimal, gambar mirip aslinya

  • 0.4-0.6: balance, struktur dipertahankan tapi gaya berubah (favorit MUGHU)

  • 0.7-0.9: hampir bikin ulang, cuma pakai gambar asli sebagai "inspirasi"

  • 1.0: sama kayak txt2img, gambar asli diabaikan

Contoh praktis:

CODE
Prompt: oil painting style, impressionist, thick brush strokes, 
vibrant colors, masterpiece

Denoising Strength: 0.55
Sampling Steps: 30
CFG Scale: 7.5

Inpainting: Edit Bagian Spesifik Gambar

Inpainting itu kayak "Photoshop magic" tapi versi AI. Teman-Taman bisa milih area tertentu di gambar dan kasih model ngeganti area itu dengan konten baru.

Cara melakukan inpainting:

  1. Di tab img2img, pilih sub-tab Inpaint

  2. Upload gambar

  3. Gunakan brush buat "cat" area yang mau diganti

  4. Tulis prompt buat konten pengganti

  5. Set Denoising Strength (MUGHU biasanya 0.6-0.75 buat inpainting)

  6. Klik Generate

Contoh: MUGHU punya foto landscape yang bagus tapi ada orang photobomb di background. MUGHU mask orang itu dan tulis prompt "empty grass field, clear sky". Model bakal ganti orang itu dengan lapangan rumput yang natural.

Outpainting: Perluas Gambar ke Luar Batas

Outpainting adalah kebalikan dari inpainting—bukan ngapus, tapi nambah. Teman-Taman bisa perluas gambar ke atas, bawah, kiri, atau kanan, dan model bakal "menebak" apa yang ada di luar frame asli.

  1. Pilih sub-tab Outpaint di img2img

  2. Upload gambar

  3. Set Pixels to expand (contoh: 128 pixels)

  4. Set arah ekspansi (up, down, left, right, atau all)

  5. Tulis prompt yang mendeskripsikan scene secara keseluruhan

  6. Generate

MUGHU pernah pakai outpainting buat nge-extend foto produk klien yang crop-nya kepotong. Daripada reshoot, MUGHU outpaint dan hasilnya mulus kayak memang foto aslinya segitu.

Error: Hasil img2img Terlalu Berbeda dari Aslinya

Kalau hasil img2img terlalu jauh dari gambar asli:

  • Turunkan Denoising Strength ke 0.3-0.4

  • Naikkan Mask blur kalau di inpainting (coba 4-8)

  • Pakai sampler yang lebih konsisten kayak DDIM

  • Pastikan prompt mendeskripsikan gambar asli juga, bukan cuma perubahan yang diinginkan

Step 5: Fine-Tuning dengan DreamBooth

Sekarang kita masuk ke level yang lebih advanced. Fine-tuning adalah proses ngelatih model dengan data Teman-Taman sendiri biar bisa generate subjek spesifik—kayak wajah orang, produk tertentu, atau gaya artistik unik.

MUGHU pernah fine-tune model buat salah satu klien yang mau bikin avatar AI dengan wajah karyawannya. Hasilnya? Avatar yang konsisten dan recognizable. Tapi prosesnya nggak gampang—MUGHU bikin beberapa kesalahan yang MUGHU mau share biar Teman-Taman nggak ngulang.

Apa itu DreamBooth?

DreamBooth adalah teknik yang dikembangkan Google Research dan Boston University di 2022. Intinya, kita kasih model beberapa foto subjek (5-20 foto), dan model belajar ngegantiin subjek itu ke gambar baru dengan berbagai konteks.

Persiapan Dataset

Ini bagian yang paling krusial. Kualitas dataset menentukan 80% hasil akhir.

Aturan dataset yang MUGHU pelajari dengan susah payah:

  • 10-20 foto subjek dari berbagai angle dan ekspresi

  • Resolusi minimal 512x512 (lebih besar lebih bagus)

  • Background bervariasi—jangan semua foto di studio yang sama

  • Pencahayaan beragam—siang, malam, indoor, outdoor

  • Hindari foto dengan watermark atau overlay teks

  • Crop foto fokus ke subjek, buang elemen yang nggak relevan

Kesalahan MUGHU dulu: MUGHU cuma pakai 5 foto dan semuanya background putih. Hasilnya model overfit—bikin gambar yang selalu ada background putih kayak di studio foto. Setelah MUGHU tambah foto dengan background variatif, hasilnya jadi jauh lebih natural.

Install Extension DreamBooth

AUTOMATIC1111 punya extension DreamBooth yang gampang dipakai. Buka tab ExtensionsAvailable → cari "DreamBooth" → klik Install. Restart Web UI setelah install.

Proses Training DreamBooth

  1. Siapkan folder dataset: data/dreambooth/my_subject/ dengan 10-20 foto

  2. Buka tab DreamBooth di Web UI

  3. Isi konfigurasi:

CODE
Model Name: my_subject_model
Save Settings: Save Every N Epochs = 1
Training Steps: 1500-3000
Learning Rate: 1e-6
Batch Size: 1
Gradient Accumulation Steps: 4
Resolution: 512
Mixed Precision: fp16
  1. Pilih base model (MUGHU biasanya pakai SD 1.5 buat fine-tune soalnya lebih stabil)

  2. Klik Train

Proses training bisa makan 30 menit sampai 2 jam tergantung GPU dan jumlah foto.

Pemakaian Model Hasil Training

Setelah training selesai, model baru bakal muncul di folder models/dreambooth/. Load model itu dan pakai dengan prompt:

CODE
Prompt: a photo of [unique_identifier] person sitting in a coffee shop, 
natural lighting, bokeh background, professional photography

Negative Prompt: blurry, deformed, extra limbs, low quality

[unique_identifier] adalah token unik yang Teman-Taman set saat training. Model bakal recognize token ini sebagai subjek yang dilatih.

Error Umum DreamBooth

Hasil overfit (semua gambar mirip foto training)

  • Kurangi training steps

  • Turunkan learning rate ke 5e-7

  • Tambah variasi di dataset

Hasil underfit (subjek nggak recognizable)

  • Tambah training steps

  • Naikkan learning rate ke 2e-6

  • Tambah jumlah foto dataset

VRAM out of memory saat training

  • Pakai --medvram atau --lowvram di launch arguments

  • Turunkan resolution ke 384 (tapi kualitas bakal turun)

  • Pakai gradient checkpointing

  • Kurangi batch size

Step 6: Pakai Stable Diffusion 3.5 dengan Diffusers

Sekarang kita loncat ke level yang lebih code-heavy. Stable Diffusion 3.5 adalah versi terbaru dan paling powerful dari keluarga Stable Diffusion. MUGHU mau tunjukin cara pakai lewat library diffusers dari Hugging Face.

Kenapa pakai diffusers, bukan AUTOMATIC1111? Soalnya SD 3.5 Large punya 8.1 miliar parameter dan arsitekturnya beda total dari versi sebelumnya. AUTOMATIC1111 butuh update dan konfigurasi ekstra, sementara diffusers udah support langsung.

Install Dependencies

BASH
pip install -U diffusers transformers accelerate torch

Generate Gambar dengan SD 3.5 Large

PYTHON
import torch
from diffusers import StableDiffusion3Pipeline

# Load model SD 3.5 Large
pipe = StableDiffusion3Pipeline.from_pretrained(
    "stabilityai/stable-diffusion-3.5-large",
    torch_dtype=torch.bfloat16
)
pipe = pipe.to("cuda")

# Generate gambar
image = pipe(
    "A capybara holding a sign that reads Hello World",
    num_inference_steps=28,
    guidance_scale=3.5,
).images[0]

image.save("capybara.png")
print("Gambar tersimpan di capybara.png")

Output yang diharapkan:

CODE
Loading pipeline components...
Loading checkpoint shards: 100%|██████████| 3/3 [00:12<00:00, 4.0s/it]
Gambar tersimpan di capybara.png

File capybara.png bakal muncul di folder yang sama dengan script. Buka dan Teman-Taman bakal lihat gambar capybara yang detail dan realistis.

Kenapa bfloat16?

bfloat16 adalah tipe data yang menghemat VRAM tanpa ngorbanin kualitas. SD 3.5 Large butuh banyak VRAM, dan tanpa bfloat16, model bisa nggak muat di GPU 8 GB.

Quantization: Jalan di VRAM Kecil

Kalau VRAM Teman-Taman nggak cukup buat SD 3.5 Large (butuh ~16 GB VRAM tanpa quantization), MUGHU punya solusi: 4-bit quantization.

BASH
pip install bitsandbytes
PYTHON
from diffusers import BitsAndBytesConfig, SD3Transformer2DModel
from diffusers import StableDiffusion3Pipeline
import torch

model_id = "stabilityai/stable-diffusion-3.5-large"

# Konfigurasi quantization 4-bit
nf4_config = BitsAndBytesConfig(
    load_in_4bit=True,
    bnb_4bit_quant_type="nf4",
    bnb_4bit_compute_dtype=torch.bfloat16
)

# Load transformer dengan quantization
model_nf4 = SD3Transformer2DModel.from_pretrained(
    model_id,
    subfolder="transformer",
    quantization_config=nf4_config,
    torch_dtype=torch.bfloat16
)

# Load pipeline dengan transformer yang sudah di-quantize
pipeline = StableDiffusion3Pipeline.from_pretrained(
    model_id,
    transformer=model_nf4,
    torch_dtype=torch.bfloat16
)

# Enable CPU offload buat hemat VRAM lebih lanjut
pipeline.enable_model_cpu_offload()

# Generate
prompt = "A whimsical and creative image depicting a hybrid creature that is a mix of a waffle and a hippopotamus, basking in a river of melted butter amidst a breakfast-themed landscape"

image = pipeline(
    prompt=prompt,
    num_inference_steps=28,
    guidance_scale=4.5,
    max_sequence_length=512,
).images[0]

image.save("waffle_hippo.png")
print("Gambar tersimpan!")

Dengan quantization 4-bit dan CPU offload, SD 3.5 Large bisa jalan di GPU dengan sekitar 6-8 GB VRAM. Memang agak lebih lambat, tapi hasilnya tetap berkualitas tinggi.

MUGHU pernah test ini di RTX 3060 12 GB dan jalan mulus. Waktu generate-nya sekitar 45 detik per gambar dengan 28 steps. Bukan secepat RTX 4090, tapi cukup praktis buat workflow harian.

Error: KeyError atau AttributeError saat Load Model

Kalau muncul error kayak ini, biasanya versi diffusers terlalu lama:

BASH
pip install --upgrade diffusers transformers accelerate

Error: CUDA Out of Memory

CODE
RuntimeError: CUDA out of memory. Tried to allocate 2.00 GiB

Solusi bertahap:

  1. Pastikan pakai torch.bfloat16 (bukan float32)

  2. Tambah pipeline.enable_model_cpu_offload() setelah load

  3. Pakai quantization 4-bit (lihat kode di atas)

  4. Kalau masih OOM, pakai SD 3.5 Medium (2.5 miliar parameter, lebih ringan):

PYTHON
from diffusers import StableDiffusion3Pipeline
import torch

pipe = StableDiffusion3Pipeline.from_pretrained(
    "stabilityai/stable-diffusion-3.5-medium",
    torch_dtype=torch.bfloat16
)
pipe = pipe.to("cuda")

image = pipe(
    "sunset di Pantai Kuta Bali, ombak tenang, langit oranye",
    num_inference_steps=28,
    guidance_scale=3.5,
).images[0]

image.save("kuta_sunset.png")

Step 7: ControlNet untuk Kontrol Presisi

ControlNet adalah salah satu inovasi paling penting di ekosistem Stable Diffusion. Ini bikin kita bisa ngontrol komposisi gambar dengan presisi yang nggak mungkin dilakukan dengan prompt saja.

MUGHU ingat banget pertama kali pakai ControlNet—rasanya kayak "membuka mata" soal apa yang AI image generation bisa lakukan. Tiba-tiba MUGHU bisa generate gambar dengan pose yang persis kayak yang MUGHU mau, bukan lagi "berharap" model ngerti maksud prompt.

Apa itu ControlNet?

ControlNet bekerja dengan cara duplikasi bobot neural network jadi dua copy: "locked" dan "trainable". Copy yang locked jaga model asli tetap utuh, sementara copy yang trainable belajar kondisi baru (kayak edge map, depth map, atau pose skeleton). Pendekatan ini bikin training stabil dan nggak merusak model dasar.

Install ControlNet di AUTOMATIC1111

  1. Buka tab ExtensionsAvailable

  2. Cari "ControlNet"

  3. Klik Install

  4. Restart Web UI

Download Model ControlNet

Download model ControlNet dari Hugging Face. Beberapa model populer:

Model

Fungsi

Use Case

OpenPose

Deteksi pose tubuh

Pose karakter yang spesifik

Canny

Deteksi tepi

Menjaga struktur garis

Depth

Depth map

Menjaga kedalaman 3D

Scribble

Sketsa kasar

Dari coret-coretan jadi gambar

Lineart

Garis bersih

Dari line art jadi render

Tile

Tile-based

Upscaling tanpa perubahan komposisi

Taruh file di folder extensions/sd-webui-controlnet/models/.

Cara Pakai ControlNet

  1. Di tab txt2img atau img2img, buka panel ControlNet di bawah

  2. Upload gambar kontrol (misal: gambar dengan pose yang diinginkan)

  3. Pilih Control Type (misal: OpenPose)

  4. Centang Enable

  5. Set preprocessor sesuai (misal: openpose untuk OpenPose)

  6. Generate

Contoh workflow MUGHU:

  • MUGHU punya foto pose dansa yang keren

  • MUGHU mau bikin ilustrasi karakter anime dengan pose yang sama

  • Upload foto ke ControlNet, pilih OpenPose

  • Tulis prompt: "anime girl dancing, dynamic pose, flowing dress, cherry blossom background"

  • Generate

Hasilnya: karakter anime dengan pose yang persis sama kayak foto asli. Ini game-changer buat workflow kreatif.

ControlNet dengan Depth Map

Depth map itu kayak "peta 3D" dari gambar 2D. ControlNet bisa pakai depth map ini buat jaga kedalaman dan struktur 3D gambar.

PYTHON
# Contoh: generate depth map dari gambar
from controlnet_aux import MidasDetector

midas = MidasDetector.from_pretrained("lllyasviel/Annotators")
depth_map = midas(input_image)
depth_map.save("depth.png")

Lalu pakai depth.png sebagai input ControlNet dengan control type Depth.

Error: ControlNet Tidak Muncul

Kalau panel ControlNet nggak muncul setelah install:

  • Pastikan extension udah terinstall dengan benar (cek di Extensions → Installed)

  • Restart Web UI sepenuhnya (tutup terminal, buka lagi)

  • Cek apakah model ControlNet udah ada di folder yang benar

  • Pastikan setting Enable ControlNet di Settings → ControlNet udah aktif

Step 8: API dan Automasi dengan Python

Untuk Teman-Taman yang mau bikin aplikasi atau automasi, AUTOMATIC1111 punya API mode yang bisa dipanggil dari script Python. Ini yang MUGHU pakai buat project production—generate ratusan gambar otomatis tanpa buka browser.

Aktifkan API Mode

Edit webui-user.bat atau webui-user.sh:

BASH
# Windows
set COMMANDLINE_ARGS=--api --xformers

# Linux
export COMMANDLINE_ARGS="--api --xformers"

Restart Web UI. API bakal tersedia di http://127.0.0.1:7860/docs (Swagger UI).

Script Python untuk Generate via API

PYTHON
import requests
import json
import base64
from pathlib import Path

# URL API AUTOMATIC1111
url = "http://127.0.0.1:7860/sdapi/v1/txt2img"

# Konfigurasi generate
payload = {
    "prompt": "foto pemandangan sawah di Bali saat pagi hari, kabut tipis, golden hour, professional photography, 8k",
    "negative_prompt": "blurry, low quality, watermark, text, people",
    "steps": 28,
    "width": 512,
    "height": 512,
    "cfg_scale": 7,
    "sampler_name": "DPM++ 2M Karras",
    "seed": -1,
    "batch_size": 1,
}

# Kirim request
response = requests.post(url, json=payload)

# Proses response
if response.status_code == 200:
    result = response.json()
    # Image dikembalikan sebagai base64 string
    image_data = base64.b64decode(result["images"][0])
    
    # Simpan ke file
    output_path = Path("sawah_bali.png")
    output_path.write_bytes(image_data)
    print(f"Gambar tersimpan di {output_path}")
    
    # Print info
    info = json.loads(result["info"])
    print(f"Seed: {info['seed']}")
    print(f"Steps: {info['steps']}")
    print(f"Model: {info.get('model_hash', 'N/A')}")
else:
    print(f"Error: {response.status_code}")
    print(response.text)

Output yang diharapkan:

CODE
Gambar tersimpan di sawah_bali.png
Seed: 3456789012
Steps: 28
Model: aabbccdd

Batch Generate dengan Loop

PYTHON
prompts = [
    "foto kucing oren duduk di atas meja kayu, natural lighting",
    "foto kucing oren tidur di sofa, cozy atmosphere",
    "foto kucing oren bermain dengan benang, playful mood",
    "foto kucing oren di taman, spring season, flowers",
    "foto kucing oren di jendela, sunset background, silhouette",
]

for i, prompt in enumerate(prompts):
    payload["prompt"] = prompt
    response = requests.post(url, json=payload)
    
    if response.status_code == 200:
        result = response.json()
        image_data = base64.b64decode(result["images"][0])
        Path(f"kucing_{i+1}.png").write_bytes(image_data)
        print(f"Kucing {i+1} tersimpan!")
    else:
        print(f"Error di prompt {i+1}: {response.status_code}")

MUGHU pernah pakai approach ini buat generate 500 thumbnail buat YouTube channel klien. Kalau manual, butuh berminggu-minggu. Dengan API loop, selesai dalam semalam.

Error: Connection Refused

CODE
requests.exceptions.ConnectionError: HTTPConnectionPool: Connection refused

Solusi:

  • Pastikan Web UI lagi jalan (cek terminal, jangan di-close)

  • Pastikan --api ada di launch arguments

  • Cek port: default 7860, bisa diubah dengan --port 8080

  • Kalau pakai WSL, pastikan port forwarding sudah di-set

Step 9: Studi Kasus—Project Brand Asset untuk Startup Jakarta

MUGHU mau share pengalaman nyata pakai Stable Diffusion buat project klien. Ini bukan teori—ini data dan lessons learned dari lapangan.

Background

Awal 2024, sebuah startup f&b di Jakarta hubungi MUGHU. Mereka butuh brand visual assets—dari ilustrasi menu, social media content, sampai packaging design. Budget mereka terbatas, dan hiring illustrator profesional di luar jangkauan. Mereka denger soal AI image generation dan mau coba.

Challenge

  • Budget: Rp 15 juta (sangat terbatas untuk 200+ assets)

  • Deadline: 3 minggu

  • Brand guideline: warna spesifik (#E67E22, #2C3E50), gaya ilustrasi flat design

  • Konsistensi: semua asset harus terlihat "satu brand"

  • Tim mereka nggak punya pengalaman AI sama sekali

Approach

MUGHU rancang workflow sebagai berikut:

  1. Fine-tune model dengan 50 ilustrasi referensi yang sesuai brand guideline

  2. Buat prompt template buat tiap kategori asset

  3. Batch generate via API buat efisiensi

  4. Post-processing dengan ControlNet buat konsistensi komposisi

Implementation

Tahap 1: Dataset Preparation (Hari 1-3)

MUGHU kumpulin 50 ilustrasi flat design dengan palet warna yang sesuai. MUGHU bikin variasi: makanan, minuman, interior, abstract patterns. Semua di-resize ke 512x512.

Tahap 2: Fine-tuning (Hari 4-5)

PYTHON
# Konfigurasi DreamBooth training
config = {
    "model_name": "brand_flat_design",
    "instance_prompt": "flat design illustration in [brand] style",
    "class_prompt": "flat design illustration",
    "instance_data_dir": "data/brand_assets",
    "class_data_dir": "data/flat_design_reg",
    "resolution": 512,
    "train_batch_size": 1,
    "gradient_accumulation_steps": 4,
    "learning_rate": 1e-6,
    "max_train_steps": 2500,
    "mixed_precision": "fp16",
    "save_every_n_epochs": 1,
}

Training selesai dalam 1.5 jam di RTX 3080 10 GB.

Tahap 3: Prompt Engineering (Hari 6-7)

MUGHU bikin prompt template buat tiap kategori:

CODE
# Template menu illustration
"flat design illustration of [FOOD_ITEM], [brand] style, 
warm orange and navy blue color palette, clean lines, 
minimalist, white background, food photography inspired"

# Template social media
"flat design illustration of [SCENE], [brand] style, 
warm orange and navy blue color palette, social media format, 
playful, engaging composition"

Tahap 4: Batch Generation (Hari 8-14)

PYTHON
import csv

# Baca list asset dari CSV
with open("assets_list.csv", "r") as f:
    assets = list(csv.DictReader(f))

for asset in assets:
    prompt = asset["prompt_template"].replace("[FOOD_ITEM]", asset["item"])
    
    payload = {
        "prompt": prompt,
        "negative_prompt": "realistic, 3d render, photo, complex, busy, watermark",
        "steps": 30,
        "width": 1024,
        "height": 1024,
        "cfg_scale": 8,
        "sampler_name": "DPM++ 2M Karras",
        "seed": -1,
    }
    
    response = requests.post(url, json=payload)
    # Save image...

Results

Metrik

Target

Aktual

Total assets

200+

237

Waktu produksi

3 minggu

2.5 minggi

Biaya

Rp 15 juta

Rp 12.3 juta

Konsistensi brand

85%

91%

Revisi dari klien

<20%

12%

Resolusi rata-rata

1024x1024

1024x1024

Key Learnings

Dari project ini, MUGHU pelajari beberapa hal berharga:

  • Fine-tuning itu investasi wajib buat konsistensi brand. Sekali train, bisa dipakai buat semua asset

  • Prompt template bikin workflow scalable dan reproducible

  • ControlNet sangat penting buat komposisi yang konsisten—terutama buat packaging design yang punya layout spesifik

  • Post-processing manual masih diperlukan buat ~15% asset yang hasilnya kurang memuaskan

  • Klien feedback cycle harus cepat—MUGHU bikin sistem dimana klien bisa lihat preview dalam 24 jam

  • Backup model itu penting. Sekali MUGHU kehilangan model hasil fine-tune karena hard drive rusak, dan harus retrain dari awal

Perbandingan Versi Stable Diffusion

Buat Teman-Taman yang bingung mau pakai versi yang mana, ini perbandingan lengkap:

Versi

Parameter

Resolusi

VRAM Min

Kecepatan

Kualitas

Lisensi

SD 1.5

983M

512x512

4 GB

Cepat

Bagus

OpenRAIL-M

SD 2.1

~983M

768x768

5 GB

Cepat

Bagus+

OpenRAIL-M

SDXL 1.0

3.5B

1024x1024

8 GB

Sedang

Sangat bagus

OpenRAIL-M

SDXL Turbo

3.5B

1024x1024

6 GB

Sangat cepat

Bagus

OpenRAIL-M

SD 3.0

800M-8B

Hingga 2MP

8-16 GB

Sedang

Sangat bagus

SAI Community

SD 3.5 Large

8.1B

1 MP

~16 GB

Lambat

Terbaik

SAI Community

SD 3.5 Turbo

8.1B

1 MP

~12 GB

Cepat

Sangat bagus

SAI Community

SD 3.5 Medium

2.5B

0.25-2 MP

9.9 GB

Sedang

Bagus+

SAI Community

Rekomendasi Berdasarkan Use Case

Buat eksplorasi dan belajar: MUGHU rekomendasi SD 1.5 atau SDXL 1.0. Ringan, cepat, dan ekosistemnya paling matang. LoRA, ControlNet, dan extension-nya paling banyak.

Buat produksi profesional:SDXL 1.0 atau SD 3.5 Large. Kualitas gambar yang premium, resolusi tinggi, dan prompt adherence terbaik di kelasnya.

Butuh kecepatan:SDXL Turbo atau SD 3.5 Large Turbo. Generate dalam 1-4 steps, cocok buat real-time application atau iterasi cepat.

Hardware terbatas:SD 3.5 Medium cuma butuh 9.9 GB VRAM dan bisa generate 0.25-2 megapixel. Atau pakai SD 1.5 dengan --medvram.

Buat fine-tuning:SD 1.5 masih paling stabil buat DreamBooth dan LoRA training. Komunitasnya paling aktif dan dokumentasinya paling lengkap.

Tips dan Trik dari Pengalaman MUGHU

Setahun lebih ngoprek Stable Diffusion bikin MUGHU punya beberapa tips yang biasanya nggak ada di dokumentasi resmi:

Tips Prompt Engineering

  • Pakai keyword berurutan dari penting ke kurang penting. Model ngasih bobot lebih ke kata-kata awal

  • Tulis prompt kayak lagi ngomong sama artist, bukan kayak nulis query database. "A serene mountain landscape at dawn" lebih bagus dari "mountain landscape dawn serene"

  • Eksperimen dengan artist names: "by Greg Rutkowski" atau "by Studio Ghibli" bisa ngubah gaya drastis

  • Pakai weight syntax: (keyword:1.3) buat nambah bobot, [keyword:0.7] buat kurangi

  • Negative prompt jangan terlalu panjang. MUGHU pernah pakai 200 kata negative prompt dan hasilnya jadi aneh

Tips Performa

  • Pakai --xformers buat hemat VRAM dan percepat generate

  • Matikan "Always save all images" kalau lagi eksperimen biar storage nggak penuh

  • Pakai --medvram kalau VRAM 6-8 GB, --lowvram kalau 4 GB

  • Generate di resolusi asli model (512 buat v1.5, 1024 buat SDXL) lalu upscale, jangan langsung generate di resolusi besar

  • Pakai VAE yang tepat: VAE yang berbeda bisa ngasilin warna dan detail yang berbeda signifikan

Tips Workflow

  • Save prompt yang bagus. AUTOMATIC1111 punya history, tapi MUGHU juga simpan di Notion biar gampang dicari

  • Buat prompt library buat tiap klien/project. Konsistensi itu kunci

  • Pakai seed buat A/B test: ganti satu parameter, jaga seed sama, bandingkan hasil

  • Upscale dengan RealESRGAN buat hasil final. Generate di 512 lalu upscale ke 2048 lebih cepat dari generate langsung di 2048

  • Backup model dan LoRA ke cloud storage. MUGHU pernah kehilangan 3 bulan kerja karena lupa backup

Kesalahan yang Sering MUGHU Temui di Komunitas

MUGHU sering banget lihat orang bikin kesalahan yang sama di grup-grup komunitas Stable Diffusion Indonesia. Ini yang paling umum:

  1. Langsung pakai model besar tanpa ngerti dasar. SDXL emang bagus, tapi kalau belum ngerti prompt, sampling, dan CFG, hasilnya tetap nggak optimal. Mulai dari SD 1.5 dulu.

  2. Nggak pakai negative prompt. Ini kayak masak tanpa bumbu. Negative prompt itu separuh dari kualitas hasil akhir.

  3. Terlalu banyak steps. 50 steps nggak jauh lebih bagus dari 28 steps, tapi generate-nya hampir 2x lebih lama. MUGHU hampir nggak pernah pakai di atas 35.

  4. CFG scale terlalu tinggi. CFG 15+ bikin gambar over-saturated dan artifisial. 7-9 itu sweet spot buat hampir semua use case.

  5. Nggak pakai VAE. VAE yang tepat bisa bikin warna lebih hidup dan detail lebih tajam. Ini upgrade gratis yang banyak orang skip.

Troubleshooting Lengkap

Gambar Hasilnya Hitam / Blok Warna

Penyebab: VAE nggak ter-load atau corrupt

Solusi:

BASH
# Download VAE yang sesuai
# Untuk SD 1.5: https://huggingface.co/stabilityai/sd-vae-ft-mse-original
# Taruh di models/VAE/
# Pilih VAE di Settings → User interface → Quicksettings list

Gambar Hasilnya Noise / Abstrak

Penyebab: Model checkpoint corrupt atau salah format

Solusi:

  • Download ulang model dari sumber terpercaya (Civitai atau Hugging Face)

  • Pastikan file .safetensors nggak corrupt: cek ukuran file, harus sesuai dengan yang ditulis di halaman download

  • Coba model lain buat isolasi masalah

Generate Sangat Lambat

Penyebab: Banyak kemungkinan

Solusi bertahap:

  1. Cek GPU usage dengan nvidia-smi — kalau GPU 100% berarti model lagi jalan normal, cuma emang lambat

  2. Pastikan --xformers aktif

  3. Turunkan steps ke 20

  4. Turunkan resolusi ke 512x512

  5. Cek apakah ada proses lain yang pakai GPU

  6. Kalau pakai CPU, pertimbangkan upgrade ke GPU

Error: "RuntimeError: Found no NVIDIA driver"

BASH
# Cek instalasi driver
nvidia-smi

# Kalau muncul error, install driver NVIDIA
# Ubuntu:
sudo apt install nvidia-driver-535

# Windows: download dari https://www.nvidia.com/Download/index.aspx

Error: "ModuleNotFoundError: No module named 'xformers'"

BASH
pip install xformers
# Atau hapus --xformers dari launch arguments kalau nggak butuh

Error: "FileNotFoundError: model.ckpt not found"

BASH
# Download model manual
# Taruh di: stable-diffusion-webui/models/Stable-diffusion/
# File yang dibutuhkan: v1-5-pruned-emaonly.safetensors
# Download dari: https://huggingface.co/runwayml/stable-diffusion-v1-5

Hasil Gambar Berbeda dari Tutorial

Ini wajar banget. Stable Diffusion itu nondeterministik (kecuali seed di-fix). Faktor yang ngaruh:

  • Versi model yang dipakai

  • Versi library (PyTorch, diffusers, transformers)

  • Hardware (GPU yang beda bisa ngasilin floating point yang sedikit beda)

  • Setting yang sedikit beda

Kalau mau hasil yang persis sama, pakai seed yang sama dengan model yang sama.

Pertimbangan Etika dan Lisensi

Sebagai orang yang udah lama di dunia ini, MUGHU merasa perlu bahas ini. Stable Diffusion itu tool yang powerful, dan dengan great power comes great responsibility.

Lisensi Model

  • SD 1.5 sampai SDXL: pakai lisensi CreativeML OpenRAIL-M. Bebas dipakai komersial, tapi ada larangan tertentu (kriminal, harassment, eksploitasi anak, dll)

  • SD 3.5: pakai Stability AI Community License. Gratis buat komersial selama pendapatan tahunan di bawah $1 juta. Di atas itu butuh Enterprise License

Isu Hak Cipta

Model dilatih dari miliaran gambar dari internet, banyak yang berhak cipta. Ada gugatan hukum yang masih berlangsung, termasuk dari Getty Images terhadap Stability AI. Kalau Teman-Taman pakai Stable Diffusion buat komersial, waspadai potensi isu ini.

Penting: Gambar yang dihasilkan Stable Diffusion secara umum bebas dipakai komersial sesuai lisensi model, tapi ini belum sepenuhnya teruji di pengadilan. Konsultasi dengan legal counsel buat use case komersial besar.

Bias dalam Model

Model dilatih terutama dari gambar dengan deskripsi bahasa Inggris. Akibatnya:

  • Prompt bahasa Inggris ngasilin hasil lebih baik

  • Representasi budaya Barat lebih dominan

  • Keragaman etnis dan budaya terbatas

Stability AI udah berusaha improve ini di SD 3.5 dengan training data yang lebih beragam, tapi isu ini masih ada.

Konten Sensitif

Stable Diffusion lebih permisif dibanding kompetitor, tapi itu bukan berarti bebas batas. Stability AI punya Acceptable Use Policy yang melarang:

  • Konten yang melanggar hukum

  • Eksploitasi anak

  • Harassment atau doxing

  • Disinformasi yang merugikan

Sebagai pengguna, kita bertanggung jawab atas apa yang kita generate.

Sumber dan Komunitas

Buat Teman-Taman yang mau belajar lebih dalam, ini sumber yang MUGHU rekomendasikan:

Komunitas Indonesia juga ada lho. MUGHU sering aktif di grup-grup telegram dan discord buat diskusi Stable Diffusion. Cari aja "Stable Diffusion Indonesia" di platform favorit Teman-Taman.

Next Steps Setelah Tutorial Ini

Setelah Teman-Taman ngerti dasar-dasar di tutorial ini, beberapa hal yang bisa dieksplorasi:

  • LoRA training buat gaya atau karakter spesifik (lebih cepat dari DreamBooth)

  • ComfyUI buat workflow node-based yang lebih fleksibel

  • Stable Video Diffusion buat generate video dari gambar

  • Textual Inversion buat nambah konsep kecil ke model

  • Hypernetwork buat nambah gaya artistik tertentu

  • Upscaling dengan ESRGAN buat resolusi super tinggi

  • Integrasi dengan aplikasi lewat API buat automasi production

Perbandingan Model: Mana yang Cocok buat Teman-Taman?

MUGHU sering ditanya, "Kalau mau mulai, model mana yang dipakai?" Jawabannya tergantung sama hardware dan tujuan Teman-Taman. Tapi biar gampang, MUGHU bikin breakdown-nya di sini.

SD 1.5 — Ringan dan Stabil

Model ini punya 983 juta parameter. Ukurannya relatif kecil, jadi jalan mulus di GPU dengan VRAM 4 GB pun. Cocok buat yang baru kenal Stable Diffusion dan mau eksperimen tanpa ngabisin banyak resource.

Kelebihannya, komunitasnya udah sangat matang. Ribuan LoRA, textual inversion, dan extension dibikin buat SD 1.5. Kalau Teman-Taman cari model fine-tune di Civitai, kebanyakan masih berbasis SD 1.5.

Kekurangannya, kualitas gambar nggak sebagus SDXL atau SD 3.5. Resolusi native-nya 512×512, jadi kalau mau gambar lebih besar perlu upscaling. Tangan dan wajah juga sering berantakan.

SDXL 1.0 — Kualitas yang Melompat Jauh

SDXL punya 3.5 miliar parameter, hampir 3.5 kali lebih besar dari SD 1.5. Resolusi native-nya 1024×1024, jadi gambar langsung tajam tanpa perlu upscaling berlebihan. Model ini pakai dua text encoder (OpenCLIP-ViT/G dan CLIP-ViT/L), yang bikin pemahaman prompt jauh lebih baik.

Untuk hardware, SDXL butuh GPU dengan VRAM minimal 8 GB. MUGHU udah coba sendiri di RTX 3060 12 GB dan jalan lumayan lancar, meski generate satu gambar butuh sekitar 15–20 detik di 30 steps.

Satu hal yang MUGHU suka dari SDXL: komposisi gambar jauh lebih baik. Prompt kayak "kucing duduk di meja kopi dengan laptop terbuka" ngasilin layout yang masuk akal, nggak kayak SD 1.5 yang kadang naruh kucing di atas laptop.

SD 3.5 Large — Model Terkuat Saat Ini

Dengan 8.1 miliar parameter, SD 3.5 Large adalah model paling powerful di keluarga Stable Diffusion. Arsitekturnya juga beda — bukan U-Net kayak versi sebelumnya, tapi Multimodal Diffusion Transformer (MMDiT). Perubahan ini bikin model lebih pinter ngerti prompt yang kompleks dan nulis teks di gambar dengan lebih akurat.

Tapi kekuatan ini datang dengan konsekuensi: butuh GPU yang lebih gede. VRAM 16 GB idealnya. Kalau kurang dari itu, Teman-Taman bisa pakai teknik quantization buat ngecilin ukuran model. Di dokumentasi Hugging Face ada contoh code buat quantization pakai bitsandbytes, yang bisa ngepas model ke GPU dengan VRAM lebih kecil.

SD 3.5 Medium — Balance antara Kualitas dan Hardware

Ini solusi buat yang mau kualitas SD 3.5 tapi nggak punya GPU kelas atas. Dengan 2.5 miliar parameter, model ini butuh sekitar 9.9 GB VRAM (tanpa text encoder). Itu artinya jalan di RTX 3060 12 GB atau bahkan GPU kelas menengah lainnya.

MUGHU pribadi ngarahin Teman-Taman buat coba SD 3.5 Medium kalau hardware-nya pas-pasan. Kualitasnya udah cukup buat kebanyakan use case, dan proses fine-tuning-nya juga lebih gampang karena ukurannya lebih kecil.

SD 3.5 Large Turbo — Cepat Banget

Ini versi distilled dari SD 3.5 Large. Artinya, model udah dilatih ulang biar bisa ngasilin gambar berkualitas tinggi cuma dalam 4 steps. Bandingkan dengan model lain yang butuh 20–40 steps. Waktu generate bisa turun drastis.

Trade-off-nya: sedikit penurunan kualitas dibanding SD 3.5 Large full. Tapi buat workflow production yang butuh speed, Turbo ini juara.

Tips Optimasi biar Generate Lebih Cepat

MUGHU udah spend banyak waktu utak-atik setting biar generate gambar lebih cepat tanpa ngorbanin kualitas. Ini beberapa yang proven:

Pakai xformers — library ini optimasi memory attention mechanism di transformer. Efeknya, generate lebih cepat 20–30% dan VRAM turun. Install-nya gampang, cukup pip install xformers dan tambahin --xformers di launch argument AUTOMATIC1111.

Turunkan steps kalau nggak perlu — default biasanya 20–30 steps. Tapi buat prompt sederhana, 15 steps sering udah cukup. Eksperimen aja, kadang hasil 15 steps nggak kalah dari 30 steps.

Pakai fp16 — kalau pakai diffusers, load model dengan torch_dtype=torch.float16 bukan float32. VRAM turun separuh dan speed naik. Kualitas gambar bedanya nyaris nggak kelihatan.

Enable CPU offload — kalau VRAM nggak cukup, pakai pipe.enable_model_cpu_offload(). Model di-pindah antara CPU dan GPU sesuai kebutuhan. Lebih lambat, tapi setidaknya jalan.

Pengalaman Personal: Dari SD 1.5 ke SD 3.5

MUGHU ingat pertama kali coba Stable Diffusion tahun 2022. Pakai SD 1.5, GPU RTX 2060 6 GB, generate satu gambar butuh 45 detik. Hasilnya? Kadang bagus, kadang aneh. Tangan jadi enam jari, wajah melengkung kayak cermin.

Terus SDXL keluar. Langsung beda. Prompt yang sama ngasilin gambar yang jauh lebih koheren. Tangan mulai bener, wajah mulai masuk akal. Tapi GPU MUGHU kewalahan, VRAM 6 GB nggak cukup. Akhirnya upgrade ke RTX 3060 12 GB.

Sekarang pakai SD 3.5 Large, generate di 28 steps butuh sekitar 12 detik. Kualitas teks di gambar? Jauh lebih bagus. Prompt "poster film dengan judul PETUALANGAN DI JAKARTA" ngasilin teks yang bisa dibaca, nggak kayak versi sebelumnya yang ngasilin huruf kayak alien nulis.

Perjalanan ini ngajarin MUGHU satu hal: Stable Diffusion berkembang cepat banget. Yang hari ini rasanya udah bagus, besok mungkin udah ada yang lebih baik. Jadi jangan terlalu lama mikir mau pakai versi mana — langsung coba aja. Eksperimen itu bagian terbesar dari keseruan.

Kesimpulan

Dari SD 1.5 yang ngasilin tangan enam jari sampai SD 3.5 Large yang bisa nulis teks jelas di gambar — perjalanan Stable Diffusion dalam tiga tahun terakhir bener-bener gila. Setiap versi bawa perbaikan yang signifikan: koherensi visual naik, pemahaman prompt makin akurat, dan yang paling penting buat banyak orang, kebutuhan hardware makin bisa diakomodasi lewat varian Medium dan Turbo.

Pilih model mana pada akhirnya balik ke kebutuhan dan hardware masing-masing. Kalau GPU-nya kelas atas, SD 3.5 Large ngasih kualitas terbaik. Kalau VRAM terbatas, Medium jadi jalan tengah yang masuk akal. Dan kalau speed jadi prioritas utama — misal buat pipeline production yang harus generate ratusan gambar per hari — Large Turbo dengan 4 steps-nya susah dikalahin. Kombinasikan sama optimasi kayak xformers, fp16, dan CPU offload, maka hardware kelas menengah pun bisa ngasilin output yang respectably bagus tanpa harus nunggu berabad-abad.

Hal yang MUGHU pelajarin dari utak-atik semua versi ini: nggak ada model yang "sempurna" buat semua skenario. Yang ada adalah model yang paling cocok buat use case dan budget tertentu. Daripada bingung mikirin versi mana yang "terbaik", mending langsung install satu, coba generate, bandingin hasilnya, dan iterasi dari situ. Dokumentasi resmi di Stability AI juga layak di-bookmark buat update terbaru soal rilis model dan best practice.

Jadi, nyalain GPU-nya, buka AUTOMATIC1111 atau diffusers, dan mulai eksperimen. Gambar terbaik bukan yang dihasilin model paling mahal — tapi yang lahir dari orang yang paling banyak nyoba.


Referensi

StableDiffusion. (2026). Stable Diffusion AI - Free Text to Image and AI Image Editing Online

Stable Diffusion. (2026). Stable Diffusion - AI Image Generator

Wikipedia. (2026). Stable Diffusion

Stability AI. (2026). Stability AI Image Models

Stability AI. (2026). Introducing Stable Diffusion 3.5

GitHub. (2026). CompVis/stable-diffusion: A Latent Text-to-Image Diffusion Model

StableDiffusion. (2026). Stable Diffusion Web UI - Advanced AI Image Generator and Editor

Stable Diffusion. (2026). Stable Diffusion - Text to Image Generator

Stable Diffusion Web. (2026). Stable Diffusion Online

Hugging Face. (2026). stabilityai/stable-diffusion-3.5-large

Komentar (0)

Belum ada komentar. Jadilah yang pertama berbagi pendapat!

Tinggalkan komentar