ADAPTER GUIDE · ORIGINAL FORGE

Install and use one LoRA before you build a stack

A LoRA is a patch for a compatible base model—not a miniature checkpoint and not a style percentage slider. Prove the checkpoint first, let Forge insert the adapter tag, then compare the same seed with one controlled change.

Evidence boundary: product behavior is tied to original Forge commit dfdcbab. No GPU generation was performed for this review; your exact checkpoint, adapter and hardware outcome remains UNKNOWN until the controlled test passes.

01 · BASEWorking checkpointfamily · version · clean output
02 · ADAPTEROne LoRAkeys · trigger · multiplier
03 · PROOFSame seed, attributable change
01 · Start here

What is the first state you cannot prove?

Choose the earliest failure. Folder, activation, compatibility and visual effect are separate acceptance gates.

Current LoRA state
NEXT DECISIONProve the base before the adapter

Record the LoRA publisher page, declared base family, exact file, trigger text and suggested starting weight. Generate the checkpoint alone first; only then place and activate the adapter.

Do next
Follow the eight-step install path, then make a fixed-seed A/B pair.
Open this step
02 · Adapter contract

“LoRA” is a file role; compatibility needs six recorded facts

A marketplace category or .safetensors suffix cannot identify the target architecture, trigger recipe or rights by itself.

01 · BASE FAMILY

SD 1.x, SDXL, FLUX or another explicit architecture

02 · EXACT ARTIFACT

publisher page, direct file URL, version, bytes and hash

03 · ACTIVATION

card alias plus any documented trigger words

04 · STARTING RECIPE

publisher weight, checkpoint and required generation settings

05 · RIGHTS

adapter, source images, training data and output terms

06 · FORGE EVIDENCE

commit, loader line, fixed-seed A/B result

Base-family gate before activation
Loaded baseAdapter requirementDo not assume
SD 1.x / 1.5An adapter explicitly trained for the same SD 1.x family and intended checkpoint lineage.Do not pair it with SDXL or FLUX because the container suffix matches.
SDXLAn SDXL adapter; derivatives such as Pony may require their own documented ecosystem and trigger conventions.“SDXL-shaped” is not proof that every SDXL derivative combination is useful.
FLUXAn adapter documented for the exact FLUX base or variant.Use the dedicated FLUX LoRA guide for low-bit application and patch-time behavior.
Unknown / unlabeledNo compatibility claim can be verified from the filename alone.Return to the artifact page or treat the combination as an explicit experiment.

VERIFIED Forge can detect some family metadata, but the current UI can show all networks and can classify a file as Unknown. Treat the publisher’s exact base declaration as the contract. Inspect detection code ↗

03 · Install and activate

Move one adapter from its source page to a controlled run

Keep optional features off until the LoRA has passed. Every extra adapter or extension adds another plausible cause.

  1. 01

    Save the artifact record

    Keep the publisher page and direct download URL. Record the stated base family, version, trigger text, suggested starting weight and license before the page changes.

  2. 02

    Prove the base checkpoint

    Select the matching Forge preset and checkpoint. Generate one clean image with no LoRA, embedding, ControlNet, Hires fix or unrelated extension.

  3. 03

    Place one supported file

    Use the active models/Lora directory or the path supplied by --lora-dir. The inspected inventory recursively accepts .pt, .ckpt and .safetensors.

  4. 04

    Refresh the LoRA inventory

    Open Extra Networks → Lora and use its Refresh control. Restart only after the active path, suffix, permissions and completed download are confirmed.

  5. 05

    Insert the card-generated tag

    Click the LoRA card so Forge inserts its filename or metadata alias. This avoids guessing which name the loader resolves.

  6. 06

    Add documented activation text

    Some adapters require trigger words or phrases. A trigger steers conditioning; it does not load the file or repair incompatible tensor keys.

  7. 07

    Use the publisher starting weight

    Keep the explicit <lora:alias:weight> value. Do not translate 0.5 into a guaranteed “50% visual effect”; test it as a multiplier.

  8. 08

    Make a controlled A/B pair

    Fix checkpoint, prompt, seed, size, sampler, scheduler, steps and every optional feature. Save both images, infotext and the first LoRA console lines.

