diff options
author | Φφ <42910943+Brawlence@users.noreply.github.com> | 2023-03-09 07:56:19 +0300 |
---|---|---|
committer | Φφ <42910943+Brawlence@users.noreply.github.com> | 2023-03-21 09:28:50 +0300 |
commit | 4cbbb881ee530d9b9ba18027e2b0057e6a2c4ee1 (patch) | |
tree | 943c119f18a0aa7a748f95c989f73e3a9a69a1c3 /modules/ui.py | |
parent | a9fed7c364061ae6efb37f797b6b522cb3cf7aa2 (diff) |
Unload checkpoints on Request
…to free VRAM.
New Action buttons in the settings to manually free and reload checkpoints, essentially
juggling models between RAM and VRAM.
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 7e603332..d93ef134 100644 --- a/modules/ui.py +++ b/modules/ui.py @@ -1491,11 +1491,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,
|