uncond
This commit is contained in:
@@ -1014,10 +1014,21 @@ class WanVideoSampler:
|
||||
seq_len=math.ceil((lynx_ref_latent.shape[2] * lynx_ref_latent.shape[3]) / 4 * lynx_ref_latent.shape[1]),
|
||||
lynx_embeds=lynx_embeds
|
||||
)
|
||||
if not math.isclose(cfg[0], 1.0):
|
||||
lynx_ref_buffer_uncond = transformer(
|
||||
[lynx_ref_latent.to(device, dtype) * 0],
|
||||
torch.tensor([0], device=device),
|
||||
lynx_ref_text_embed["prompt_embeds"],
|
||||
seq_len=math.ceil((lynx_ref_latent.shape[2] * lynx_ref_latent.shape[3]) / 4 * lynx_ref_latent.shape[1]),
|
||||
lynx_embeds=lynx_embeds,
|
||||
is_uncond=True
|
||||
)
|
||||
|
||||
log.info(f"Extracted {len(lynx_ref_buffer)} ref buffers")
|
||||
lynx_embeds["ref_feature_extractor"] = False
|
||||
lynx_embeds["ref_latent"] = lynx_embeds["ref_text_embed"] = None
|
||||
lynx_embeds["ref_buffer"] = lynx_ref_buffer
|
||||
lynx_embeds["ref_buffer_uncond"] = lynx_ref_buffer_uncond if not math.isclose(cfg[0], 1.0) else None
|
||||
mm.soft_empty_cache()
|
||||
|
||||
#region model pred
|
||||
|
||||
@@ -2114,13 +2114,15 @@ class WanModel(torch.nn.Module):
|
||||
if (lynx_embeds['start_percent'] <= current_step_percentage <= lynx_embeds['end_percent']) and not lynx_ref_feature_extractor:
|
||||
if not is_uncond:
|
||||
lynx_x_ip = lynx_embeds.get("ip_x", None)
|
||||
lynx_ref_buffer = lynx_embeds.get("ref_buffer", None)
|
||||
else:
|
||||
lynx_x_ip = lynx_embeds.get("ip_x_uncond", None)
|
||||
lynx_ref_buffer = lynx_embeds.get("ref_buffer_uncond", None)
|
||||
lynx_x_ip = lynx_x_ip.to(self.main_device) if lynx_x_ip is not None else None
|
||||
|
||||
lynx_ip_scale = lynx_embeds.get("ip_scale", 1.0)
|
||||
lynx_ref_scale = lynx_embeds.get("ref_scale", 1.0)
|
||||
lynx_ref_buffer = lynx_embeds.get("ref_buffer", None)
|
||||
|
||||
|
||||
#s2v
|
||||
if self.model_type == 's2v' and s2v_audio_input is not None:
|
||||
|
||||
Reference in New Issue
Block a user