Update forge_loader.py

This commit is contained in:
lllyasviel
2024-01-25 12:17:00 -08:00
parent 09da75583d
commit ac5595f59c

View File

@@ -168,7 +168,7 @@ def load_model_for_a1111(timer, checkpoint_info=None, state_dict=None):
model_embeddings.token_embedding = sd_hijack.EmbeddingsWithFixes(
model_embeddings.token_embedding, sd_hijack.model_hijack)
embedder = forge_clip.CLIP_SD_XL_L(embedder, sd_hijack.model_hijack)
embedder.patcher = forge_objects.clip
embedder.forge_objects = forge_objects
conditioner.embedders[i] = embedder
text_cond_models.append(embedder)
elif typename == 'FrozenOpenCLIPEmbedder2': # SDXL Clip G
@@ -179,7 +179,7 @@ def load_model_for_a1111(timer, checkpoint_info=None, state_dict=None):
model_embeddings.token_embedding = sd_hijack.EmbeddingsWithFixes(
model_embeddings.token_embedding, sd_hijack.model_hijack, textual_inversion_key='clip_g')
embedder = forge_clip.CLIP_SD_XL_G(embedder, sd_hijack.model_hijack)
embedder.patcher = forge_objects.clip
embedder.forge_objects = forge_objects
conditioner.embedders[i] = embedder
text_cond_models.append(embedder)
@@ -194,7 +194,7 @@ def load_model_for_a1111(timer, checkpoint_info=None, state_dict=None):
model_embeddings.token_embedding = sd_hijack.EmbeddingsWithFixes(
model_embeddings.token_embedding, sd_hijack.model_hijack)
sd_model.cond_stage_model = forge_clip.CLIP_SD_15_L(sd_model.cond_stage_model, sd_hijack.model_hijack)
sd_model.cond_stage_model.patcher = forge_objects.clip
sd_model.cond_stage_model.forge_objects = forge_objects
elif type(sd_model.cond_stage_model).__name__ == 'FrozenOpenCLIPEmbedder': # SD21 Clip
sd_model.cond_stage_model.tokenizer = forge_objects.clip.tokenizer.clip_h.tokenizer
sd_model.cond_stage_model.transformer = forge_objects.clip.cond_stage_model.clip_h.transformer
@@ -202,7 +202,7 @@ def load_model_for_a1111(timer, checkpoint_info=None, state_dict=None):
model_embeddings.token_embedding = sd_hijack.EmbeddingsWithFixes(
model_embeddings.token_embedding, sd_hijack.model_hijack)
sd_model.cond_stage_model = forge_clip.CLIP_SD_21_H(sd_model.cond_stage_model, sd_hijack.model_hijack)
sd_model.cond_stage_model.patcher = forge_objects.clip
sd_model.cond_stage_model.forge_objects = forge_objects
else:
raise NotImplementedError('Bad Clip Class Name:' + type(sd_model.cond_stage_model).__name__)
@@ -220,7 +220,6 @@ def load_model_for_a1111(timer, checkpoint_info=None, state_dict=None):
sd_model.sd_model_hash = sd_model_hash
sd_model.sd_model_checkpoint = checkpoint_info.filename
sd_model.sd_checkpoint_info = checkpoint_info
timer.record("forge finalize")
def patched_decode_first_stage(sample):
sample = forge_objects.unet.model.model_config.latent_format.process_out(sample)
@@ -236,15 +235,12 @@ def load_model_for_a1111(timer, checkpoint_info=None, state_dict=None):
sd_model.decode_first_stage = patched_decode_first_stage
sd_model.encode_first_stage = patched_encode_first_stage
sd_model.unet_patcher = forge_objects.unet
sd_model.clip_patcher = forge_objects.clip.patcher
sd_model.vae_patcher = forge_objects.vae.patcher
sd_model.forge_objects.unet_original = forge_objects.unet
sd_model.forge_objects.clip_original = forge_objects.clip
sd_model.forge_objects.vae_original = forge_objects.vae
sd_model.forge_objects.clipvision_original = forge_objects.clipvision
sd_model.clip = sd_model.cond_stage_model
timer.record("get patcher")
timer.record("forge finalize")
sd_model.current_lora_hash = str([])
return sd_model