simpletuner-lora / README.md
zhengzhou's picture
Model card auto-generated by SimpleTuner
577793d verified
metadata
license: other
base_model: flux/unknown-model
tags:
  - flux
  - flux-diffusers
  - text-to-image
  - diffusers
  - simpletuner
  - not-for-all-audiences
  - lora
  - template:sd-lora
  - lycoris
inference: true
widget:
  - text: unconditional (blank prompt)
    parameters:
      negative_prompt: blurry, cropped, ugly
    output:
      url: ./assets/image_0_0.png
  - text: >-
      The vehicle in the image is a luxury SUV with a bold and modern design. It
      features a large chrome-accented grille, sleek LED headlights, and
      sculpted body lines that enhance its aerodynamic look. The high ground
      clearance and large alloy wheels suggest off-road capability, while chrome
      trim and a panoramic sunroof add a touch of elegance. The rear is equipped
      with slim LED taillights and dual exhaust outlets, emphasizing both style
      and performance. | Length: 3663.0 mm | Width: 2050.0 mm | Height: 1145.0
      mm | Wheelbase: 3000.0 mm
    parameters:
      negative_prompt: blurry, cropped, ugly
    output:
      url: ./assets/image_1_0.png
  - text: >-
      This image showcases the side of the luxury SUV, highlighting its bold and
      modern design. The sculpted body lines and high beltline create a dynamic
      and aerodynamic profile, while the large alloy wheels and high ground
      clearance emphasize its off-road capability. Chrome trim around the
      windows and a panoramic sunroof add a touch of sophistication. At the
      rear, the slim LED taillights extend towards the side, seamlessly
      integrating with the vehicle’s sleek silhouette. | Length: 4663.0 mm |
      Width: 2050.0 mm | Height: 1145.0 mm | Wheelbase: 4000.0 mm
    parameters:
      negative_prompt: blurry, cropped, ugly
    output:
      url: ./assets/image_2_0.png
  - text: >-
      The vehicle in the image is a luxury SUV with a bold and modern design. It
      features a large chrome-accented grille, sleek LED headlights, and
      sculpted body lines that enhance its aerodynamic look. The high ground
      clearance and large alloy wheels suggest off-road capability, while chrome
      trim and a panoramic sunroof add a touch of elegance. The rear is equipped
      with slim LED taillights and dual exhaust outlets, emphasizing both style
      and performance.
    parameters:
      negative_prompt: blurry, cropped, ugly
    output:
      url: ./assets/image_3_0.png
  - text: >-
      The vehicle in the image is a luxury SUV with a bold and modern design. It
      features a large chrome-accented grille, sleek LED headlights, and
      sculpted body lines that enhance its aerodynamic look. The high ground
      clearance and large alloy wheels suggest off-road capability, while chrome
      trim and a panoramic sunroof add a touch of elegance. The rear is equipped
      with slim LED taillights and dual exhaust outlets, emphasizing both style
      and performance. | Length: 4663.0 mm | Width: 2050.0 mm | Height: 1145.0
      mm | Wheelbase: 4000.0 mm
    parameters:
      negative_prompt: blurry, cropped, ugly
    output:
      url: ./assets/image_4_0.png

simpletuner-lora

This is a LyCORIS adapter derived from flux/unknown-model.

The main validation prompt used during training was:

The vehicle in the image is a luxury SUV with a bold and modern design. It features a large chrome-accented grille, sleek LED headlights, and sculpted body lines that enhance its aerodynamic look. The high ground clearance and large alloy wheels suggest off-road capability, while chrome trim and a panoramic sunroof add a touch of elegance. The rear is equipped with slim LED taillights and dual exhaust outlets, emphasizing both style and performance. | Length: 4663.0 mm | Width: 2050.0 mm | Height: 1145.0 mm | Wheelbase: 4000.0 mm

Validation settings

  • CFG: 3.0
  • CFG Rescale: 0.0
  • Steps: 20
  • Sampler: FlowMatchEulerDiscreteScheduler
  • Seed: 42
  • Resolution: 1024x1024
  • 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
