runwayml/stable-diffusion

Some Lycoris Downloaded at CivitAI doesn't work when using load_lora_weights

jamesnogra opened this issue · 0 comments

I have this python code using stable diffusion 1.5

!pip install -U git+https://github.com/huggingface/diffusers
!pip install -q transformers accelerate
!pip install omegaconf
!pip install safetensors

from diffusers import StableDiffusionPipeline, DPMSolverMultistepScheduler
from diffusers.models import AutoencoderKL
import torch

vae = AutoencoderKL.from_pretrained(
    "stabilityai/sd-vae-ft-mse",
    torch_dtype=torch.float16,
)
pipe = StableDiffusionPipeline.from_pretrained(
     '/content/drive/MyDrive/majicmix-alpha',
     safety_checker=None,
     torch_dtype=torch.float16,
     vae=vae
)
pipe.load_lora_weights(".", weight_name="/content/drive/MyDrive/loras/XXX.safetensors")
pipe.fuse_lora(lora_scale=0.25)

But when running the code at Google Colab, at line where pipe.load_lora_weights() is called, there is this error:

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
[<ipython-input-2-500e695671dc>](https://localhost:8080/#) in <cell line: 21>()
     19 pipe.load_lora_weights(".", weight_name="/content/drive/MyDrive/loras/Male body tattoo.safetensors")
     20 pipe.fuse_lora(lora_scale=0.25)
---> 21 pipe.load_lora_weights(".", weight_name="/content/drive/MyDrive/loras/BetterCocks2.safetensors")
     22 pipe.fuse_lora(lora_scale=0.25)
     23 pipe.scheduler = DPMSolverMultistepScheduler.from_config(

2 frames
[/usr/local/lib/python3.10/dist-packages/diffusers/loaders.py](https://localhost:8080/#) in _convert_kohya_lora_to_diffusers(cls, state_dict)
   2212 
   2213         if len(state_dict) > 0:
-> 2214             raise ValueError(
   2215                 f"The following keys have not been correctly be renamed: \n\n {', '.join(state_dict.keys())}"
   2216             )

ValueError: The following keys have not been correctly be renamed: 

 lora_te_text_model_encoder_layers_0_mlp_fc1.alpha, lora_te_text_model_encoder_layers_0_mlp_fc1.hada_w1_a, lora_te_text_model_encoder_layers_0_mlp_fc1.hada_w1_b, lora_te_text_model_encoder_layers_0_mlp_fc1.hada_w2_a, lora_te_text_model_encoder_layers_0_mlp_fc1.hada_w2_b, lora_te_text_model_encoder_layers_0_mlp_fc2.alpha, lora_te_text_model_encoder_layers_0_mlp_fc2.hada_w1_a, lora_te_text_model_encoder_layers_0_mlp_fc2.hada_w1_b, lora_te_text_model_encoder_layers_0_mlp_fc2.hada_w2_a, lora_te_text_model_encoder_layers_0_mlp_fc2.hada_w2_b, lora_te_text_model_encoder_layers_0_self_attn_k_proj.alpha, lora_te_text_model_encoder_layers_0_self_attn_k_proj.hada_w1_a, lora_te_text_model_encoder_layers_0_self_attn_k_proj.hada_w1_b, lora_te_text_model_encoder_layers_0_self_attn_k_proj.hada_w2_a, lora_te_text_model_encoder_layers_0_self_attn_k_proj.hada_w2_b, lora_te_text_model_encoder_layers_0_self_attn_out_proj.alpha, lora_te_text_model_encoder_layers_0_self_attn_out_proj.hada_w1_a, lora_te_text_model_encoder_layers_0_self_attn_out_proj.hada_w1_b, lora_te_text_model_encoder_layers_0_self_attn_out_proj.hada_w2_a, lora_te_text_model_encoder_layers_0_self_attn_out_proj.hada_w2_b, lora_te_text_model_encoder_layers_0_self_attn_q_proj.alpha, lora_te_text_model_encoder_layers_0_self_attn_q_proj.hada_w1_a, lora_te_text_model_encoder_layers_0_self_attn_q_proj.hada_w1_b, lora_te_text_model_encoder_layers_0_self_attn_q_proj.hada_w2_a, lora_te_text_model_encoder_layers_0_self_attn_q_proj.hada_w2...

I have used some Lycoris downloaded at CivitAI with no problems but this one just doesn't work.
For the Lycoris, I downloaded it here (WARNING, EXPLICIT IMAGES ON LINK) Safetensor Lycoris. As I mentioned, the lycoris for version 1 and 2 on that link works. But for version 2, for some reason, I am getting that error.