LoRAs: Style and subject adapters

Lightweight model adapters that add specific styles, subjects, or concepts without retraining the base model.

Introduction

LoRAs (Low-Rank Adaptations) are lightweight neural network adjustments that modify a base model's behavior to enhance specific styles, subjects, or concepts. They work by applying small, targeted changes to the weights of specific layers in the generation model, effectively teaching it new capabilities without replacing the entire model.

The technique is not limited to image generation. LoRA-based fine-tuning has become a standard approach across modalities: image models (SD 1.5, SDXL, FLUX), video models, and even some audio architectures support LoRA adapters. The core principle is the same everywhere, a compact weight delta that shifts a model's output toward a specific behavior.

Each LoRA contains specialized knowledge that influences the output when combined with your prompt. This knowledge often targets artistic styles (pixel art, watercolor, anime). Other LoRAs focus on specific subject matter like a person's likeness or a product's design language. Some encode more abstract visual concepts: composition techniques, color palettes, lighting dynamics, or aesthetic rules.

Request structure

The lora parameter is an array that can contain multiple LoRA models. Each model can have its own settings.

[
  {
    // other parameters...
    "lora": [
      {
        "model": "civitai:120096@135931",
        "weight": 1.0
      }
    ]
  }
]

Mixing multiple LoRAs

You can combine multiple LoRAs in a single generation to layer different effects. A style LoRA paired with a subject LoRA, for example, lets you render a specific person in a specific aesthetic. When stacking LoRAs, use slightly lower weights for each (0.5-0.8 instead of 1.0) to prevent them from competing for influence over the same layers.

[
  {
    // other parameters...
    "lora": [
      { "model": "civitai:120096@135931", "weight": 0.7 },
      { "model": "civitai:245889@277389", "weight": 0.5 }
    ]
  }
]

The order of LoRAs in the array does not affect their behavior. What matters is the weight distribution. If one LoRA visually dominates, lower its weight or raise the other's.

Architecture compatibility

LoRAs are architecture-specific. A LoRA trained on SD 1.5 will not work with an SDXL model, and vice versa. Before using a LoRA, confirm it matches your base model's architecture:

  • SD 1.5: The largest existing LoRA library. Most community LoRAs target this architecture.
  • SDXL: Growing library with higher-resolution training. SDXL LoRAs tend to produce sharper results.
  • FLUX: Supported but the ecosystem is newer. FLUX LoRAs are available on model marketplaces and continue to expand.

Using a LoRA with the wrong architecture will return an error. Always verify the LoRA's target architecture before including it in your request.

How LoRAs work

LoRAs achieve their effect through low-rank decomposition of weight changes. Instead of modifying every parameter in a model (which would require a full model-sized file), LoRAs approximate the weight changes using two small matrices. This is why LoRA files are typically 50-150MB compared to full models at 6-25GB.

During generation, the LoRA's weight deltas are added to the base model's weights on the fly. The weight parameter scales how strongly these deltas are applied: a weight of 1.0 applies the full trained effect, 0.5 applies half, and 0.0 effectively disables the LoRA.

Tips

  1. Start with weight 0.7-0.8. Full weight (1.0) can sometimes over-stylize the output. Starting lower gives a more natural integration you can tune up.
  2. Check trigger words. Many LoRAs require specific trigger words in your prompt to activate properly. These are usually listed on the LoRA's model page. Without them, the LoRA may have little or no visible effect.
  3. Test LoRAs with a simple prompt first. Before building complex prompts, use a short prompt like "portrait of a woman" or "landscape" to see what the LoRA actually does. This isolates its effect from prompt-driven variation.
  4. Lower step counts when experimenting. LoRA effects are typically visible even at 10-15 steps. Use low step counts to quickly evaluate different LoRAs before committing to a full render.