04 · Discovery

A visible card passes one gate out of four

The inventory is recursive and alias-aware. Confirm its actual root before copying the same file into several installations.

Standalone defaultmodels/Lora
Directory override--lora-dir
Recognized suffixes.pt · .ckpt · .safetensors
Search depthRecursive, including subfolders
Linux path ruleCapitalization is significant
Card identityFilename or metadata alias
Family detectionMetadata plus heuristics; Unknown is possible
Infotext proofLoRA name and short hash when enabled
01DISCOVEREDcard exists
→
02RESOLVEDtag finds file
→
03MAPPEDkeys load
→
04PROVENA/B effect repeats
STANDALONE[Forge]/models/Lora
or
OVERRIDE--lora-dir "D:\Models\Lora"

On Linux, Lora, lora and Loras are different paths. Read the launch line instead of guessing.

05 · Weight and stacks

Treat strength as an experiment, not a percentage

The useful range belongs to the exact adapter, base and prompt. Change only the final number until one adapter behaves predictably.

ONE MULTIPLIER<lora:alias:0.8>

The inspected activation path applies one value to text-encoder and model targets by default.

NOT A CALIBRATED CLAIM“80% of the style”

Rank, alpha, trained targets, captions, trigger text and checkpoint behavior shape the visible result.

A

Base only

Save the clean fixed-seed result.

→
B

LoRA 1 alone

Prove load and intended effect.

→
C

LoRA 2 alone

Repeat before combining.

→
D

Recorded stack

Add one tag; compare again.

FLUX BOUNDARY Low-bit bases add patching versus on-the-fly precision behavior. Keep that separate from this generic workflow. Open the FLUX LoRA guide →

06 · Failure decoder

Match the first failed gate to one repair

Console wording matters. Save the complete LoRA sequence rather than reporting only “it did not work.”

01There is no Lora tab at all

The inspected original Forge commit registers a built-in Lora Extra Networks page. Confirm you are running the original repository and that its built-in sd_forge_lora extension loaded. A missing tab is an installation or extension-loading problem, not a file compatibility result.

02models/Lora does not exist

Create the directory under the active Forge model root, preserving the capital L used by the standalone default. First confirm --data-dir, --models-dir and --lora-dir did not move the effective root.

03The file is in the folder but no card appears

Verify the running installation, effective --lora-dir, completed filename, .pt/.ckpt/.safetensors suffix, permissions and hidden-directory settings. Then use the Lora page Refresh control.

04A shared checkpoint folder works but shared LoRAs do not

Each inventory has its own path. The current --forge-ref-a1111-home helper maps an existing A1111 models/lora directory only when that path exists, and an explicit --lora-dir takes precedence.

05The card appears under the wrong checkpoint family

Do not trust visibility as compatibility. The current setting can show all networks, metadata can be missing, and family detection is heuristic. Verify the publisher-declared base before generating.

06Clicking the card inserts a different name than the file

Forge can prefer the alias stored in file metadata. Use the inserted tag, or change the “When adding to prompt, refer to Lora by” setting to Filename. Keep basenames unique to avoid ambiguous inventory entries.

07The prompt contains the tag but the LoRA has no effect

Confirm the tag is in the active prompt, the alias resolves, the documented trigger is present and the base family matches. Then inspect the console for Loaded, version mismatch, unmatched or skipped-key lines.

08“LoRA version mismatch for …”

At the inspected commit, more than 12 state-dict keys remain unmatched after Forge tries model and text-encoder mappings, so it returns the unchanged model and clip for that adapter. The wording is a code threshold, not a complete semantic version diagnosis.

09“Loading … with unmatched keys …”

