train kohya style lora in diffusers
1.0.0
Comparado ao kohya-ss lora, a Lora dos difusores está faltando o Lora no FFN do BasicTransformerBlock no UNET, bem como o lora na camada de convolução de proj_in. Quanto ao TextEncoder, o Lora no MLP está ausente na versão dos difusores. Esse script de treinamento completa esses Loras ausentes, tornando-o idêntico ao Kohya-SS Lora.
Versão de difusores maior que 0,21.2. Como eles implementaram o carregamento Lora no estilo Koyha, reutilizei a maior parte do código deles para minha implementação.
Eu só implemento o script de treinamento Dreambooth aqui. Você pode executar o seguinte comando para começar a treinar:
export MODEL_NAME= " runwayml/stable-diffusion-v1-5 "
export INSTANCE_DIR= " <your image folder> "
export OUTPUT_DIR= " output/<output folder> "
accelerate launch train_dreambooth_lora.py
--pretrained_model_name_or_path= $MODEL_NAME
--instance_data_dir= $INSTANCE_DIR
--output_dir= $OUTPUT_DIR
--instance_prompt= " a photo of sks dog "
--resolution=512
--train_batch_size=1
--gradient_accumulation_steps=1
--checkpointing_steps=100
--learning_rate=1e-4
--lr_scheduler= " constant "
--lr_warmup_steps=0
--max_train_steps=5000
--validation_prompt= " A close potrait of sks dog "
--validation_epochs=50
--train_text_encoder
--seed= " 0 "
python inference_text_to_image_lora . py