DisLoPik blog / ai / image gen OS

Guide · Windows · Local generation

Run AI Image Generation Without Restrictions

Forge WebUI puts the whole image model on your GPU. No credits, no queue, no upload limits, and nothing leaves your PC. Here's the install, then what every setting in the panel actually does.

Install time
~20 min
Disk needed
15–40 GB
GPU
NVIDIA, 6 GB+

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 .7z archive.
  • A matching CUDA build. The common cu124_torch24 package 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. Run update.bat first; if it still errors, grab the newest release from the repo instead of the older pinned archive.

Install Forge

  1. Download the portable build

    Grab webui_forge_cu124_torch24.7z from the Forge WebUI releases page. It's a one-click package — Python, PyTorch and CUDA are all inside.

  2. 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.

  3. Run update.bat

    Do 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.

  4. 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.

  5. Drop the files in place

    Checkpoints and LoRA live in different folders:

    Checkpoints webui\models\Stable-diffusion
    LoRA webui\models\Lora
    VAE webui\models\VAE
    Embeddings webui\embeddings
    Upscalers webui\models\ESRGAN

    All of these sit inside your extracted folder, e.g. webui_forge_cu124_torch24\webui\models\Stable-diffusion.

  6. Launch with run.bat

    A 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 containing SDE) 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 -1 while 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:
  • Upscaler4x-UltraSharp or 4x_NMKD-Siax for photos, R-ESRGAN 4x+ Anime6B for illustration, Latent for 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.
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.

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:

FlagWhat it does
--cuda-mallocFaster allocator. Usually a free speed-up; drop it if you get crashes.
--pin-shared-memoryPairs with the above on cards with headroom.
--always-high-vramKeeps everything resident. Only for 16 GB+.
--always-low-vramAggressive offloading for 4–6 GB cards. Slower, but it finishes.
--xformersLegacy attention optimisation. Modern PyTorch is usually as fast without it.
--listenExposes the UI to your LAN so you can generate from your phone. Don't port-forward it — there's no authentication by default.
--medvram-sdxlApplies 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.

0.1–0.2

Barely touched. Cleanup, grain, tiny colour shifts.

0.3–0.5

Style transfer while the composition survives. The sweet spot.

0.6–0.8

Loose reinterpretation — your input becomes a rough layout suggestion.

0.9–1.0

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.