Spaces:
Running
on
Zero
Running
on
Zero
Update qwenimage/pipeline_qwen_image_edit.py
Browse files
qwenimage/pipeline_qwen_image_edit.py
CHANGED
|
@@ -744,11 +744,19 @@ class QwenImageEditPipeline(DiffusionPipeline, QwenImageLoraLoaderMixin):
|
|
| 744 |
self._attention_kwargs = {}
|
| 745 |
|
| 746 |
txt_seq_lens = prompt_embeds_mask.sum(dim=1).tolist() if prompt_embeds_mask is not None else None
|
| 747 |
-
negative_txt_seq_lens = (
|
| 748 |
-
negative_prompt_embeds_mask.sum(dim=1).tolist() if negative_prompt_embeds_mask is not None else None
|
| 749 |
-
)
|
| 750 |
|
| 751 |
image_rotary_emb = self.transformer.pos_embed(img_shapes, txt_seq_lens, device=latents.device)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 752 |
|
| 753 |
# 6. Denoising loop
|
| 754 |
self.scheduler.set_begin_index(0)
|
|
@@ -786,7 +794,7 @@ class QwenImageEditPipeline(DiffusionPipeline, QwenImageLoraLoaderMixin):
|
|
| 786 |
guidance=guidance,
|
| 787 |
encoder_hidden_states_mask=negative_prompt_embeds_mask,
|
| 788 |
encoder_hidden_states=negative_prompt_embeds,
|
| 789 |
-
image_rotary_emb=
|
| 790 |
attention_kwargs=self.attention_kwargs,
|
| 791 |
return_dict=False,
|
| 792 |
)[0]
|
|
@@ -846,4 +854,4 @@ class QwenImageEditPipeline(DiffusionPipeline, QwenImageLoraLoaderMixin):
|
|
| 846 |
if not return_dict:
|
| 847 |
return (image,)
|
| 848 |
|
| 849 |
-
return QwenImagePipelineOutput(images=image)
|
|
|
|
| 744 |
self._attention_kwargs = {}
|
| 745 |
|
| 746 |
txt_seq_lens = prompt_embeds_mask.sum(dim=1).tolist() if prompt_embeds_mask is not None else None
|
|
|
|
|
|
|
|
|
|
| 747 |
|
| 748 |
image_rotary_emb = self.transformer.pos_embed(img_shapes, txt_seq_lens, device=latents.device)
|
| 749 |
+
if do_true_cfg:
|
| 750 |
+
negative_txt_seq_lens = (
|
| 751 |
+
negative_prompt_embeds_mask.sum(dim=1).tolist()
|
| 752 |
+
if negative_prompt_embeds_mask is not None
|
| 753 |
+
else None
|
| 754 |
+
)
|
| 755 |
+
uncond_image_rotary_emb = self.transformer.pos_embed(
|
| 756 |
+
img_shapes, negative_txt_seq_lens, device=latents.device
|
| 757 |
+
)
|
| 758 |
+
else:
|
| 759 |
+
uncond_image_rotary_emb = None
|
| 760 |
|
| 761 |
# 6. Denoising loop
|
| 762 |
self.scheduler.set_begin_index(0)
|
|
|
|
| 794 |
guidance=guidance,
|
| 795 |
encoder_hidden_states_mask=negative_prompt_embeds_mask,
|
| 796 |
encoder_hidden_states=negative_prompt_embeds,
|
| 797 |
+
image_rotary_emb=uncond_image_rotary_emb,
|
| 798 |
attention_kwargs=self.attention_kwargs,
|
| 799 |
return_dict=False,
|
| 800 |
)[0]
|
|
|
|
| 854 |
if not return_dict:
|
| 855 |
return (image,)
|
| 856 |
|
| 857 |
+
return QwenImagePipelineOutput(images=image)
|