aboutsummaryrefslogtreecommitdiff
path: root/webui.py
diff options
context:
space:
mode:
authorAUTOMATIC <16777216c@gmail.com>2023-05-18 22:48:28 +0300
committerAUTOMATIC <16777216c@gmail.com>2023-05-18 22:48:28 +0300
commit2582a0fd3b3e91c5fba9e5e561cbdf5fee835063 (patch)
tree656cfdfe0b8eb4ed40ce03581d4abc2d4af0e6dd /webui.py
parent2e006fa50046440c81e663d0e833a85b35258d41 (diff)
make it possible for scripts to add cross attention optimizations
add UI selection for cross attention optimization
Diffstat (limited to 'webui.py')
-rw-r--r--webui.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/webui.py b/webui.py
index b4a21e73..afe3c5fa 100644
--- a/webui.py
+++ b/webui.py
@@ -52,6 +52,7 @@ import modules.img2img
import modules.lowvram
import modules.scripts
import modules.sd_hijack
+import modules.sd_hijack_optimizations
import modules.sd_models
import modules.sd_vae
import modules.txt2img
@@ -200,6 +201,10 @@ def initialize():
modules.textual_inversion.textual_inversion.list_textual_inversion_templates()
startup_timer.record("refresh textual inversion templates")
+ modules.script_callbacks.on_list_optimizers(modules.sd_hijack_optimizations.list_optimizers)
+ modules.sd_hijack.list_optimizers()
+ startup_timer.record("scripts list_optimizers")
+
# load model in parallel to other startup stuff
Thread(target=lambda: shared.sd_model).start()
@@ -208,6 +213,7 @@ def initialize():
shared.opts.onchange("sd_vae_as_default", wrap_queued_call(lambda: modules.sd_vae.reload_vae_weights()), call=False)
shared.opts.onchange("temp_dir", ui_tempdir.on_tmpdir_changed)
shared.opts.onchange("gradio_theme", shared.reload_gradio_theme)
+ shared.opts.onchange("cross_attention_optimization", wrap_queued_call(lambda: modules.sd_hijack.model_hijack.redo_hijack(shared.sd_model)), call=False)
startup_timer.record("opts onchange")
shared.reload_hypernetworks()
@@ -428,6 +434,10 @@ def webui():
extra_networks.register_extra_network(extra_networks_hypernet.ExtraNetworkHypernet())
startup_timer.record("initialize extra networks")
+ modules.script_callbacks.on_list_optimizers(modules.sd_hijack_optimizations.list_optimizers)
+ modules.sd_hijack.list_optimizers()
+ startup_timer.record("scripts list_optimizers")
+
if __name__ == "__main__":
if cmd_opts.nowebui: