From 052fdec082dc3189e10c76d582ec4aec692f8f0c Mon Sep 17 00:00:00 2001 From: Jeremiah Blanchard Date: Sun, 11 Jan 2026 00:24:35 -0500 Subject: [PATCH] -Removed deprecated usage in Gradio (remains compatible back to AUTOMATIC1111) -Removed unused includes that break compatibility with other SD WebUI variants -Added check for 'lowvram' module include to allow use in WebUI Force Neo / Classic --- scripts/base_ui.py | 14 +++++++------- scripts/core/utils.py | 2 +- scripts/core/vid2vid.py | 16 +++++++++++----- 3 files changed, 19 insertions(+), 13 deletions(-) diff --git a/scripts/base_ui.py b/scripts/base_ui.py index 89121f5..0f5d7c9 100644 --- a/scripts/base_ui.py +++ b/scripts/base_ui.py @@ -13,7 +13,6 @@ from modules.ui import create_override_settings_dropdown import modules.scripts as scripts from modules.sd_samplers import samplers_for_img2img -from modules.ui import setup_progressbar, create_sampler_and_steps_selection, ordered_ui_categories, create_output_panel from scripts.core import vid2vid, txt2vid, utils import traceback @@ -169,7 +168,7 @@ def on_ui_tabs(): components = {} #dv = SimpleNamespace(**T2VOutputArgs()) - with gr.Row(elem_id='sdcn-core').style(equal_height=False, variant='compact'): + with gr.Row(elem_id='sdcn-core', equal_height=False, variant='compact'): with gr.Column(scale=1, variant='panel'): #with gr.Tabs(): components = inputs_ui() @@ -191,11 +190,11 @@ def on_ui_tabs(): sp_progress = gr.HTML(elem_id="sp_progress", value="") with gr.Row(variant='compact'): - img_preview_curr_frame = gr.Image(label='Current frame', elem_id=f"img_preview_curr_frame", type='pil').style(height=240) - img_preview_curr_occl = gr.Image(label='Current occlusion', elem_id=f"img_preview_curr_occl", type='pil').style(height=240) + img_preview_curr_frame = gr.Image(label='Current frame', elem_id=f"img_preview_curr_frame", type='pil', height=240) + img_preview_curr_occl = gr.Image(label='Current occlusion', elem_id=f"img_preview_curr_occl", type='pil', height=240) with gr.Row(variant='compact'): - img_preview_prev_warp = gr.Image(label='Previous frame warped', elem_id=f"img_preview_curr_frame", type='pil').style(height=240) - img_preview_processed = gr.Image(label='Processed', elem_id=f"img_preview_processed", type='pil').style(height=240) + img_preview_prev_warp = gr.Image(label='Previous frame warped', elem_id=f"img_preview_curr_frame", type='pil', height=240) + img_preview_processed = gr.Image(label='Processed', elem_id=f"img_preview_processed", type='pil', height=240) video_preview = gr.Video(interactive=False) @@ -245,7 +244,8 @@ def on_ui_tabs(): modules.scripts.scripts_current = None # define queue - required for generators - sdcnanim_interface.queue(concurrency_count=1) + sdcnanim_interface.queue() + return [(sdcnanim_interface, "SD-CN-Animation", "sd_cn_animation_interface")] diff --git a/scripts/core/utils.py b/scripts/core/utils.py index 137d13a..10600e2 100644 --- a/scripts/core/utils.py +++ b/scripts/core/utils.py @@ -149,7 +149,7 @@ import modules.images as images import modules.scripts from modules.shared import opts, state from modules import devices, sd_samplers, img2img -from modules import shared, sd_hijack, lowvram +from modules import shared, sd_hijack # TODO: Refactor all the code below diff --git a/scripts/core/vid2vid.py b/scripts/core/vid2vid.py index 93a5365..a548781 100644 --- a/scripts/core/vid2vid.py +++ b/scripts/core/vid2vid.py @@ -9,7 +9,12 @@ import numpy as np from PIL import Image from modules import devices, sd_samplers -from modules import shared, sd_hijack, lowvram +from modules import shared, sd_hijack + +try: + from modules import lowvram +except ImportError: + lowvram = None import modules.shared as shared @@ -60,10 +65,11 @@ def get_cur_stat(): def clear_memory_from_sd(): if shared.sd_model is not None: sd_hijack.model_hijack.undo_hijack(shared.sd_model) - try: - lowvram.send_everything_to_cpu() - except Exception as e: - ... + if lowvram: + try: + lowvram.send_everything_to_cpu() + except Exception as e: + ... del shared.sd_model shared.sd_model = None gc.collect()