What you need
Forge is a fork of AUTOMATIC1111's WebUI with better memory handling, so it runs on smaller cards than the original. The portable build ships its own Python — you don't install anything system-wide.
- An NVIDIA GPU. 6 GB VRAM is the realistic floor for SDXL, 8–12 GB is comfortable, 16 GB lets you run Flux. AMD and Intel work through other forks, but this guide is CUDA.
- Disk space. The WebUI is ~8 GB extracted. Every SDXL checkpoint you download is another 6.5 GB, so plan for 40 GB if you like collecting.
-
7-Zip or WinRAR to unpack the
.7zarchive. -
A matching CUDA build. The common
cu124_torch24package targets RTX 20–40 series. If you're on a 50-series (Blackwell) card, that build will fail with "no kernel image is available" — you need a cu128 or newer package. Runupdate.batfirst; if it still errors, grab the newest release from the repo instead of the older pinned archive.
Install Forge
-
Download the portable build
Grab
webui_forge_cu124_torch24.7zfrom the Forge WebUI releases page. It's a one-click package — Python, PyTorch and CUDA are all inside. -
Extract it
Right-click the archive → Extract All, and pick a folder you'll remember. Keep it on a fast drive with room to grow, and avoid paths with spaces or non-English characters — some extensions still choke on those.
-
Run
update.batDo this before the first launch. It pulls the current code over the packaged snapshot, which is usually months old. Let it finish and close on its own.
-
Find a model
Head to Civitai or Hugging Face. Filter by base model so you know what you're getting — SD 1.5, SDXL, Pony, Illustrious and Flux are not interchangeable, and a LoRA only works with the base it was trained on. Check the license on the model page too: plenty are non-commercial, and a few forbid redistribution of merges.
-
Drop the files in place
Checkpoints and LoRA live in different folders:
Checkpointswebui\models\Stable-diffusionLoRAwebui\models\LoraVAEwebui\models\VAEEmbeddingswebui\embeddingsUpscalerswebui\models\ESRGANAll of these sit inside your extracted folder, e.g.
webui_forge_cu124_torch24\webui\models\Stable-diffusion. -
Launch with
run.batA console window opens, then your browser lands on
http://127.0.0.1:7860. The first start is slow — it's compiling and caching. Leave the console open; closing it kills the server.
Models, LoRA & VAE
Four different things get called "models" online, and mixing them up is the single most common reason a fresh install produces garbage.
Checkpoint
The actual image model — 2–12 GB, .safetensors. Picked from
the dropdown at the top left. This decides your style ceiling more than
any slider does.
LoRA
A small patch (10–300 MB) that teaches the checkpoint one character,
style or concept. Insert it into the prompt as
<lora:filename:0.8>, where the number is strength.
Start at 0.6–0.8; above 1.0 it starts eating the rest of your prompt.
VAE
The decoder that turns latents into pixels. Most modern checkpoints have one baked in. If your images come out washed-out grey or oversaturated, load a matching external VAE.
Embedding / TI
A few KB that map a keyword to a learned concept. Mostly used as quality helpers in the negative prompt — type the filename to activate it.
Base families, quickly
| Family | Native size | VRAM | Notes |
|---|---|---|---|
| SD 1.5 | 512×512 | 4 GB+ | Fast, huge LoRA library, weakest at text and anatomy. |
| SDXL & derivatives | 1024×1024 | 8 GB+ | The current default for most people. Pony and Illustrious are SDXL forks with their own tag systems. |
| Flux.1 | 1024×1024 | 12 GB+ (FP8) | Best prompt following and text rendering; slower, and uses Distilled CFG instead of normal CFG. |
Writing prompts
The positive box describes what you want; the negative box describes what to steer away from. Words near the front carry more weight, and the model reads in chunks of 75 tokens.
(word:1.3)
Multiply attention. 1.1–1.4 is the useful band; 2.0 will deep-fry the image.
(word:0.7)
De-emphasise without removing it entirely.
[a|b]
Alternate between two terms on each step — good for blending two things.
[a:b:0.4]
Swap a for b once 40% of the steps are done. Composition from one, detail from the other.
BREAK
Force the next words into a fresh 75-token chunk, so two subjects stop bleeding into each other.
<lora:name:0.8>
Apply a LoRA at 80% strength. Position in the prompt doesn't matter.
Different checkpoint families want different phrasing. SDXL photo models like natural sentences; anime models trained on booru data want comma-separated tags. Read the model's own description page — the author almost always posts their recommended settings, and those beat anything generic.
Every setting explained
This is the part the original PDF skipped. Here's what each control in the txt2img panel is doing under the hood.
- Sampling methodsampler
-
The algorithm that walks the image from pure noise to a finished picture.
Different samplers reach different images from the same seed. Two broad
types: ancestral ones (names ending in
a, or containingSDE) inject fresh noise every step, so they keep changing and never fully settle; deterministic ones converge and stop moving after enough steps. Full table below. - Schedule typenoise schedule
- How much noise gets removed at each step. Karras takes big early steps and tiny late ones, which usually looks best and is the safe default. Exponential softens output. SGM Uniform is what SDXL-turbo and lightning models expect. Simple / Normal are the plain linear versions.
- Sampling steps20–30 typical
- How many denoising passes to run. More steps means more time, not automatically more quality — most samplers stop improving around 25–30. Under ~12 you get mush, unless you're on a Turbo/Lightning/LCM model, which are distilled to work in 4–8. Doubling steps roughly doubles generation time.
- CFG scaleclassifier-free guidance
- How hard the model is pushed to obey your prompt. Low (1–4) is loose and creative but ignores you; high (12+) burns contrast, blows out colour and produces stiff, over-saturated images. 5–7 is the working range for SD 1.5 and SDXL, 2–3 for Turbo/Lightning. Flux uses a separate Distilled CFG slider — 3.5 is its normal value.
- Width & Heightresolution
- Stay near the model's native pixel count. SD 1.5 wants ~512×512, SDXL and Flux want ~1024×1024. Generating far above native gives you duplicated heads and stretched bodies — the fix is to generate small and use Hires fix, not to type a bigger number. Useful SDXL ratios: 1024×1024 (1:1), 832×1216 (2:3 portrait), 1216×832 (3:2 landscape), 1344×768 (16:9). Keep dimensions multiples of 64.
- Seed-1 = random
-
The number that generates the starting noise. Same seed + same prompt +
same settings + same model = the exact same image, every time. That's
what makes it useful: leave it at
-1while you're exploring, then click the recycle icon to lock the seed of an image you liked and tweak one thing at a time. A seed is meaningless across different models or resolutions — it won't transfer. - Variation seed & strengthunder "Extra"
- Blends a second seed into the first. At 0.1–0.3 strength you get siblings of an image you already like — same composition, different details. Perfect when a generation is 90% right.
- Batch count vs Batch sizethroughput
- Count runs N generations one after another — costs time, not VRAM. Size generates N at once in parallel — much faster per image but multiplies VRAM use. On 8 GB keep size at 1 and raise count instead.
- Hires. fixthe quality button
-
Generates at native size, upscales the result, then re-runs a partial
diffusion pass over it so real detail is invented rather than
interpolated. Three controls matter:
- Upscaler —
4x-UltraSharpor4x_NMKD-Siaxfor photos,R-ESRGAN 4x+ Anime6Bfor illustration,Latentfor a softer painted look. - Upscale by — 1.5–2.0. Higher costs VRAM fast.
- Denoising strength — how much freedom the second pass gets. 0.3–0.45 adds detail while keeping the picture; above 0.6 it starts redrawing and re-introducing duplicate limbs.
- Upscaler —
- CLIP skip1 or 2
- Stops reading the text encoder one layer early. SD 1.5 anime models (anything descended from NovelAI) expect 2. Photoreal SD 1.5, SDXL and Flux expect 1. Wrong value = flat, slightly-off results.
- Refineroptional
- Hands the last portion of the steps to a second checkpoint. The switch-at value (0.8 = final 20%) decides when. Mostly unnecessary with modern merged SDXL models — try it, but don't assume it helps.
Sampler reference
Twenty-odd options in the dropdown, four or five worth using. Filter the list if you're looking for something specific.
| Sampler | Steps | Type | Use it for |
|---|---|---|---|
| DPM++ 2M | 20–30 | Deterministic | The default pick. Fast, converges cleanly, pairs with Karras. Start here. |
| DPM++ 2M SDE | 25–35 | Ancestral | Sharper micro-detail and texture than plain 2M, at a small speed cost. |
| DPM++ 3M SDE | 30–40 | Ancestral | Highest detail of the family; needs the extra steps to be worth it. |
| Euler a | 20–30 | Ancestral | Soft, painterly, very popular for anime. Never fully settles, so results keep shifting with step count. |
| Euler | 20–30 | Deterministic | Predictable and neutral. Good baseline when you're comparing prompts. |
| Heun | 15–25 | Deterministic | More accurate per step but takes two model passes each — roughly half speed. |
| UniPC | 15–25 | Deterministic | Usable images in fewer steps. Handy for fast iteration. |
| DDIM | 30–50 | Deterministic | Old and slow to converge; still used by some inpainting workflows. |
| LCM | 4–8 | Distilled | Only for LCM models or with an LCM LoRA. Very fast, lower fidelity. |
| Restart | 20–30 | Hybrid | Periodically re-adds noise to escape bad compositions. Slow but sometimes rescues a stubborn prompt. |
No sampler matches that.
Starting recipes
Known-good baselines. Change one value at a time from here and you'll actually learn what each does.
Speed & VRAM
Forge's big advantage is its memory manager. Before you touch launch flags, use the GPU Weights slider at the top of the UI — it sets how much VRAM is reserved for the model, and leaving 1–2 GB free for the generation itself usually beats any command-line tweak.
For the rest, edit webui-user.bat (or run.bat) and
add flags to the COMMANDLINE_ARGS line:
| Flag | What it does |
|---|---|
--cuda-malloc | Faster allocator. Usually a free speed-up; drop it if you get crashes. |
--pin-shared-memory | Pairs with the above on cards with headroom. |
--always-high-vram | Keeps everything resident. Only for 16 GB+. |
--always-low-vram | Aggressive offloading for 4–6 GB cards. Slower, but it finishes. |
--xformers | Legacy attention optimisation. Modern PyTorch is usually as fast without it. |
--listen | Exposes the UI to your LAN so you can generate from your phone. Don't port-forward it — there's no authentication by default. |
--medvram-sdxl | Applies medvram behaviour only to SDXL models. |
In Windows, also turn off the NVIDIA driver's "CUDA — Sysmem Fallback Policy" for Python if you'd rather see a clean out-of-memory error than have a generation silently crawl at 10× slower while spilling into system RAM.
img2img & inpainting
Same engine, different starting point: instead of pure noise, it starts from your image. One slider dominates everything here.
Barely touched. Cleanup, grain, tiny colour shifts.
Style transfer while the composition survives. The sweet spot.
Loose reinterpretation — your input becomes a rough layout suggestion.
Effectively txt2img. Your image is ignored.
For inpainting, mask the region you want redrawn and set Only masked so the model works at full resolution on that patch instead of a few dozen pixels. Mask blur around 4–8 hides the seam. This is how you fix hands without rerolling a whole image.
Troubleshooting
"Torch is not able to use GPU" / "no kernel image is available"
Your PyTorch build doesn't match your card. This is the standard failure
on RTX 50-series with the older cu124 package — you need a
cu128+ build. Run update.bat, and if that doesn't fix it,
download the newest release archive rather than the pinned one in older
guides.
CUDA out of memory
Lower the GPU Weights slider, drop batch size to 1, reduce resolution to native, and turn off Hires fix while you test. If it only happens on the upscale pass, lower "Upscale by" — that's where VRAM use peaks.
Black or grey images
Usually a VAE problem in half precision. Load a matching external VAE, or
add --no-half-vae to your launch args.
Everything is blurry or melted
Check three things in order: steps too low, CFG too high, or resolution far above the model's native size. It's almost always one of those, and almost never the sampler.
Colours look burnt and over-contrasted
Drop CFG. Try 5 instead of 12 and regenerate on the same seed.
My LoRA does nothing
Base mismatch — an SD 1.5 LoRA can't attach to an SDXL checkpoint. Also
confirm the filename in <lora:…> matches exactly, and
add the trigger words listed on the model's page.
The first generation takes forever
Normal. The model loads from disk into VRAM on first use, and Windows
Defender likes to scan multi-gigabyte .safetensors files.
Later runs use the cache.
Where to go next
Once the basics feel automatic, the two extensions worth installing are ControlNet (pose, depth and edge control over composition) and ADetailer (automatic face and hand re-detailing). Both install from the Extensions tab and both do more for output quality than any amount of prompt tweaking.
One practical habit: keep the PNG Info tab open. Drop any image you generated into it and every setting comes back — prompt, seed, sampler, the lot. It's a better notebook than anything you'll remember to write down.