Fix unet_info location, can have no device prop

This commit is contained in:
ZachNagengast 2023-07-27 14:47:09 -07:00
parent 6edeb4e072
commit aa1f827271

View File

@ -291,17 +291,17 @@ class SDXLTextToLatentsInvocation(BaseInvocation):
scheduler_name=self.scheduler,
)
unet_info = context.services.model_manager.get_model(**self.unet.unet.dict(), context=context)
num_inference_steps = self.steps
scheduler.set_timesteps(num_inference_steps, device=unet_info.device)
timesteps = scheduler.timesteps
latents = latents * scheduler.init_noise_sigma
unet_info = context.services.model_manager.get_model(**self.unet.unet.dict(), context=context)
do_classifier_free_guidance = True
cross_attention_kwargs = None
with unet_info as unet:
scheduler.set_timesteps(num_inference_steps, device=unet.device)
timesteps = scheduler.timesteps
extra_step_kwargs = dict()
if "eta" in set(inspect.signature(scheduler.step).parameters.keys()):
extra_step_kwargs.update(
@ -543,9 +543,12 @@ class SDXLLatentsToLatentsInvocation(BaseInvocation):
context=context,
)
do_classifier_free_guidance = True
cross_attention_kwargs = None
with unet_info as unet:
# apply denoising_start
num_inference_steps = self.steps
scheduler.set_timesteps(num_inference_steps, device=unet_info.device)
scheduler.set_timesteps(num_inference_steps, device=self.scheduler.device)
t_start = int(round(self.denoising_start * num_inference_steps))
timesteps = scheduler.timesteps[t_start * scheduler.order :]
@ -557,9 +560,6 @@ class SDXLLatentsToLatentsInvocation(BaseInvocation):
latents = scheduler.add_noise(latents, noise, timesteps[:1])
del noise
do_classifier_free_guidance = True
cross_attention_kwargs = None
with unet_info as unet:
# apply scheduler extra args
extra_step_kwargs = dict()
if "eta" in set(inspect.signature(scheduler.step).parameters.keys()):