Sd35m Sfwbooru Lycoris
Model Overview
Model Features
Model Capabilities
Use Cases
license: other base_model: "stabilityai/stable-diffusion-3.5-medium" tags:
- sd3
- sd3-diffusers
- text-to-image
- image-to-image
- diffusers
- simpletuner
- not-for-all-audiences
- lora
- template:sd-lora
- lycoris pipeline_tag: text-to-image inference: true widget:
- text: 'unconditional (blank prompt)' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_0_0.png
- text: 'Alien planet, strange rock formations, glowing plants, bizarre creatures, surreal atmosphere' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_1_0.png
- text: 'Alien marketplace, bizarre creatures, exotic goods, vibrant colors, otherworldly atmosphere' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_2_0.png
- text: 'Child holding a balloon, happy expression, colorful balloons, sunny day, high detail' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_3_0.png
- text: 'a 4-panel comic strip showing an orange cat saying the words ''HELP'' and ''LASAGNA''' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_4_0.png
- text: 'a hand is holding a comic book with a cover that reads ''The Adventures of Superhero''' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_5_0.png
- text: 'Underground cave filled with crystals, glowing lights, reflective surfaces, fantasy environment, high detail' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_6_0.png
- text: 'Bustling cyberpunk bazaar, vendors, neon signs, advanced tech, crowded, high detail' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_7_0.png
- text: 'Cyberpunk hacker in a dark room, neon glow, multiple screens, intense focus, high detail' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_8_0.png
- text: 'a cybernetic anne of green gables with neural implant and bio mech augmentations' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_9_0.png
- text: 'Post-apocalyptic cityscape, ruined buildings, overgrown vegetation, dark and gritty, high detail' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_10_0.png
- text: 'Magical castle in a lush forest, glowing windows, fantasy architecture, high resolution, detailed textures' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_11_0.png
- text: 'Ruins of an ancient temple in an enchanted forest, glowing runes, mystical creatures, high detail' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_12_0.png
- text: 'Mystical forest, glowing plants, fairies, magical creatures, fantasy art, high detail' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_13_0.png
- text: 'Magical garden with glowing flowers, fairies, serene atmosphere, detailed plants, high resolution' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_14_0.png
- text: 'Whimsical garden filled with fairies, magical plants, sparkling lights, serene atmosphere, high detail' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_15_0.png
- text: 'Majestic dragon soaring through the sky, detailed scales, dynamic pose, fantasy art, high resolution' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_16_0.png
- text: 'Fantasy world, floating islands in the sky, waterfalls, lush vegetation, detailed landscape, high resolution' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_17_0.png
- text: 'Futuristic city skyline at night, neon lights, cyberpunk style, high contrast, sharp focus' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_18_0.png
- text: 'Space battle scene, starships fighting, laser beams, explosions, cosmic background' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_19_0.png
- text: 'Abandoned fairground at night, eerie rides, ghostly figures, fog, dark atmosphere, high detail' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_20_0.png
- text: 'Spooky haunted mansion on a hill, dark and eerie, glowing windows, ghostly atmosphere, high detail' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_21_0.png
- text: 'a hardcover physics textbook that is called PHYSICS FOR DUMMIES' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_22_0.png
- text: 'Epic medieval battle, knights in armor, dynamic action, detailed landscape, high resolution' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_23_0.png
- text: 'Bustling medieval market with merchants, knights, and jesters, vibrant colors, detailed' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_24_0.png
- text: 'Cozy medieval tavern, warm firelight, adventurers drinking, detailed interior, rustic atmosphere' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_25_0.png
- text: 'Futuristic city skyline at night, neon lights, cyberpunk style, high contrast, sharp focus' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_26_0.png
- text: 'Forest with neon-lit trees, glowing plants, bioluminescence, surreal atmosphere, high detail' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_27_0.png
- text: 'Bright neon sign in a busy city street, ''Open 24 Hours'', bold typography, glowing lights' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_28_0.png
- text: 'Vibrant neon sign, ''Bar'', bold typography, dark background, glowing lights, detailed design' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_29_0.png
- text: 'Pirate ship on the high seas, stormy weather, detailed sails, dramatic waves, photorealistic' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_30_0.png
- text: 'Pirate discovering a treasure chest, detailed gold coins, tropical island, dramatic lighting' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_31_0.png
- text: 'a photograph of a woman experiencing a psychedelic trip. trippy, 8k, uhd, fractal' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_32_0.png
- text: 'Cozy cafe on a rainy day, people sipping coffee, warm lights, reflections on wet pavement, photorealistic' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_33_0.png
- text: '1980s arcade, neon lights, vintage game machines, kids playing, vibrant colors, nostalgic atmosphere' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_34_0.png
- text: '1980s game room with vintage arcade machines, neon lights, vibrant colors, nostalgic feel' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_35_0.png
- text: 'Robot blacksmith forging metal, sparks flying, detailed workshop, futuristic and medieval blend' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_36_0.png
- text: 'Sleek robot performing a dance, futuristic theater, holographic effects, detailed, high resolution' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_37_0.png
- text: 'High-tech factory where robots are assembled, detailed machinery, futuristic setting, high detail' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_38_0.png
- text: 'Garden tended by robots, mechanical plants, colorful flowers, futuristic setting, high detail' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_39_0.png
- text: 'Cute robotic pet, futuristic home, sleek design, detailed features, friendly and animated' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_40_0.png
- text: 'cctv trail camera night time security picture of a wendigo in the woods' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_41_0.png
- text: 'Astronaut exploring an alien planet, detailed landscape, futuristic suit, cosmic background' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_42_0.png
- text: 'Futuristic space station orbiting a distant exoplanet, sleek design, detailed structures, cosmic backdrop' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_43_0.png
- text: 'a person holding a sign that reads ''SOON''' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_44_0.png
- text: 'Steampunk airship in the sky, intricate design, Victorian aesthetics, dynamic scene, high detail' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_45_0.png
- text: 'Steampunk inventor in a workshop, intricate gadgets, Victorian attire, mechanical arm, goggles' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_46_0.png
- text: 'Stormy ocean with towering waves, dramatic skies, detailed water, intense atmosphere, high resolution' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_47_0.png
- text: 'Dramatic stormy sea, lighthouse in the distance, lightning striking, dark clouds, high detail' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_48_0.png
- text: 'Graffiti artist creating a mural, vibrant colors, urban setting, dynamic action, high resolution' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_49_0.png
- text: 'Urban alleyway filled with vibrant graffiti art, tags and murals, realistic textures' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_50_0.png
- text: 'Urban street sign, ''Main Street'', bold typography, realistic textures, weathered look' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_51_0.png
- text: 'Classic car show with vintage vehicles, vibrant colors, nostalgic atmosphere, high detail' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_52_0.png
- text: 'Retro diner sign, ''Joe''s Diner'', classic 1950s design, neon lights, weathered look' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_53_0.png
- text: 'Vintage store sign with elaborate typography, ''Antique Shop'', hand-painted, weathered look' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_54_0.png
- text: 'A photo-realistic image of a cat' parameters: negative_prompt: 'blurry, cropped, ugly' output: url: ./assets/image_55_0.png
sd35m-sfwbooru-lycoris
This is a LyCORIS adapter derived from stabilityai/stable-diffusion-3.5-medium.
The main validation prompt used during training was:
A photo-realistic image of a cat
Validation settings
- CFG:
3.2
- CFG Rescale:
0.0
- Steps:
30
- Sampler:
FlowMatchEulerDiscreteScheduler
- Seed:
42
- Resolution:
1024x1024
- Skip-layer guidance: skip_guidance_layers=[7, 8, 9],
Note: The validation settings are not necessarily the same as the training settings.
You can find some example images in the following gallery:
The text encoder was not trained. You may reuse the base model text encoder for inference.
Training settings
- Training epochs: 3
- Training steps: 220250
- Learning rate: 5e-06
- Learning rate schedule: cosine
- Warmup steps: 500000
- Max grad value: 0.01
- Effective batch size: 6
- Micro-batch size: 6
- Gradient accumulation steps: 1
- Number of GPUs: 1
- Gradient checkpointing: True
- Prediction type: flow-matching (extra parameters=['shift=3'])
- Optimizer: optimi-lion
- Trainable parameter precision: Pure BF16
- Base model precision:
no_change
- Caption dropout probability: 10.0%
LyCORIS Config:
{
"algo": "lokr",
"multiplier": 1.0,
"full_matrix": true,
"linear_alpha": 1,
"factor": 16,
"apply_preset": {
"target_module": [
"Attention"
],
"module_algo_map": {
"Attention": {
"factor": 6
}
}
}
}
Datasets
sfwbooru-crop
- Repeats: 0
- Total number of images: 363920
- Total number of aspect buckets: 1
- Resolution: 1.048576 megapixels
- Cropped: True
- Crop style: random
- 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 = 'stabilityai/stable-diffusion-3.5-medium'
adapter_repo_id = 'bghira/sd35m-sfwbooru-lycoris'
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 = "A photo-realistic image of a cat"
negative_prompt = 'blurry, cropped, ugly'
## 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
model_output = pipeline(
prompt=prompt,
negative_prompt=negative_prompt,
num_inference_steps=30,
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.2,
skip_guidance_layers=[7, 8, 9],
).images[0]
model_output.save("output.png", format="PNG")
Exponential Moving Average (EMA)
SimpleTuner generates a safetensors variant of the EMA weights and a pt file.
The safetensors file is intended to be used for inference, and the pt file is for continuing finetuning.
The EMA model may provide a more well-rounded result, but typically will feel undertrained compared to the full model as it is a running decayed average of the model weights.