From 836b2164d8ccd8f3dbd22fa8dd8199470946d257 Mon Sep 17 00:00:00 2001 From: lllyasviel Date: Thu, 25 Jan 2024 09:36:41 -0800 Subject: [PATCH] i --- modules_forge/forge_clip.py | 8 ++++++-- modules_forge/forge_loader.py | 1 + 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/modules_forge/forge_clip.py b/modules_forge/forge_clip.py index 04d0a9c2..9084c16e 100644 --- a/modules_forge/forge_clip.py +++ b/modules_forge/forge_clip.py @@ -1,3 +1,5 @@ +import torch + from modules.sd_hijack_clip import FrozenCLIPEmbedderWithCustomWords from ldm_patched.modules import model_management @@ -52,6 +54,8 @@ class CLIP_SD_XL_G(FrozenCLIPEmbedderWithCustomWords): else: z = outputs.hidden_states[self.wrapped.layer_idx] - z.pooled = outputs.pooler_output - + pooled_output = outputs.pooler_output + text_projection = self.wrapped.text_projection + pooled_output = pooled_output.float().to(text_projection.device) @ text_projection.float() + z.pooled = pooled_output return z diff --git a/modules_forge/forge_loader.py b/modules_forge/forge_loader.py index da670dc7..b24cbcf3 100644 --- a/modules_forge/forge_loader.py +++ b/modules_forge/forge_loader.py @@ -174,6 +174,7 @@ def load_model_for_a1111(timer, checkpoint_info=None, state_dict=None): elif typename == 'FrozenOpenCLIPEmbedder2': # SDXL Clip G embedder.tokenizer = forge_object.clip.tokenizer.clip_g.tokenizer embedder.transformer = forge_object.clip.cond_stage_model.clip_g.transformer + embedder.text_projection = forge_object.clip.cond_stage_model.clip_g.text_projection model_embeddings = embedder.transformer.text_model.embeddings model_embeddings.token_embedding = sd_hijack.EmbeddingsWithFixes( model_embeddings.token_embedding, sd_hijack.model_hijack, textual_inversion_key='clip_g')