autodetect v-pred

Signed-off-by: Vladimir Mandic <mandic00@live.com>
This commit is contained in:
Vladimir Mandic
2025-07-28 19:41:39 -04:00
parent 94e8da85de
commit 74bb2b9ea6
6 changed files with 38 additions and 13 deletions
+1
View File
@@ -97,6 +97,7 @@ def load_unet(pipe: diffusers.StableDiffusionXLPipeline, override:str=None):
except Exception as e:
yield msg(f'unet: {e}')
def load_scheduler(pipe: diffusers.StableDiffusionXLPipeline, override:str=None):
if recipe.scheduler is None and override is None:
return
+9 -2
View File
@@ -506,8 +506,15 @@ def load_diffuser_file(model_type, pipeline, checkpoint_info, diffusers_load_con
def set_overrides(sd_model, checkpoint_info):
if 'bigaspv25' in checkpoint_info.name.lower():
sd_model.scheduler = diffusers.UniPCMultistepScheduler(prediction_type="flow_prediction", use_flow_sigmas=True)
shared.log.info(f'Setting override: model="{checkpoint_info.name}" component=scheduler cls={sd_model.scheduler.__class__.__name__}')
scheduler_config = sd_model.scheduler.config
scheduler_config['prediction_type'] = 'flow_prediction'
sd_model.scheduler = diffusers.UniPCMultistepScheduler.from_config(scheduler_config)
shared.log.info(f'Setting override: model="{checkpoint_info.name}" component=scheduler prediction="flow-prediction"')
if 'vpred' in checkpoint_info.name.lower() or 'v-pred' in checkpoint_info.name.lower():
scheduler_config = sd_model.scheduler.config
scheduler_config['prediction_type'] = 'v_prediction'
sd_model.scheduler = diffusers.EulerDiscreteScheduler.from_config(scheduler_config)
shared.log.info(f'Setting override: model="{checkpoint_info.name}" component=scheduler prediction="v-prediction"')
def set_defaults(sd_model, checkpoint_info):
+6 -2
View File
@@ -195,8 +195,12 @@ options_templates.update(options_section(('sd', "Models & Loading"), {
}))
options_templates.update(options_section(('model_options', "Models Options"), {
"model_sd3_disable_te5": OptionInfo(False, "StableDiffusion3: T5 disable encoder"),
"model_h1_llama_repo": OptionInfo("Default", "HiDream: LLama repo", gr.Textbox),
"model_sd3_sep": OptionInfo("<h2>Stable Diffusion 3.x</h2>", "", gr.HTML),
"model_sd3_disable_te5": OptionInfo(False, "Disable T5 text encoder"),
"model_h1_sep": OptionInfo("<h2>HiDream</h2>", "", gr.HTML),
"model_h1_llama_repo": OptionInfo("Default", "LLama repo", gr.Textbox),
"model_wan_sep": OptionInfo("<h2>WanAI</h2>", "", gr.HTML),
"model_wan_disable_t2": OptionInfo(True, "Disable second stage"),
}))
options_templates.update(options_section(('vae_encoder', "Variational Auto Encoder"), {