CivArchive
    Preview 123921557
    Preview 123921575
    Preview 123921700
    Preview 123921678
    Preview 123921800
    Preview 123921919
    Preview 123926881
    Preview 123922083
    Preview 123923986

    Light Concepts

    Training data is a collection of various light concepts I enjoy using that are not overly represented in large datasets, trained as a single lora.

    ℹ️ LoRA work best when applied to the base models on which they are trained. Please read the About This Version on the appropriate base models and workflow/training information.

    I've trained many of these concepts before, generally they are nice to use to enhance the lighting of generations or give interesting effects.

    Trained on a large mixed NL and tags dataset, at mixed [1024, 1536] resolutions. Previews are mostly generated at 1024x1536 with a combination of tags and NL prompts.

    Concept tags

    Not limited to, but collected by works containing:

    
    dispersion
    hue shifting
    refraction
    subsurface scattering
    translucent
    
    bioluminescence
    caustics
    dappled moonlight
    glowing hot
    ultraviolet light

    Works best in combination with NL if you name a character, describe their basic appearance, and finish with descriptions of light sources and their effects on the scene:

    
    A vibrant and dynamic illustration of Hoshimachi Suisei from Hololive, featuring her squatting in front of a glowing triangular prism.
    A beam of white light enters the prism from the left and refracts into a vibrant rainbow on the right. The background is a solid dark grey to emphasize the lighting effects.

    Description

    Trained on Anima Preview (version 1)

    Assume that any lora trained on the preview version won't work well on the final version.


    Trained the mixed tags and natural language dataset.

    Config:

    # dataset-anima.toml
    # Resolution settings.
    resolutions = [1024, 1280]
    
    # Aspect ratio bucketing settings
    enable_ar_bucket = true
    min_ar = 0.5
    max_ar = 2.0
    num_ar_buckets = 7
    
    [[directory]] # IMAGES
    # Path to the directory containing images and their corresponding caption files.
    path = '/mnt/d/training_data/images'
    num_repeats = 1
    resolutions = [1024, 1280]
    
    # Change these paths
    output_dir = '/mnt/d/anima/training_output'
    dataset = 'dataset-anima.toml'
    
    # training settings
    epochs = 50
    micro_batch_size_per_gpu = 16
    pipeline_stages = 1
    gradient_accumulation_steps = 1
    gradient_clipping = 1.0
    warmup_steps = 100
    train_llm_adapter = true
    
    # eval settings
    eval_every_n_epochs = 1
    eval_before_first_step = true
    eval_micro_batch_size_per_gpu = 1
    eval_gradient_accumulation_steps = 1
    
    # misc settings
    save_every_n_epochs = 1
    checkpoint_every_n_minutes = 120
    activation_checkpointing = true
    partition_method = 'parameters'
    save_dtype = 'bfloat16'
    caching_batch_size = 1
    steps_per_print = 1
    
    [model]
    type = 'anima'
    
    transformer_path = '/mnt/c/workspace/models/diffusion_models/anima-preview.safetensors'
    vae_path = '/mnt/c/workspace/models/vae/qwen_image_vae.safetensors'
    qwen_path = '../qwen0.6/Qwen3-0.6B/'
    dtype = 'bfloat16'
    timestep_sample_method = 'logit_normal'
    sigmoid_scale = 1.0
    shift = 3.0
    
    # Caption Processing Options
    cache_text_embeddings = false
    # NOTE: Requires cache_text_embeddings = false to work!
    # For cached embeddings, use cache_shuffle_num in your dataset config instead.
    shuffle_tags = true
    tag_delimiter = ', '
    keep_first_n_tags = 5
    shuffle_keep_first_n = 5
    tag_dropout_percent = 0.3
    protected_tags_file = './protected_tags.txt'
    
    nl_shuffle_sentences = false
    nl_keep_first_sentence = true
    
    # 'tags' 'nl' 'mixed'
    caption_mode = 'mixed'
    
    debug_caption_processing = false
    debug_caption_interval = 1000
    
    [adapter]
    type = 'lora'
    rank = 64
    dtype = 'bfloat16'
    
    # AdamW from the optimi library is a good default since it automatically uses Kahan summation when training bfloat16 weights.
    [optimizer]
    type = 'adamw_optimi'
    lr = 8e-5
    betas = [0.9, 0.99]
    weight_decay = 0.01
    eps = 1e-8

    FAQ

    LORA
    Anima

    Details

    Downloads
    208
    Platform
    CivitAI
    Platform Status
    Available
    Created
    3/12/2026
    Updated
    4/27/2026
    Deleted
    -

    Files

    anima-hikariwaza-e46.safetensors

    Mirrors