MakeAnything / scripts /recraft_train.sh
yiren98's picture
Upload 98 files
abd09b6 verified
#!/bin/bash
LORA_RANK=256
BATCH_SIZE=2
DATA_CONFIG="path/to/data_config.toml"
OUTPUT_DIR="path/to/output_dir"
OUTNAME="output_name"
LOG_DIR=$OUTPUT_DIR/logs
MAX_TRAIN_EPOCHS=100
MAX_TRAIN_STEPS=50000
SAVE_EVERY_N_EPOCHS=5
SAVE_EVERY_N_STEPS=5000
CKPT_PATH="path/to/unet_checkpoint.safetensors"
CLIP_L_PATH="path/to/clip_l.safetensors"
T5XXL_PATH="path/to/t5xxl.safetensors"
AE_PATH="path/to/vae.safetensors"
sample_images_path="path/to/sample_images.txt"
sample_prompts_path="path/to/sample_prompts.txt"
frame_num=9 # 4 for 1024 or 9 for 1056
accelerate launch --config_file="path/to/accelerate_config.yaml" \
--main_process_port=23322 --mixed_precision=bf16 --num_cpu_threads_per_process=1 flux_train_recraft.py \
--pretrained_model_name_or_path=$CKPT_PATH \
--clip_l=$CLIP_L_PATH \
--t5xxl=$T5XXL_PATH \
--ae=$AE_PATH \
--max_token_length=225 --apply_t5_attn_mask \
--dataset_config=$DATA_CONFIG \
--cache_latents --vae_batch_size=4 --cache_latents_to_disk --cache_text_encoder_outputs --cache_text_encoder_outputs_to_disk --skip_cache_check \
--enable_bucket --min_bucket_reso=256 --max_bucket_reso=2304 --bucket_reso_steps=64 --bucket_no_upscale \
--output_dir=$OUTPUT_DIR --output_name=$OUTNAME --logging_dir=$LOG_DIR --log_with=tensorboard --log_prefix="" --log_tracker_name=tryon \
--save_every_n_epochs=$SAVE_EVERY_N_EPOCHS --save_every_n_steps=$SAVE_EVERY_N_STEPS --save_precision=bf16 --save_model_as=safetensors \
--max_train_epochs=$MAX_TRAIN_EPOCHS --max_train_steps=$MAX_TRAIN_STEPS \
--initial_epoch=0 --initial_step=0 \
--train_batch_size=$BATCH_SIZE --max_data_loader_n_workers=2 --persistent_data_loader_workers --mixed_precision=bf16 --fp8_base \
--mem_eff_attn --sdpa --gradient_checkpointing --gradient_accumulation_steps=1 \
--seed=42 --clip_skip=2 --noise_offset=0.0375 --loss_type=l2 --adaptive_noise_scale=0.0375 \
--learning_rate=1 --unet_lr=1 --text_encoder_lr=1 \
--optimizer_type=Prodigy --optimizer_args "weight_decay=0.01" "betas=.9,.99" "decouple=True" "use_bias_correction=True" "d_coef=0.5" "d0=1e-4" \
--lr_scheduler=cosine_with_restarts --lr_scheduler_num_cycles=1 --lr_decay_steps=160 --lr_scheduler_min_lr_ratio=0.1 \
--network_module=networks.lora_flux --network_dim=$LORA_RANK --network_alpha=$LORA_RANK --network_train_unet_only \
--guidance_scale=1 --timestep_sampling=flux_shift --discrete_flow_shift 3.1582 \
--model_prediction_type=raw \
--sample_every_n_steps 300 \
--sample_at_first \
--sample_images $sample_images_path \
--sample_prompts $sample_prompts_path \
--frame_num $frame_num