diff options
Diffstat (limited to 'modules/sd_hijack.py')
-rw-r--r-- | modules/sd_hijack.py | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/modules/sd_hijack.py b/modules/sd_hijack.py index bc5fbcd3..4fff418d 100644 --- a/modules/sd_hijack.py +++ b/modules/sd_hijack.py @@ -183,6 +183,18 @@ class StableDiffusionModelHijack: except Exception as e:
errors.display(e, "applying cross attention optimization")
undo_optimizations()
+
+ def conv_ssd(self, m):
+ delattr(m.model.diffusion_model.middle_block, '1')
+ delattr(m.model.diffusion_model.middle_block, '2')
+ for i in ['9','8','7','6','5','4']:
+ delattr(m.model.diffusion_model.input_blocks[7][1].transformer_blocks,i)
+ delattr(m.model.diffusion_model.input_blocks[8][1].transformer_blocks,i)
+ delattr(m.model.diffusion_model.output_blocks[0][1].transformer_blocks,i)
+ delattr(m.model.diffusion_model.output_blocks[1][1].transformer_blocks,i)
+ delattr(m.model.diffusion_model.output_blocks[4][1].transformer_blocks,'1')
+ delattr(m.model.diffusion_model.output_blocks[5][1].transformer_blocks,'1')
+ devices.torch_gc()
def hijack(self, m):
conditioner = getattr(m, 'conditioner', None)
|