Twelve or fewer keys remained unmatched and Forge continued. Preserve the list: the message proves an imperfect mapping, while the fixed-seed A/B test determines whether the intended effect survived.

10“Mismatch …-UNet” or “Mismatch …-CLIP”

More than 12 patches for that component were skipped. The other component may still have a different outcome, so do not reduce this to “loaded” or “failed” without the complete console sequence.

11The result is too strong, washed out or distorted

Return to the publisher starting point and lower only the LoRA multiplier while holding the seed and every other setting fixed. If the base is FLUX low-bit, continue in the dedicated FLUX LoRA diagnostic.

12Two LoRAs work alone but fail together

Remove the stack and reproduce each adapter separately. Then add them one at a time in a recorded order; target overlap, triggers and weights can interact even when both files load.

13Changing the weight makes loading happen again

The current patch identity contains filename, model strength, text-encoder strength and application mode. A different multiplier creates a different compiled target and must refresh the patched model state.

14Forge cannot find a manually typed LoRA name

Use the card-generated alias and enable the optional console or Gradio “Lora not found” warning. Manual spelling, duplicate aliases and stale inventory state are separate from architecture compatibility.

CONTINUES[LORA] Loading … with unmatched keys […]

Smaller unmatched set; inspect later component lines and output.

APPLIED[LORA] Loaded … with N keys at weight W (skipped S keys)

Loader evidence; visual intent still needs A/B proof.

RETURNS UNCHANGED[LORA] LoRA version mismatch for …

More than 12 unmatched keys at the inspected commit.

07 · Controlled proof

Create a replayable LoRA receipt

“The card appeared” and “the image looked different” are weak evidence without artifact identity, fixed settings and console mapping.

LoRA validation receipt
FIELDS RECORDED0 / 10

Record all ten fields before calling the adapter supported or broken.

A · CONTROL

Base only

Tag and trigger absent. Save image, infotext and console.

↓
B · ONE CHANGE

One LoRA

Exact tag and trigger added; every other input identical.

↓
C · CONFIRM

Repeat

Use another seed or prompt to confirm the learned effect.

ACCEPT WHENMapped + attributable + repeatable
08 · Evidence and next routes

Know which parts are code, reports or still your experiment

External tutorials supplied user language and failure questions. Original Forge code controls every product-behavior claim.

VERIFIED

Commit-bound behavior

Paths, suffixes, recursion, prompt parsing, aliases, metadata heuristics, mismatch thresholds, hashes and console lines.

COMMUNITY-REPORTED

Observed symptoms

Empty tabs, cross-family confusion, stale shared paths and misleading mismatch wording are reports—not universal causes.

UNKNOWN

Your exact combination

Visual effect, useful weight, stack behavior, performance and hardware stability remain open until your receipt passes.

SD 1.5 BASE

Prove the legacy ecosystem

Load a clean SD 1.5 checkpoint before its adapter.

Open SD 1.5 →
SDXL BASE

Prove the XL package

Validate the checkpoint and native baseline first.

Open SDXL →
FLUX ADAPTER

Diagnose low-bit LoRA behavior

Separate format mapping, patch time and online precision.

Open FLUX LoRA →
REVIEWED SOURCES · 22
Current LoRA path argumentsVERIFIED

Standalone models/Lora default and --lora-dir override.

↗
Current LoRA inventory and loaderVERIFIED

Suffixes, recursive scan, mapping thresholds, caching and console outcomes.

↗
Current LoRA metadata readerVERIFIED

Alias and SD1/SD2/SDXL/FLUX family heuristics.

↗
Current LoRA card UIVERIFIED

Refresh, inserted alias, preferred weight and activation text.

↗
Current LoRA activation pathVERIFIED

TE/UNet multipliers and LoRA hashes in infotext.

↗
Current LoRA settings and APIVERIFIED

Visibility, naming, warning and metadata options.

↗
Current Extra Networks parserVERIFIED

Prompt-tag grammar and named/positional arguments.

↗
Current recursive file walkerVERIFIED