The vehicle in the image is a luxury SUV with a bold and modern design. It features a large chrome-accented grille, sleek LED headlights, and sculpted body lines that enhance its aerodynamic look. The high ground clearance and large alloy wheels suggest off-road capability, while chrome trim and a panoramic sunroof add a touch of elegance. The rear is equipped with slim LED taillights and dual exhaust outlets, emphasizing both style and performance. | Length: 3663.0 mm | Width: 2050.0 mm | Height: 1145.0 mm | Wheelbase: 3000.0 mm
Negative Prompt
blurry, cropped, ugly
Prompt
This image showcases the side of the luxury SUV, highlighting its bold and modern design. The sculpted body lines and high beltline create a dynamic and aerodynamic profile, while the large alloy wheels and high ground clearance emphasize its off-road capability. Chrome trim around the windows and a panoramic sunroof add a touch of sophistication. At the rear, the slim LED taillights extend towards the side, seamlessly integrating with the vehicle’s sleek silhouette. | Length: 4663.0 mm | Width: 2050.0 mm | Height: 1145.0 mm | Wheelbase: 4000.0 mm
Negative Prompt
blurry, cropped, ugly
Prompt
The vehicle in the image is a luxury SUV with a bold and modern design. It features a large chrome-accented grille, sleek LED headlights, and sculpted body lines that enhance its aerodynamic look. The high ground clearance and large alloy wheels suggest off-road capability, while chrome trim and a panoramic sunroof add a touch of elegance. The rear is equipped with slim LED taillights and dual exhaust outlets, emphasizing both style and performance.
Negative Prompt
blurry, cropped, ugly
Prompt
The vehicle in the image is a luxury SUV with a bold and modern design. It features a large chrome-accented grille, sleek LED headlights, and sculpted body lines that enhance its aerodynamic look. The high ground clearance and large alloy wheels suggest off-road capability, while chrome trim and a panoramic sunroof add a touch of elegance. The rear is equipped with slim LED taillights and dual exhaust outlets, emphasizing both style and performance. | Length: 4663.0 mm | Width: 2050.0 mm | Height: 1145.0 mm | Wheelbase: 4000.0 mm
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: 0
  • Training steps: 1500
  • Learning rate: 0.0001
    • Learning rate schedule: polynomial
    • Warmup steps: 100
  • Max grad norm: 2.0
  • Effective batch size: 6
    • Micro-batch size: 1
    • Gradient accumulation steps: 1
    • Number of GPUs: 6
  • Gradient checkpointing: True
  • Prediction type: flow-matching (extra parameters=['shift=3', 'flux_guidance_mode=constant', 'flux_guidance_value=1.0', 'flow_matching_loss=compatible'])
  • Optimizer: adamw_bf16
  • Trainable parameter precision: Pure BF16
  • Caption dropout probability: 10.0%

LyCORIS Config:

{
    "algo": "lokr",
    "multiplier": 1.0,
    "linear_dim": 10000,
    "linear_alpha": 1,
    "factor": 16,
    "apply_preset": {
        "target_module": [
            "Attention",
            "FeedForward"
        ],
        "module_algo_map": {
            "Attention": {
                "factor": 16
            },
            "FeedForward": {
                "factor": 8
            }
        }
    }
}

Datasets

cardatasets_w_wlh2

  • Repeats: 5
  • Total number of images: ~4746
  • Total number of aspect buckets: 1
  • Resolution: 0.262144 megapixels
  • Cropped: True
  • Crop style: center
  • Crop aspect: square
  • Used for regularisation data: No

Inference

import torch
from diffusers import DiffusionPipeline
from lycoris import create_lycoris_from_weights


def download_adapter(repo_id: str):
    import os
    from huggingface_hub import hf_hub_download
    adapter_filename = "pytorch_lora_weights.safetensors"
    cache_dir = os.environ.get('HF_PATH', os.path.expanduser('~/.cache/huggingface/hub/models'))
    cleaned_adapter_path = repo_id.replace("/", "_").replace("\\", "_").replace(":", "_")
    path_to_adapter = os.path.join(cache_dir, cleaned_adapter_path)
    path_to_adapter_file = os.path.join(path_to_adapter, adapter_filename)
    os.makedirs(path_to_adapter, exist_ok=True)
    hf_hub_download(
        repo_id=repo_id, filename=adapter_filename, local_dir=path_to_adapter
    )

    return path_to_adapter_file
    
model_id = '/data/shared_workspace/zgt/text2car_dataset/FLUX.1-dev'
adapter_repo_id = 'zhengzhou/simpletuner-lora'
adapter_filename = 'pytorch_lora_weights.safetensors'
adapter_file_path = download_adapter(repo_id=adapter_repo_id)
pipeline = DiffusionPipeline.from_pretrained(model_id, torch_dtype=torch.bfloat16) # loading directly in bf16
lora_scale = 1.0
wrapper, _ = create_lycoris_from_weights(lora_scale, adapter_file_path, pipeline.transformer)
wrapper.merge_to()

prompt = "The vehicle in the image is a luxury SUV with a bold and modern design. It features a large chrome-accented grille, sleek LED headlights, and sculpted body lines that enhance its aerodynamic look. The high ground clearance and large alloy wheels suggest off-road capability, while chrome trim and a panoramic sunroof add a touch of elegance. The rear is equipped with slim LED taillights and dual exhaust outlets, emphasizing both style and performance. | Length: 4663.0 mm | Width: 2050.0 mm | Height: 1145.0 mm | Wheelbase: 4000.0 mm"


## Optional: quantise the model to save on vram.
## Note: The model was not quantised during training, so it is not necessary to quantise it 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
image = pipeline(
    prompt=prompt,
    num_inference_steps=20,
    generator=torch.Generator(device='cuda' if torch.cuda.is_available() else 'mps' if torch.backends.mps.is_available() else 'cpu').manual_seed(42),
    width=1024,
    height=1024,
    guidance_scale=3.0,
).images[0]
image.save("output.png", format="PNG")