DeepBeepMeep commited on
Commit ·
12652e0
1
Parent(s): 238b44c
Polishing and added new PreLoad Type
Browse files
wgp.py
CHANGED
|
@@ -96,6 +96,7 @@ def process_prompt_and_add_tasks(state, model_choice):
|
|
| 96 |
|
| 97 |
inputs = state.get(get_model_type(model_filename), None)
|
| 98 |
inputs["state"] = state
|
|
|
|
| 99 |
if inputs == None:
|
| 100 |
return
|
| 101 |
prompt = inputs["prompt"]
|
|
@@ -1165,7 +1166,7 @@ def load_models(model_filename):
|
|
| 1165 |
|
| 1166 |
return wan_model, offloadobj, pipe["transformer"]
|
| 1167 |
|
| 1168 |
-
if reload_model ==3:
|
| 1169 |
wan_model, offloadobj, transformer = None, None, None
|
| 1170 |
reload_needed = True
|
| 1171 |
else:
|
|
@@ -1550,7 +1551,7 @@ def generate_video(
|
|
| 1550 |
# gr.Info("Unable to generate a Video while a new configuration is being applied.")
|
| 1551 |
# return
|
| 1552 |
|
| 1553 |
-
if reload_model !=3 :
|
| 1554 |
while wan_model == None:
|
| 1555 |
time.sleep(1)
|
| 1556 |
|
|
@@ -2352,7 +2353,6 @@ def prepare_inputs_dict(target, inputs ):
|
|
| 2352 |
|
| 2353 |
if target == "state":
|
| 2354 |
return inputs
|
| 2355 |
-
|
| 2356 |
unsaved_params = ["image_start", "image_end", "image_refs", "video_guide", "video_mask"]
|
| 2357 |
for k in unsaved_params:
|
| 2358 |
inputs.pop(k)
|
|
@@ -2387,6 +2387,7 @@ def get_function_arguments(func, locals):
|
|
| 2387 |
|
| 2388 |
def save_inputs(
|
| 2389 |
target,
|
|
|
|
| 2390 |
prompt,
|
| 2391 |
negative_prompt,
|
| 2392 |
resolution,
|
|
@@ -2557,7 +2558,7 @@ def preload_model(state):
|
|
| 2557 |
|
| 2558 |
def unload_model_if_needed(state):
|
| 2559 |
global reload_needed, wan_model, offloadobj
|
| 2560 |
-
if reload_model ==
|
| 2561 |
if wan_model != None:
|
| 2562 |
wan_model = None
|
| 2563 |
if offloadobj is not None:
|
|
@@ -2605,6 +2606,8 @@ def generate_video_tab(update_form = False, state_dict = None, ui_defaults = Non
|
|
| 2605 |
launch_loras = default_loras_choices
|
| 2606 |
launch_multis_str = default_loras_multis_str
|
| 2607 |
|
|
|
|
|
|
|
| 2608 |
if len(launch_prompt) == 0:
|
| 2609 |
launch_prompt = ui_defaults.get("prompt","")
|
| 2610 |
if len(launch_loras) == 0:
|
|
@@ -2673,18 +2676,19 @@ def generate_video_tab(update_form = False, state_dict = None, ui_defaults = Non
|
|
| 2673 |
image_end = gr.Image(label= "Last Image for a new video", type ="pil", visible="E" in image_prompt_type_value, value= ui_defaults.get("image_end", None))
|
| 2674 |
|
| 2675 |
with gr.Column(visible= "Vace" in model_filename ) as video_prompt_column:
|
|
|
|
| 2676 |
video_prompt_type_value= ui_defaults.get("video_prompt_type","I")
|
| 2677 |
-
video_prompt_type = gr.Radio( [("
|
| 2678 |
image_refs = gr.Gallery(
|
| 2679 |
-
label="
|
| 2680 |
columns=[3], rows=[1], object_fit="contain", height="auto", selected_index=0, interactive= True, visible= "I" in video_prompt_type_value, value= ui_defaults.get("image_refs", None) )
|
| 2681 |
|
| 2682 |
-
video_guide = gr.Video(label= "Reference Video", visible= "V" in video_prompt_type_value, value= ui_defaults.get("video_guide", None) )
|
| 2683 |
with gr.Row():
|
| 2684 |
max_frames = gr.Slider(0, 100, value=ui_defaults.get("max_frames",0), step=1, label="Nb of frames in Ref. Video (0 = as many as possible)", visible= "V" in video_prompt_type_value, scale = 2 )
|
| 2685 |
remove_background_image_ref = gr.Checkbox(value=ui_defaults.get("remove_background_image_ref",1), label= "Remove Images Ref. Background", visible= "I" in video_prompt_type_value, scale =1 )
|
| 2686 |
|
| 2687 |
-
video_mask = gr.Video(label= "Video Mask (white pixels = Mask)", visible= "M" in video_prompt_type_value, value= ui_defaults.get("video_mask", None) )
|
| 2688 |
|
| 2689 |
|
| 2690 |
advanced_prompt = advanced_ui
|
|
@@ -3147,9 +3151,10 @@ def generate_configuration_tab(header, model_choice):
|
|
| 3147 |
)
|
| 3148 |
reload_choice = gr.Dropdown(
|
| 3149 |
choices=[
|
| 3150 |
-
("Load Model When Changing Model", 1),
|
| 3151 |
-
("Load Model When Pressing Generate", 2),
|
| 3152 |
-
("Load Model When Pressing Generate
|
|
|
|
| 3153 |
],
|
| 3154 |
value=server_config.get("reload_model",2),
|
| 3155 |
label="RAM Loading / Unloading Model Policy (in any case VRAM will be freed once the queue has been processed)"
|
|
|
|
| 96 |
|
| 97 |
inputs = state.get(get_model_type(model_filename), None)
|
| 98 |
inputs["state"] = state
|
| 99 |
+
inputs.pop("lset_name")
|
| 100 |
if inputs == None:
|
| 101 |
return
|
| 102 |
prompt = inputs["prompt"]
|
|
|
|
| 1166 |
|
| 1167 |
return wan_model, offloadobj, pipe["transformer"]
|
| 1168 |
|
| 1169 |
+
if reload_model ==3 or reload_model ==4:
|
| 1170 |
wan_model, offloadobj, transformer = None, None, None
|
| 1171 |
reload_needed = True
|
| 1172 |
else:
|
|
|
|
| 1551 |
# gr.Info("Unable to generate a Video while a new configuration is being applied.")
|
| 1552 |
# return
|
| 1553 |
|
| 1554 |
+
if reload_model !=3 and reload_model !=4 :
|
| 1555 |
while wan_model == None:
|
| 1556 |
time.sleep(1)
|
| 1557 |
|
|
|
|
| 2353 |
|
| 2354 |
if target == "state":
|
| 2355 |
return inputs
|
|
|
|
| 2356 |
unsaved_params = ["image_start", "image_end", "image_refs", "video_guide", "video_mask"]
|
| 2357 |
for k in unsaved_params:
|
| 2358 |
inputs.pop(k)
|
|
|
|
| 2387 |
|
| 2388 |
def save_inputs(
|
| 2389 |
target,
|
| 2390 |
+
lset_name,
|
| 2391 |
prompt,
|
| 2392 |
negative_prompt,
|
| 2393 |
resolution,
|
|
|
|
| 2558 |
|
| 2559 |
def unload_model_if_needed(state):
|
| 2560 |
global reload_needed, wan_model, offloadobj
|
| 2561 |
+
if reload_model == 4:
|
| 2562 |
if wan_model != None:
|
| 2563 |
wan_model = None
|
| 2564 |
if offloadobj is not None:
|
|
|
|
| 2606 |
launch_loras = default_loras_choices
|
| 2607 |
launch_multis_str = default_loras_multis_str
|
| 2608 |
|
| 2609 |
+
if len(launch_preset) == 0:
|
| 2610 |
+
launch_preset = ui_defaults.get("lset_name","")
|
| 2611 |
if len(launch_prompt) == 0:
|
| 2612 |
launch_prompt = ui_defaults.get("prompt","")
|
| 2613 |
if len(launch_loras) == 0:
|
|
|
|
| 2676 |
image_end = gr.Image(label= "Last Image for a new video", type ="pil", visible="E" in image_prompt_type_value, value= ui_defaults.get("image_end", None))
|
| 2677 |
|
| 2678 |
with gr.Column(visible= "Vace" in model_filename ) as video_prompt_column:
|
| 2679 |
+
gr.Markdown("<B>Control conditions: Images References (custom Faces or Objects), Video (Open Pose, Depth maps), Mask (inpainting)")
|
| 2680 |
video_prompt_type_value= ui_defaults.get("video_prompt_type","I")
|
| 2681 |
+
video_prompt_type = gr.Radio( [("Images Ref", "I"),("a Video", "V"), ("Images Refs + a Video", "IV"), ("Video + Video Mask", "VM"), ("Images + Video + Mask", "IVM")], value =video_prompt_type_value, label="Location", show_label= False, scale= 3)
|
| 2682 |
image_refs = gr.Gallery(
|
| 2683 |
+
label="Images Referencse (Custom faces and Objects to be found in the Video)", type ="pil",
|
| 2684 |
columns=[3], rows=[1], object_fit="contain", height="auto", selected_index=0, interactive= True, visible= "I" in video_prompt_type_value, value= ui_defaults.get("image_refs", None) )
|
| 2685 |
|
| 2686 |
+
video_guide = gr.Video(label= "Reference Video (an animated Video in the Open Pose format or Depth Map video)", visible= "V" in video_prompt_type_value, value= ui_defaults.get("video_guide", None) )
|
| 2687 |
with gr.Row():
|
| 2688 |
max_frames = gr.Slider(0, 100, value=ui_defaults.get("max_frames",0), step=1, label="Nb of frames in Ref. Video (0 = as many as possible)", visible= "V" in video_prompt_type_value, scale = 2 )
|
| 2689 |
remove_background_image_ref = gr.Checkbox(value=ui_defaults.get("remove_background_image_ref",1), label= "Remove Images Ref. Background", visible= "I" in video_prompt_type_value, scale =1 )
|
| 2690 |
|
| 2691 |
+
video_mask = gr.Video(label= "Video Mask (for Inpainting or Outpaing, white pixels = Mask)", visible= "M" in video_prompt_type_value, value= ui_defaults.get("video_mask", None) )
|
| 2692 |
|
| 2693 |
|
| 2694 |
advanced_prompt = advanced_ui
|
|
|
|
| 3151 |
)
|
| 3152 |
reload_choice = gr.Dropdown(
|
| 3153 |
choices=[
|
| 3154 |
+
("Load Model When Starting the App and Changing Model if Model Changed", 1),
|
| 3155 |
+
("Load Model When Starting the App and Pressing Generate if Model Changed", 2),
|
| 3156 |
+
("Load Model When Pressing Generate if Model Changed", 3),
|
| 3157 |
+
("Load Model When Pressing Generate and Unload Model when Finished", 4),
|
| 3158 |
],
|
| 3159 |
value=server_config.get("reload_model",2),
|
| 3160 |
label="RAM Loading / Unloading Model Policy (in any case VRAM will be freed once the queue has been processed)"
|