diff options
author | AUTOMATIC1111 <16777216c@gmail.com> | 2023-03-25 09:03:26 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-03-25 09:03:26 +0000 |
commit | 956ed9a737e9f548336fb274901e5f43683736f8 (patch) | |
tree | ec48b6da539a97d2974db0774999c2c89d6a94f7 /modules/ui.py | |
parent | 8d2c582e3ea99e107df57a4e142acc28a6318d55 (diff) | |
parent | 4cbbb881ee530d9b9ba18027e2b0057e6a2c4ee1 (diff) | |
download | stable-diffusion-webui-gfx803-956ed9a737e9f548336fb274901e5f43683736f8.tar.gz stable-diffusion-webui-gfx803-956ed9a737e9f548336fb274901e5f43683736f8.tar.bz2 stable-diffusion-webui-gfx803-956ed9a737e9f548336fb274901e5f43683736f8.zip |
Merge pull request #8780 from Brawlence/master
Unload and re-load checkpoint to VRAM on request (API & Manual)
Diffstat (limited to 'modules/ui.py')
-rw-r--r-- | modules/ui.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/modules/ui.py b/modules/ui.py index 9b9bfa8b..af8546c2 100644 --- a/modules/ui.py +++ b/modules/ui.py @@ -1494,11 +1494,33 @@ def create_ui(): request_notifications = gr.Button(value='Request browser notifications', elem_id="request_notifications")
download_localization = gr.Button(value='Download localization template', elem_id="download_localization")
reload_script_bodies = gr.Button(value='Reload custom script bodies (No ui updates, No restart)', variant='secondary', elem_id="settings_reload_script_bodies")
+ with gr.Row():
+ unload_sd_model = gr.Button(value='Unload SD checkpoint to free VRAM', elem_id="sett_unload_sd_model")
+ reload_sd_model = gr.Button(value='Reload the last SD checkpoint back into VRAM', elem_id="sett_reload_sd_model")
with gr.TabItem("Licenses"):
gr.HTML(shared.html("licenses.html"), elem_id="licenses")
gr.Button(value="Show all pages", elem_id="settings_show_all_pages")
+
+
+ def unload_sd_weights():
+ modules.sd_models.unload_model_weights()
+
+ def reload_sd_weights():
+ modules.sd_models.reload_model_weights()
+
+ unload_sd_model.click(
+ fn=unload_sd_weights,
+ inputs=[],
+ outputs=[]
+ )
+
+ reload_sd_model.click(
+ fn=reload_sd_weights,
+ inputs=[],
+ outputs=[]
+ )
request_notifications.click(
fn=lambda: None,
|