V1.1: I didn't notice I accidentally trained on both unet and TE. Obviously for a lora like this the TE layers are 100% unnecessary, therefore I've stripped them out for this new version. If nothing else - just to avoid the 'lora key not loaded' spam in comfyui log.
Trained with only booru tags on a dataset of ~70 quickly hand picked screenshots with VLC without even cropping.
It was supposed to be a test but it turned out so well that I'm sharing it.
I can't believe how easy it is to train characters on Anima. In comparison with my LTX lora - this is like 'level 1' and the other is level 300 or something xD No challenge whatsoever here. Throw LR = 0.0001 or LR = 0.00005 - hardly matters because both will work. 200 images or just 30 it looks as though it won't matter much as well. Ignore the average loss curve - means nothing as usual.
Trained on kohya sd-scripts.
Training command and config (for reference) - Updated to use flash_attn, vae disk cache and unet training only - the rest remains exactly the same as I used:
accelerate launch --num_cpu_threads_per_process 1 --mixed_precision bf16 anima_train_network.py ^
--pretrained_model_name_or_path="F:\AI\Anima\anima_baseV10.safetensors" ^
--qwen3="F:\AI\text_encoders\qwen_3_06b_base.safetensors" ^
--vae="F:\AI\VAE\Qwen-Image\qwen_image_vae.safetensors" ^
--dataset_config="O:\AI\MY_DATASETS\ANIME\rougo_ni_sonaete_isekai_de_8-manmai_no_kinka_wo_tamemasu\yamano_mitsuha.toml" ^
--output_dir="O:\AI\MY_DATASETS\ANIME\rougo_ni_sonaete_isekai_de_8-manmai_no_kinka_wo_tamemasu\yamano mitsuha\OUTPUT" ^
--output_name="yamano_mitsuha" ^
--save_model_as=safetensors --network_module=networks.lora_anima --attn_mode=flash --optimizer_type="AdamW8bit" --lr_scheduler="constant" --timestep_sampling="sigmoid" --discrete_flow_shift=1.0 --mixed_precision="bf16" --gradient_checkpointing --logging_dir=logs ^
--cache_latents --cache_latents_to_disk --vae_disable_cache --network_train_unet_only ^
--network_dim=8 --learning_rate=0.00007 --seed 42 --max_train_epochs=2 --save_every_n_epochs=1 --save_every_n_steps=500
[general]
caption_extension = '.txt'
batch_size = 1
enable_bucket = true
bucket_no_upscale = true
max_bucket_reso = 1536
shuffle_caption = true
caption_tag_dropout_rate = 0.0
caption_dropout_rate = 0.0
## ---------------------------------------------------------
#########################################################
## 512 x 512
#########################################################
[[datasets]]
resolution = [512, 512]
[[datasets.subsets]]
image_dir = "O:/AI/MY_DATASETS/ANIME/rougo_ni_sonaete_isekai_de_8-manmai_no_kinka_wo_tamemasu/yamano mitsuha"
num_repeats = 4
[[datasets.subsets]]
image_dir = "O:/AI/MY_DATASETS/ANIME/rougo_ni_sonaete_isekai_de_8-manmai_no_kinka_wo_tamemasu/yamano mitsuha/REPEATS"
num_repeats = 4
#########################################################
## 768 x 768
#########################################################
[[datasets]]
resolution = [768, 768]
skip_image_resolution = [512, 512]
[[datasets.subsets]]
image_dir = "O:/AI/MY_DATASETS/ANIME/rougo_ni_sonaete_isekai_de_8-manmai_no_kinka_wo_tamemasu/yamano mitsuha"
num_repeats = 3
[[datasets.subsets]]
image_dir = "O:/AI/MY_DATASETS/ANIME/rougo_ni_sonaete_isekai_de_8-manmai_no_kinka_wo_tamemasu/yamano mitsuha/REPEATS"
num_repeats = 3
#########################################################
## 1024 x 1024
#########################################################
[[datasets]]
resolution = [1024, 1024]
skip_image_resolution = [768, 768]
[[datasets.subsets]]
image_dir = "O:/AI/MY_DATASETS/ANIME/rougo_ni_sonaete_isekai_de_8-manmai_no_kinka_wo_tamemasu/yamano mitsuha"
num_repeats = 2
[[datasets.subsets]]
image_dir = "O:/AI/MY_DATASETS/ANIME/rougo_ni_sonaete_isekai_de_8-manmai_no_kinka_wo_tamemasu/yamano mitsuha/REPEATS"
num_repeats = 2
#########################################################
## 1536 x 1536
#########################################################
[[datasets]]
resolution = [1536, 1536]
skip_image_resolution = [1024, 1024]
[[datasets.subsets]]
image_dir = "O:/AI/MY_DATASETS/ANIME/rougo_ni_sonaete_isekai_de_8-manmai_no_kinka_wo_tamemasu/yamano mitsuha"
num_repeats = 1
[[datasets.subsets]]
image_dir = "O:/AI/MY_DATASETS/ANIME/rougo_ni_sonaete_isekai_de_8-manmai_no_kinka_wo_tamemasu/yamano mitsuha/REPEATS"
num_repeats = 1
Description
removed TE layers because they are 100% not necessary


