From 4ecdf7bdcfad90fe8d95a5e6863964b9321667b0 Mon Sep 17 00:00:00 2001 From: Vladimir Mandic Date: Tue, 21 Oct 2025 10:42:21 -0400 Subject: [PATCH] fix wan22 stage selection Signed-off-by: Vladimir Mandic --- CHANGELOG.md | 4 +++- extensions-builtin/sdnext-modernui | 2 +- modules/video_models/video_overrides.py | 4 ++-- modules/video_models/video_run.py | 2 +- pipelines/model_wanai.py | 2 +- 5 files changed, 8 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d61b70fb8..838d66eab 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,6 @@ # Change Log for SD.Next -## Update for 2025-10-19 +## Update for 2025-10-21 - **Features** - **offline mode**: enable in *settings -> hugginface* @@ -16,6 +16,8 @@ - **Fixes** - startup error with `--profile` enabled if using `--skip` - restore orig init image for each batch sequence + - fix modernui hints layout + - fix `wan-2.2-a14b` stage selection ## Update for 2025-10-18 diff --git a/extensions-builtin/sdnext-modernui b/extensions-builtin/sdnext-modernui index 8f6427aa0..80d1030c6 160000 --- a/extensions-builtin/sdnext-modernui +++ b/extensions-builtin/sdnext-modernui @@ -1 +1 @@ -Subproject commit 8f6427aa037b654ae664a0197c794e48fdbbc648 +Subproject commit 80d1030c6bf161c301bed7ec14ba43eabe8c69bb diff --git a/modules/video_models/video_overrides.py b/modules/video_models/video_overrides.py index 856da62e6..055a92ca8 100644 --- a/modules/video_models/video_overrides.py +++ b/modules/video_models/video_overrides.py @@ -19,14 +19,14 @@ def load_override(selected: Model): # WAN if 'WAN 2.1 14B' in selected.name: kwargs['vae'] = diffusers.AutoencoderKLWan.from_pretrained(selected.repo, subfolder="vae", torch_dtype=torch.float32, cache_dir=shared.opts.hfcache_dir) - if 'A14B' in selected.name or '14B VACE' in selected.name: + if ('A14B' in selected.name) or ('14B VACE' in selected.name): if shared.opts.model_wan_stage == 'combined': kwargs['boundary_ratio'] = shared.opts.model_wan_boundary elif shared.opts.model_wan_stage == 'high noise': kwargs['transformer_2'] = None kwargs['boundary_ratio'] = 0.0 elif shared.opts.model_wan_stage == 'low noise': - kwargs['boundary_ratio'] = 1.0 + kwargs['boundary_ratio'] = 1000.0 kwargs['transformer'] = None debug(f'Video overrides: model="{selected.name}" kwargs={list(kwargs)}') return kwargs diff --git a/modules/video_models/video_run.py b/modules/video_models/video_run.py index 57d3fbc23..2a2f1ab39 100644 --- a/modules/video_models/video_run.py +++ b/modules/video_models/video_run.py @@ -103,7 +103,7 @@ def generate(*args, **kwargs): if hasattr(shared.sd_model.scheduler.config, 'use_dynamic_shifting'): shared.sd_model.scheduler.config.use_dynamic_shifting = dynamic_shift shared.sd_model.scheduler.register_to_config(use_dynamic_shifting = dynamic_shift) - if hasattr(shared.sd_model.scheduler.config, 'flow_shift'): + if hasattr(shared.sd_model.scheduler.config, 'flow_shift') and sampler_shift >= 0: shared.sd_model.scheduler.config.flow_shift = sampler_shift shared.sd_model.scheduler.register_to_config(flow_shift = sampler_shift) shared.sd_model.default_scheduler = copy.deepcopy(shared.sd_model.scheduler) diff --git a/pipelines/model_wanai.py b/pipelines/model_wanai.py index 6a9f844d5..fd6839584 100644 --- a/pipelines/model_wanai.py +++ b/pipelines/model_wanai.py @@ -74,7 +74,7 @@ def load_wan(checkpoint_info, diffusers_load_config={}): elif shared.opts.model_wan_stage == 'low noise' or shared.opts.model_wan_stage == 'second': transformer = None transformer_2 = load_transformer(repo_id, diffusers_load_config, 'transformer_2') - boundary_ratio = 1.0 + boundary_ratio = 1000.0 elif shared.opts.model_wan_stage == 'combined' or shared.opts.model_wan_stage == 'both': transformer = load_transformer(repo_id, diffusers_load_config, 'transformer') transformer_2 = load_transformer(repo_id, diffusers_load_config, 'transformer_2')