Subfolder, hidden-directory and suffix behavior.

↗
Current A1111 reference mappingVERIFIED

Conditional models/lora mapping and explicit-argument precedence.

↗
O16 · Official FLUX LoRA announcementVERIFIED

Report contract and low-bit behavior; generic page defers detailed FLUX settings.

↗
SD 1.5 / SDXL Q&A #449COMMUNITY-REPORTED

Real cross-family confusion and the accepted matching-family answer.

↗
Mismatch issue #838COMMUNITY-REPORTED

Why the current threshold wording is not a complete semantic version system.

↗
Missing cards issue #1886COMMUNITY-REPORTED

Shared checkpoint success does not prove the LoRA path.

↗
Empty tab issue #1246COMMUNITY-REPORTED

Linux path and --lora-dir discovery symptom.

↗
Family filter issue #1112COMMUNITY-REPORTED

Visible incompatible cards and heuristic-filter limitation.

↗
Moved-install discussion #3049COMMUNITY-REPORTED

Recent missing-tab symptom after a drive move; reported reinstall is not generalized.

↗
A10 · FLUX setup articleSTALE SNAPSHOT

LoRA path and low-bit questions; dated recipe values excluded from generic rules.

↗
A11 · GGUF/LoRA articleSTALE SNAPSHOT

Folder and card workflow; hardware conclusions not generalized.

↗
A15 · Multi-family LoRA walkthroughSTALE SNAPSHOT

Subfolders, card tag and user family confusion; “percentage style” claim corrected against code.

↗
V02 · Full transcript reviewedSTALE SNAPSHOT

Fresh-install model/LoRA placement language.

↗
V07 · Full transcript reviewedSTALE SNAPSHOT

Family filtering, triggers, Refresh and A/B vocabulary; settings remain dated.

↗
V12 · Full transcript reviewedSTALE SNAPSHOT

Beginner LoRA purpose, publisher recipe and card activation flow.

↗
PRODUCTOriginal lllyasviel Forge only
COMMITdfdcbab
REVIEWED24 Aug 2026
AUTHORForge Field Guide editorial team
REVIEWERCommit-bound technical review
GPU TESTNot performed · UNKNOWN
09 · Direct answers

LoRA questions answered at the exact failure boundary

Use these answers after the route above; each keeps file discovery, loader mapping and visual proof separate.

What is a LoRA in Stable Diffusion WebUI Forge?

A LoRA is a smaller set of learned patches applied to a compatible base model and, when present, its text encoder. It modifies a working checkpoint; it is not a standalone image generator.

Where do LoRA files go in Forge?

The standalone default at the inspected commit is models/Lora. A --lora-dir launch argument replaces that inventory root, and the scanner searches its subfolders recursively.

Which LoRA file formats does Forge recognize?

The inspected original Forge LoRA inventory scans .pt, .ckpt and .safetensors. A recognized suffix proves discovery eligibility, not architecture compatibility.

Can I organize Forge LoRAs in subfolders?

Yes. The current file walker is recursive. Use family-oriented subfolders if useful, but keep unique basenames and preserve the actual active --lora-dir root.

Why is my LoRA not showing in Forge?

Check the active installation, effective --lora-dir, models/Lora capitalization, completed supported filename, permissions and hidden-folder state, then Refresh the Lora Extra Networks page.

Do I need to restart Forge after adding a LoRA?

Usually start with the Lora page Refresh action, which rebuilds the available-network list. Restart after discovery checks fail or when you changed the configured root.

How do I activate a LoRA in Forge?

Click its Lora card to insert <lora:alias:weight> into the active prompt, add any publisher-documented trigger words, then generate with a compatible checkpoint.

What is the LoRA prompt syntax in Forge?

The normal explicit form is <lora:alias:weight>. The current parser also supports separate text-encoder and model multipliers, but advanced syntax cannot fix a wrong family or unsupported export.

Why should I click the card instead of typing the filename?

