mirror of
https://github.com/vladmandic/automatic
synced 2026-09-18 16:54:33 +02:00
Cascade fix default scheduler
This commit is contained in:
@@ -6,7 +6,7 @@ from modules import shared, devices, sd_models
|
||||
|
||||
|
||||
def get_timestep_ratio_conditioning(t, alphas_cumprod):
|
||||
s = torch.tensor([0.008]) # diffusers uses 0.003 while the original is 0.008
|
||||
s = torch.tensor([0.008])
|
||||
clamp_range = [0, 1]
|
||||
min_var = torch.cos(s / (1 + s) * torch.pi * 0.5) ** 2
|
||||
var = alphas_cumprod[t]
|
||||
@@ -133,8 +133,6 @@ def load_cascade_combined(checkpoint_info, diffusers_load_config):
|
||||
sd_model = StableCascadeCombinedPipeline.from_pretrained(checkpoint_info.path, cache_dir=shared.opts.diffusers_dir, **diffusers_load_config)
|
||||
|
||||
sd_model.prior_pipe.scheduler.config.clip_sample = False
|
||||
sd_model.default_scheduler = copy.deepcopy(sd_model.prior_pipe.scheduler)
|
||||
sd_model.prior_pipe.get_timestep_ratio_conditioning = get_timestep_ratio_conditioning
|
||||
sd_model.decoder_pipe.text_encoder = sd_model.text_encoder = None # Nothing uses the decoder's text encoder
|
||||
sd_model.prior_pipe.image_encoder = sd_model.prior_image_encoder = None # No img2img is implemented yet
|
||||
sd_model.prior_pipe.feature_extractor = sd_model.prior_feature_extractor = None # No img2img is implemented yet
|
||||
|
||||
@@ -1298,7 +1298,10 @@ def load_diffuser(checkpoint_info=None, already_loaded_state_dict=None, timer=No
|
||||
sd_model.sd_model_hash = checkpoint_info.calculate_shorthash() # pylint: disable=attribute-defined-outside-init
|
||||
sd_model.sd_checkpoint_info = checkpoint_info # pylint: disable=attribute-defined-outside-init
|
||||
sd_model.sd_model_checkpoint = checkpoint_info.filename # pylint: disable=attribute-defined-outside-init
|
||||
sd_model.default_scheduler = copy.deepcopy(sd_model.scheduler) if hasattr(sd_model, "scheduler") else None
|
||||
if hasattr(sd_model, "prior_pipe"):
|
||||
sd_model.default_scheduler = copy.deepcopy(sd_model.prior_pipe.scheduler) if hasattr(sd_model.prior_pipe, "scheduler") else None
|
||||
else:
|
||||
sd_model.default_scheduler = copy.deepcopy(sd_model.scheduler) if hasattr(sd_model, "scheduler") else None
|
||||
sd_model.is_sdxl = False # a1111 compatibility item
|
||||
sd_model.is_sd2 = hasattr(sd_model, 'cond_stage_model') and hasattr(sd_model.cond_stage_model, 'model') # a1111 compatibility item
|
||||
sd_model.is_sd1 = not sd_model.is_sd2 # a1111 compatibility item
|
||||
|
||||
Reference in New Issue
Block a user