brittneyparks-flux-lora32-cosine-1e4-1e6-bs2-v01

This is a standard PEFT LoRA derived from black-forest-labs/FLUX.1-dev.

No validation prompt was used during training.

None

Validation settings

  • CFG: 3.5
  • CFG Rescale: 0.0
  • Steps: 25
  • Sampler: FlowMatchEulerDiscreteScheduler
  • Seed: 777
  • Resolution: 896x1152
  • Skip-layer guidance:

Note: The validation settings are not necessarily the same as the training settings.

You can find some example images in the following gallery:

Prompt
unconditional (blank prompt)
Negative Prompt
blurry, cropped, ugly
Prompt
brittneyparks, close-up portrait in soft natural light, smooth brown skin, subtle makeup, delicate highlights on cheeks, eyes gently closed, serene expression, photorealistic, high detail, 85mm lens
Negative Prompt
blurry, cropped, ugly
Prompt
brittneyparks looking at the camera, medium close-up, vibrant colored lights from one side, visible skin texture, well-defined lips, expressive eyes, intricate details in eyebrows and hairline, shallow depth of field
Negative Prompt
blurry, cropped, ugly
Prompt
brittneyparks, extreme close-up of face, detailed pores and skin tone, studio lighting with bounce, soft shadows, glossy lipstick, eyeliner visible, ultra high resolution
Negative Prompt
blurry, cropped, ugly
Prompt
brittneyparks, contemplative expression, rim light on one side of face, soft shadows falling across skin, freckle and blemish detail visible, skin glow preserved, 4k photoreal render style
Negative Prompt
blurry, cropped, ugly
Prompt
brittneyparks resting her chin on hand, elbow on table, moody indoor lighting, fine details in fingers and face, perfect skin tone balance, natural brown undertones, realistic facial proportions
Negative Prompt
blurry, cropped, ugly

The text encoder was not trained. You may reuse the base model text encoder for inference.

Training settings

  • Training epochs: 25

  • Training steps: 6760

  • Learning rate: 0.0001

    • Learning rate schedule: cosine
    • Warmup steps: 400
  • Max grad value: 1.0

  • Effective batch size: 2

    • Micro-batch size: 1
    • Gradient accumulation steps: 1
    • Number of GPUs: 2
  • Gradient checkpointing: True

  • Prediction type: flow_matching (extra parameters=['shift=3', 'flux_guidance_mode=constant', 'flux_guidance_value=1.0', 'flux_lora_target=all'])

  • Optimizer: adamw_bf16

  • Trainable parameter precision: Pure BF16

  • Base model precision: int8-quanto

  • Caption dropout probability: 0.0%

  • LoRA Rank: 32

  • LoRA Alpha: None

  • LoRA Dropout: 0.1

  • LoRA initialisation style: default

Datasets

lora-512

  • Repeats: 4
  • Total number of images: ~24
  • Total number of aspect buckets: 1
  • Resolution: 0.262144 megapixels
  • Cropped: True
  • Crop style: random
  • Crop aspect: closest
  • Used for regularisation data: No

lora-768

  • Repeats: 3
  • Total number of images: ~24
  • Total number of aspect buckets: 1
  • Resolution: 0.589824 megapixels
  • Cropped: True
  • Crop style: random
  • Crop aspect: closest
  • Used for regularisation data: No

lora-1024

  • Repeats: 3
  • Total number of images: ~26
  • Total number of aspect buckets: 5
  • Resolution: 1.048576 megapixels
  • Cropped: True
  • Crop style: random
  • Crop aspect: closest
  • Used for regularisation data: No

lora-1280

  • Repeats: 3
  • Total number of images: ~24
  • Total number of aspect buckets: 4
  • Resolution: 1.6384 megapixels
  • Cropped: True
  • Crop style: random
  • Crop aspect: closest
  • Used for regularisation data: No

lora-1536

  • Repeats: 3
  • Total number of images: ~26
  • Total number of aspect buckets: 5
  • Resolution: 2.359296 megapixels
  • Cropped: True
  • Crop style: random
  • Crop aspect: closest
  • Used for regularisation data: No

Inference

import torch
from diffusers import DiffusionPipeline

model_id = 'black-forest-labs/FLUX.1-dev'
adapter_id = 'gattaplayer/brittneyparks-flux-lora32-cosine-1e4-1e6-bs2-v01'
pipeline = DiffusionPipeline.from_pretrained(model_id, torch_dtype=torch.bfloat16) # loading directly in bf16
pipeline.load_lora_weights(adapter_id)

prompt = "An astronaut is riding a horse through the jungles of Thailand."


## Optional: quantise the model to save on vram.
## Note: The model was quantised during training, and so it is recommended to do the same during inference time.
from optimum.quanto import quantize, freeze, qint8
quantize(pipeline.transformer, weights=qint8)
freeze(pipeline.transformer)
    
pipeline.to('cuda' if torch.cuda.is_available() else 'mps' if torch.backends.mps.is_available() else 'cpu') # the pipeline is already in its target precision level
model_output = pipeline(
    prompt=prompt,
    num_inference_steps=25,
    generator=torch.Generator(device='cuda' if torch.cuda.is_available() else 'mps' if torch.backends.mps.is_available() else 'cpu').manual_seed(777),
    width=896,
    height=1152,
    guidance_scale=3.5,
).images[0]

model_output.save("output.png", format="PNG")
Downloads last month
8
Inference Providers NEW
Examples

Model tree for gattaplayer/brittneyparks-flux-lora32-cosine-1e4-1e6-bs2-v01

Adapter
(31840)
this model