Forge may use an alias stored in safetensors metadata or the filename according to settings. The card inserts the name the current inventory expects and can append saved activation text.

Does every LoRA need a trigger word?

No. Use trigger text only when the publisher or training documentation specifies it. The trigger affects conditioning; the <lora:…> tag is what requests the adapter file.

What LoRA weight should I use?

Start with the exact value documented for that adapter and base. Change one value at a time with a fixed seed; there is no source-supported universal best weight.

Does LoRA weight 0.5 mean 50 percent style?

No. Forge passes 0.5 as a patch multiplier. The visual effect is not calibrated linearly because training rank, alpha, targets, captions, triggers and the base model all matter.

Is LoRA weight the same as denoising strength?

No. LoRA weight scales adapter patches. Denoising strength controls how far img2img or a Hires pass can depart from its input latent.

Can Forge use separate text-encoder and model LoRA weights?

Yes. In the inspected parser, one value applies to both by default; additional positional or named te/unet values can separate them. Treat that as an advanced experiment, not a first-line compatibility repair.

Can I use an SD 1.5 LoRA with an SDXL checkpoint?

No reliable compatibility should be assumed. Match the adapter to the publisher-declared base family; shared .safetensors packaging does not align tensor targets.

Can I use an SDXL LoRA with FLUX?

No. FLUX uses a different model architecture and target map. Use an adapter explicitly published for the exact FLUX route and follow the dedicated FLUX LoRA guide.

Can Pony LoRAs work with every SDXL checkpoint?

Pony is derived from SDXL, but useful compatibility, prompting and trigger conventions can be ecosystem-specific. Follow the adapter publisher’s declared base rather than assuming every SDXL combination.

Why does Forge show incompatible LoRAs in the Lora tab?

The current UI can be configured to show all networks, and family detection depends on metadata plus heuristics. A visible card is an inventory result, not approval for the selected checkpoint.

What does “LoRA version mismatch” mean in Forge?

At inspected commit dfdcbab, Forge prints it when more than 12 keys remain unmatched after mapping attempts and returns without applying that adapter. Preserve the exact file and console for reporting.

Are unmatched keys always a complete LoRA failure?

No. Twelve or fewer unmatched keys produce a warning and loading continues; later component-level skipped-key checks can still matter. Use the complete console sequence and controlled output comparison.

How can I tell whether Forge actually loaded my LoRA?

Look for a console line beginning [LORA] Loaded that names the file, component, loaded-key count, weight, skipped count and application mode. Then require a fixed-seed visual effect.

Why does a listed LoRA have no visible effect?

Common boundaries are an unresolved alias, missing trigger text, wrong base family, unsupported key layout, too-subtle multiplier or a prompt that hides the learned concept. Test one adapter with a fixed A/B job and read the loader lines.

Why does my LoRA make the image look overcooked?

Lower only the adapter multiplier from the publisher baseline and repeat the same seed. Do not simultaneously change CFG, sampler, steps, denoising, VAE or checkpoint.

Can I use multiple LoRAs in Forge?

Yes as an experiment, but first prove every adapter alone. Add one at a time, record tag order and weights, and watch console, memory and output for interactions.

Why does changing LoRA strength trigger patching again?

The current compiled target identity includes the file, model weight, text-encoder weight and online mode. A changed weight therefore changes the patch set.

Does Forge save LoRA information in PNG metadata?

The current built-in extension can add LoRA names and short hashes to infotext. Keep that enabled and retain the source URL plus full file hash for a stronger reproduction record.

Can I share an A1111 LoRA folder with Forge?

The official --forge-ref-a1111-home helper maps an existing A1111 models/lora path. You can also set --lora-dir explicitly; confirm the launch line because checkpoint sharing does not prove LoRA sharing.

What should I include in a broken-LoRA report?

Include original Forge commit, launch arguments, adapter page and direct URL, file hash, base checkpoint and hash, exact tag/triggers, all generation settings, full console mapping and a fixed-seed A/B pair.