Skip to content

Commit fe38bfb

Browse files
Fix Z-Image guidance scale threshold for CFG
Z-Image uses a different CFG formula than standard diffusers pipelines: - Standard: pred = neg + guidance_scale * (pos - neg), where scale=1 means no CFG - Z-Image: pred = pos + guidance_scale * (pos - neg), where scale=0 means no CFG The do_classifier_free_guidance property was checking > 1, which prevented CFG from being applied when guidance_scale was between 0 and 1. Changed to > 0 to match Z-Image's CFG semantics. Fixes huggingface#12905
1 parent c25f7ec commit fe38bfb

6 files changed

Lines changed: 6 additions & 6 deletions

File tree

src/diffusers/pipelines/z_image/pipeline_z_image.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -276,7 +276,7 @@ def guidance_scale(self):
276276

277277
@property
278278
def do_classifier_free_guidance(self):
279-
return self._guidance_scale > 1
279+
return self._guidance_scale > 0
280280

281281
@property
282282
def joint_attention_kwargs(self):

src/diffusers/pipelines/z_image/pipeline_z_image_controlnet.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -365,7 +365,7 @@ def guidance_scale(self):
365365

366366
@property
367367
def do_classifier_free_guidance(self):
368-
return self._guidance_scale > 1
368+
return self._guidance_scale > 0
369369

370370
@property
371371
def joint_attention_kwargs(self):

src/diffusers/pipelines/z_image/pipeline_z_image_controlnet_inpaint.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -372,7 +372,7 @@ def guidance_scale(self):
372372

373373
@property
374374
def do_classifier_free_guidance(self):
375-
return self._guidance_scale > 1
375+
return self._guidance_scale > 0
376376

377377
@property
378378
def joint_attention_kwargs(self):

src/diffusers/pipelines/z_image/pipeline_z_image_img2img.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -347,7 +347,7 @@ def guidance_scale(self):
347347

348348
@property
349349
def do_classifier_free_guidance(self):
350-
return self._guidance_scale > 1
350+
return self._guidance_scale > 0
351351

352352
@property
353353
def joint_attention_kwargs(self):

src/diffusers/pipelines/z_image/pipeline_z_image_inpaint.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -462,7 +462,7 @@ def guidance_scale(self):
462462

463463
@property
464464
def do_classifier_free_guidance(self):
465-
return self._guidance_scale > 1
465+
return self._guidance_scale > 0
466466

467467
@property
468468
def joint_attention_kwargs(self):

src/diffusers/pipelines/z_image/pipeline_z_image_omni.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -339,7 +339,7 @@ def guidance_scale(self):
339339

340340
@property
341341
def do_classifier_free_guidance(self):
342-
return self._guidance_scale > 1
342+
return self._guidance_scale > 0
343343

344344
@property
345345
def joint_attention_kwargs(self):

0 commit comments

Comments
 (0)