Skip to content

Commit 17612de

Browse files
authored
fix: typo in callback function name and property (#6834)
* fix: callback function name is incorrect On this tutorial there is a function defined and then used inside `callback_on_step_end` argument, but the name was not correct (mismatch) * fix: typo in num_timestep (correct is num_timesteps) fixed property name
1 parent 994360f commit 17612de

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

docs/source/en/using-diffusers/callback.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,16 +18,16 @@ This guide will show you how to use the `callback_on_step_end` parameter to disa
1818

1919
The callback function should have the following arguments:
2020

21-
* `pipe` (or the pipeline instance) provides access to useful properties such as `num_timestep` and `guidance_scale`. You can modify these properties by updating the underlying attributes. For this example, you'll disable CFG by setting `pipe._guidance_scale=0.0`.
22-
* `step_index` and `timestep` tell you where you are in the denoising loop. Use `step_index` to turn off CFG after reaching 40% of `num_timestep`.
21+
* `pipe` (or the pipeline instance) provides access to useful properties such as `num_timesteps` and `guidance_scale`. You can modify these properties by updating the underlying attributes. For this example, you'll disable CFG by setting `pipe._guidance_scale=0.0`.
22+
* `step_index` and `timestep` tell you where you are in the denoising loop. Use `step_index` to turn off CFG after reaching 40% of `num_timesteps`.
2323
* `callback_kwargs` is a dict that contains tensor variables you can modify during the denoising loop. It only includes variables specified in the `callback_on_step_end_tensor_inputs` argument, which is passed to the pipeline's `__call__` method. Different pipelines may use different sets of variables, so please check a pipeline's `_callback_tensor_inputs` attribute for the list of variables you can modify. Some common variables include `latents` and `prompt_embeds`. For this function, change the batch size of `prompt_embeds` after setting `guidance_scale=0.0` in order for it to work properly.
2424

2525
Your callback function should look something like this:
2626

2727
```python
2828
def callback_dynamic_cfg(pipe, step_index, timestep, callback_kwargs):
2929
# adjust the batch_size of prompt_embeds according to guidance_scale
30-
if step_index == int(pipe.num_timestep * 0.4):
30+
if step_index == int(pipe.num_timesteps * 0.4):
3131
prompt_embeds = callback_kwargs["prompt_embeds"]
3232
prompt_embeds = prompt_embeds.chunk(2)[-1]
3333

@@ -49,7 +49,7 @@ pipe = pipe.to("cuda")
4949
prompt = "a photo of an astronaut riding a horse on mars"
5050

5151
generator = torch.Generator(device="cuda").manual_seed(1)
52-
out = pipe(prompt, generator=generator, callback_on_step_end=callback_custom_cfg, callback_on_step_end_tensor_inputs=['prompt_embeds'])
52+
out = pipe(prompt, generator=generator, callback_on_step_end=callback_dynamic_cfg, callback_on_step_end_tensor_inputs=['prompt_embeds'])
5353

5454
out.images[0].save("out_custom_cfg.png")
5555
```

0 commit comments

Comments
 (0)