description: <p>Trigger word: <strong><span style="color:#fd7e14">juno</span></strong></p><p>Optional Triggers: <strong><span style="color:#228be6">space helmet</span></strong>, <strong><span style="color:#40c057">overboots</span></strong>, <strong><span style="color:#be4bdb">blaster</span></strong></p><p><br />----------</p><p><strong><em>HOW WAS THIS MADE?<br /></em></strong>----------</p><p>This is a LoKr trained on 115 images of juno. (about 40% ingame screenshots, 40% renders I made myself from a t-posing juno, and 20% official concept art)<br /><br />This was trained on SimpleTuner for 5400 steps, at batch 6, on an A6000</p><p></p><p><strong>Training strategy:</strong></p><p>So the point here was to train a genuinely flexible lora (LoKr) using nothing but repetitive "meh" quality data.</p><p>I limited myself to an ingame, self-made blender &amp; official concept art dataset.</p><p><strong>Dataset examples:</strong></p><p><img src="https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/9fecb894-15f0-4b4e-9546-54ff96ddcda0/width=525/9fecb894-15f0-4b4e-9546-54ff96ddcda0.jpeg" /></p><p>In addition to that, I've noticed that while multi-resolution training is important and needed, <em>it isn't needed throughout the entire training run</em></p><p></p><p>So my theory was that I can just purposely train 50% of my total steps at a resolution of 512px. then, once it's adapted well enough, stop training, add in the 768px and 1024px datasets, and resume training for the final 3k steps. (albeit much slower, due to the increased size of the images)</p><p></p><p>The result?<br /><em>a huge success!</em><br /><br />There is no decrease in quality nor flexibility from my other LoKr tests, and more than that, it trained significantly faster!<br /><br /><strong>lycoris settings:</strong></p><pre><code>{
      "algo": "lokr",
      "multiplier": 1.0,
      "linear_dim": 10000,
      "linear_alpha": 1,
      "factor": 12,
      "apply_preset": {
          "target_module": [
              "Attention",
              "FeedForward"
          ],
          "module_algo_map": {
              "Attention": {
                  "factor": 12
              },
              "FeedForward": {
                  "factor": 6
              }
          }
      }
  }</code></pre><p><strong>config.env:</strong></p><pre><code>RESUME_CHECKPOINT='latest'
  DATALOADER_CONFIG='config/juno.json'
  ASPECT_BUCKET_ROUNDING='2'
  TRAINING_SEED='42'
  USE_EMA='false'
  USE_XFORMERS='false'
  MINIMUM_RESOLUTION='0'
  OUTPUT_DIR='output/juno'
  USE_DORA='false'
  USE_BITFIT='false'
  LORA_TYPE='lycoris'
  LYCORIS_CONFIG='config/lycoris_config.json'
  PUSH_TO_HUB='false'
  PUSH_CHECKPOINTS='false'
  MAX_NUM_STEPS='10000'
  NUM_EPOCHS='0'
  CHECKPOINTING_STEPS='100'
  CHECKPOINTING_LIMIT='40'
  HUB_MODEL_NAME='simpletuner-lora'
  DEBUG_EXTRA_ARGS=''
  MODEL_TYPE='lora'
  MODEL_NAME='black-forest-labs/FLUX.1-dev'
  FLUX='true'
  KOLORS='false'
  STABLE_DIFFUSION_3='false'
  STABLE_DIFFUSION_LEGACY='false'
  TRAIN_BATCH_SIZE='4'
  USE_GRADIENT_CHECKPOINTING='true'
  GRADIENT_ACCUMULATION_STEPS='1'
  CAPTION_DROPOUT_PROBABILITY='0'
  RESOLUTION_TYPE='pixel_area'
  RESOLUTION='1024'
  VALIDATION_SEED='42'
  VALIDATION_STEPS='100'
  VALIDATION_RESOLUTION='1024x1024'
  VALIDATION_GUIDANCE='3.5'
  VALIDATION_GUIDANCE_RESCALE='0.0'
  VALIDATION_NUM_INFERENCE_STEPS='20'
  VALIDATION_PROMPT='concept art of juno, space helmet, white background'
  ALLOW_TF32='true'
  MIXED_PRECISION='bf16'
  OPTIMIZER=optimi-lion
  LEARNING_RATE='5e-5'
  LR_SCHEDULE='polynomial'
  LR_WARMUP_STEPS='100'
  BASE_MODEL_PRECISION='int8-quanto'
  ACCELERATE_EXTRA_ARGS=''
  TRAINING_NUM_PROCESSES='1'
  TRAINING_NUM_MACHINES='1'
  VALIDATION_TORCH_COMPILE='false'
  TRAINER_DYNAMO_BACKEND='no'
  TRAINER_EXTRA_ARGS='--lr_end=1e-8 --compress_disk_cache --optimizer_config=weight_decay=1e-3'</code></pre><p><strong>Dataset config</strong> for first 3k steps:</p><pre><code>[
      {
          "id": "juno-512",
          "type": "local",
          "instance_data_dir": "/mnt/md/0/DATASET/juno",
          "crop": false,
          "resolution": 512,
          "resolution_type": "pixel_area",
          "minimum_image_size": 512,
          "prepend_instance_prompt": false,
          "instance_prompt": "",
          "only_instance_prompt": false,
          "caption_strategy": "textfile",
          "cache_dir_vae": "/mnt/md/0/AI/SimpleTuner/SimpleTuner-Cache/vae-cache/juno-512",
          "probability": 1.0,
          "repeats": 2,
          "preserve_data_backend_cache": true,
          "cache_file_suffix": "-juno-512"
      },
      {
          "id": "juno-text-embeds",
          "type": "local",
          "dataset_type": "text_embeds",
          "default": true,
          "cache_dir": "/mnt/md/0/AI/SimpleTuner/SimpleTuner-Cache/embed-cache/juno",
          "disabled": false,
          "write_batch_size": 128
    }
  ]</code></pre><p><strong>Dataset config</strong> for steps 3000~5400:</p><pre><code>[
          {
          "id": "juno-1024",
          "type": "local",
          "instance_data_dir": "/mnt/md/0/DATASET/juno",
          "crop": false,
          "resolution": 1024,
          "resolution_type": "pixel_area",
          "minimum_image_size": 1024,
          "prepend_instance_prompt": false,
          "instance_prompt": "",
          "only_instance_prompt": false,
          "caption_strategy": "textfile",
          "cache_dir_vae": "/mnt/md/0/AI/vae-cache/juno-1024",
          "probability": 1.0,
          "repeats": 1,
          "preserve_data_backend_cache": true,
          "cache_file_suffix": "-juno-1024"
      },{
          "id": "juno-768",
          "type": "local",
          "instance_data_dir": "/mnt/md/0/DATASET/juno",
          "crop": false,
          "resolution": 768,
          "resolution_type": "pixel_area",
          "minimum_image_size": 768,
          "prepend_instance_prompt": false,
          "instance_prompt": "",
          "only_instance_prompt": false,
          "caption_strategy": "textfile",
          "cache_dir_vae": "/mnt/md/0/AI/vae-cache/juno-768",
          "probability": 1.0,
          "repeats": 2,
          "preserve_data_backend_cache": true,
          "cache_file_suffix": "-juno-768"
      },{
          "id": "juno-512",
          "type": "local",
          "instance_data_dir": "/mnt/md/0/DATASET/juno",
          "crop": false,
          "resolution": 512,
          "resolution_type": "pixel_area",
          "minimum_image_size": 512,
          "prepend_instance_prompt": false,
          "instance_prompt": "",
          "only_instance_prompt": false,
          "caption_strategy": "textfile",
          "cache_dir_vae": "/mnt/md/0/AI/vae-cache/juno-512",
          "probability": 1.0,
          "repeats": 2,
          "preserve_data_backend_cache": true,
          "cache_file_suffix": "-juno-512"
      },
      {
          "id": "juno-text-embeds",
          "type": "local",
          "dataset_type": "text_embeds",
          "default": true,
          "cache_dir": "/mnt/md/0/AI/embed-cache/juno",
          "disabled": false,
          "write_batch_size": 128
    }
  ]</code></pre><p></p>
modelVersions.availability: Public
modelVersions.baseModel: Flux.1 D
modelVersions.downloadUrl: https://civitai.com/api/download/models/798809
modelVersions.downloaded: true
modelVersions.downloadUrl: https://civitai.com/api/download/models/798809
modelVersions.format: SafeTensor
modelVersions.name: juno_for_flux_by_caith.safetensors
modelVersions.pickleScanResult: Pending
modelVersions.type: Model
modelVersions.virusScanResult: Pending
modelVersions.hash: UhIE*B~ptQbbt9xuo}RjM|VsR*jF?H%MS2of
modelVersions.type: image
modelVersions.url: https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/1a2f6533-d2b9-456f-ae16-9c2add8928b3/width=450/27421436.jpeg
modelVersions.name: v1.0
modelVersions.publishedAt: 2024-09-02T17:33:54.412Z
modelVersions.trainedWords: juno space helmet overboots
name: Juno for flux (by caith)
tags: character juno overwatch 2