diff options
author | Greendayle <Greendayle> | 2022-10-07 16:31:49 +0000 |
---|---|---|
committer | Greendayle <Greendayle> | 2022-10-07 16:31:49 +0000 |
commit | 537da7a304adff95fb2ed8337f7a764d08f67c46 (patch) | |
tree | 4a8b2c23d7c870314083d70e2d82edd9acbe677c /modules/sd_hijack.py | |
parent | 4320f386d9641c7c234589c4cb0c0c6cbeb156ad (diff) | |
parent | f7c787eb7c295c27439f4fbdf78c26b8389560be (diff) | |
download | stable-diffusion-webui-gfx803-537da7a304adff95fb2ed8337f7a764d08f67c46.tar.gz stable-diffusion-webui-gfx803-537da7a304adff95fb2ed8337f7a764d08f67c46.tar.bz2 stable-diffusion-webui-gfx803-537da7a304adff95fb2ed8337f7a764d08f67c46.zip |
Merge branch 'master' into dev/deepdanbooru
Diffstat (limited to 'modules/sd_hijack.py')
-rw-r--r-- | modules/sd_hijack.py | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/modules/sd_hijack.py b/modules/sd_hijack.py index 3fa06242..d68f89cc 100644 --- a/modules/sd_hijack.py +++ b/modules/sd_hijack.py @@ -5,9 +5,10 @@ import traceback import torch
import numpy as np
from torch import einsum
+from torch.nn.functional import silu
import modules.textual_inversion.textual_inversion
-from modules import prompt_parser, devices, sd_hijack_optimizations, shared
+from modules import prompt_parser, devices, sd_hijack_optimizations, shared, hypernetwork
from modules.shared import opts, device, cmd_opts
import ldm.modules.attention
@@ -19,16 +20,19 @@ diffusionmodules_model_AttnBlock_forward = ldm.modules.diffusionmodules.model.At def apply_optimizations():
+ undo_optimizations()
+
+ ldm.modules.diffusionmodules.model.nonlinearity = silu
+
if cmd_opts.opt_split_attention_v1:
ldm.modules.attention.CrossAttention.forward = sd_hijack_optimizations.split_cross_attention_forward_v1
elif not cmd_opts.disable_opt_split_attention and (cmd_opts.opt_split_attention or torch.cuda.is_available()):
ldm.modules.attention.CrossAttention.forward = sd_hijack_optimizations.split_cross_attention_forward
- ldm.modules.diffusionmodules.model.nonlinearity = sd_hijack_optimizations.nonlinearity_hijack
ldm.modules.diffusionmodules.model.AttnBlock.forward = sd_hijack_optimizations.cross_attention_attnblock_forward
def undo_optimizations():
- ldm.modules.attention.CrossAttention.forward = attention_CrossAttention_forward
+ ldm.modules.attention.CrossAttention.forward = hypernetwork.attention_CrossAttention_forward
ldm.modules.diffusionmodules.model.nonlinearity = diffusionmodules_model_nonlinearity
ldm.modules.diffusionmodules.model.AttnBlock.forward = diffusionmodules_model_AttnBlock_forward
|