Text-to-Image
Diffusers
flux
flux-diffusers
simpletuner
Not-For-All-Audiences
lora
template:sd-lora
standard
license: other | |
base_model: "black-forest-labs/FLUX.1-dev" | |
tags: | |
- flux | |
- flux-diffusers | |
- text-to-image | |
- diffusers | |
- simpletuner | |
- not-for-all-audiences | |
- lora | |
- template:sd-lora | |
- standard | |
inference: true | |
widget: | |
- text: 'unconditional (blank prompt)' | |
parameters: | |
negative_prompt: 'blurry, cropped, ugly' | |
output: | |
url: ./assets/image_0_0.png | |
- text: 'a photograph of a shirtless man with big pecs' | |
parameters: | |
negative_prompt: 'blurry, cropped, ugly' | |
output: | |
url: ./assets/image_1_0.png | |
# flux-pecs | |
This is a standard PEFT LoRA derived from [black-forest-labs/FLUX.1-dev](https://huggingface.co/black-forest-labs/FLUX.1-dev). | |
The main validation prompt used during training was: | |
``` | |
a photograph of a shirtless man with big pecs | |
``` | |
## Validation settings | |
- CFG: `3.0` | |
- CFG Rescale: `0.0` | |
- Steps: `20` | |
- Sampler: `None` | |
- Seed: `42` | |
- Resolution: `1024x1024` | |
Note: The validation settings are not necessarily the same as the [training settings](#training-settings). | |
You can find some example images in the following gallery: | |
<Gallery /> | |
The text encoder **was not** trained. | |
You may reuse the base model text encoder for inference. | |
## Training settings | |
- Training epochs: 20 | |
- Training steps: 1100 | |
- Learning rate: 0.0002 | |
- Effective batch size: 8 | |
- Micro-batch size: 8 | |
- Gradient accumulation steps: 1 | |
- Number of GPUs: 1 | |
- Prediction type: flow-matching | |
- Rescaled betas zero SNR: False | |
- Optimizer: bnb-adamw8bit | |
- Precision: Pure BF16 | |
- Quantised: Yes: int8-quanto | |
- Xformers: Not used | |
- LoRA Rank: 16 | |
- LoRA Alpha: None | |
- LoRA Dropout: 0.1 | |
- LoRA initialisation style: default | |
## Datasets | |
### bigpecs-512 | |
- Repeats: 0 | |
- Total number of images: 97 | |
- Total number of aspect buckets: 4 | |
- Resolution: 0.262144 megapixels | |
- Cropped: False | |
- Crop style: None | |
- Crop aspect: None | |
### bigpecs-1024 | |
- Repeats: 0 | |
- Total number of images: 76 | |
- Total number of aspect buckets: 3 | |
- Resolution: 1.048576 megapixels | |
- Cropped: False | |
- Crop style: None | |
- Crop aspect: None | |
### bigpecs-512-crop | |
- Repeats: 0 | |
- Total number of images: 105 | |
- Total number of aspect buckets: 1 | |
- Resolution: 0.262144 megapixels | |
- Cropped: True | |
- Crop style: random | |
- Crop aspect: square | |
### bigpecs-1024-crop | |
- Repeats: 0 | |
- Total number of images: 105 | |
- Total number of aspect buckets: 1 | |
- Resolution: 1.048576 megapixels | |
- Cropped: True | |
- Crop style: random | |
- Crop aspect: square | |
## Inference | |
```python | |
import torch | |
from diffusers import DiffusionPipeline | |
model_id = 'black-forest-labs/FLUX.1-dev' | |
adapter_id = 'markury/flux-pecs' | |
pipeline = DiffusionPipeline.from_pretrained(model_id) | |
pipeline.load_lora_weights(adapter_id) | |
prompt = "a photograph of a shirtless man with big pecs" | |
pipeline.to('cuda' if torch.cuda.is_available() else 'mps' if torch.backends.mps.is_available() else 'cpu') | |
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(1641421826), | |
width=1024, | |
height=1024, | |
guidance_scale=3.0, | |
).images[0] | |
image.save("output.png", format="PNG") | |
``` | |