Basic demo to show how to animate from a starting image to another. Chain them for keyframing animation.
Node Explanation:
Latent Keyframe Interpolation:
We have one for the starting image and one for the ending image.
The starting image will start on frame 0 and end roughly after the midway through the frame count. This is the batch_index_from and batch_index_to_excl fields.
The starting image has the strength going from 1.0 to 0.2. This tells the script to start with very strongly to use the starting image and have it not used so much as the frames goes on. This is the strength_from and strength_to
The interpolation describes how fast it should approach the strength_to.
The ending image has these field but in reverse. We want to start with a weak reference to the image, and strength it all the way at the end
Load ControlNet Model (Advanced)
We're using tile model here because we want the images themselves to be used
Feeding the latent keyframe interpolation through the timeframe keyframe node allows us to control how strongly the controlnet should apply as the frames goes on
Apply ControlNet (Advanced)
We leave the strength at one because we are actually controlling it through the Load ControlNet Model. Like-wise we leave the start / end percent to the defaults of 0.0 and 1.0 respectively
Animate Diff Module Loader
Be sure you have the right model here for the right checkpoint. I'm using a SD v1.5 checkpoint model, so I'm using a motion model for SD v1.5. If you are using SDXL, you will have to use another model
Animate Diff Sampler
frame_number - this tells the script how many frames should be generated. For your first test leave this at 16. Going over 16 will set it to continous animation mode. Depending on your machine you might need to make adjustments to the sliding_window_opts. See: ArtVentureX/comfyui-animatediff: AnimateDiff for ComfyUI (github.com)
denoise - leave this at 1.0. We're passing in an empty latent image, even though we are using control net's tile to pass in our reference images.
The rest of it should be however you like to use for your generation
Animate Diff Combine
frame rate - I find 12 to work the best, but change it to however you like depending if you want something smoother or choppier.
formate - video/h264-mp4 is what is accepted for civit.ai uploads
Description
Making it easier to use with a start / end image loader. Making the generated image an optional step
FAQ
Comments (33)
Hello, thanks for sharing your workflow, every nodes are working except the last one, i have this error
VanillaTemporalModule.forward() missing 1 required positional argument: 'encoder_hidden_states'On console i have this : TypeError: VanillaTemporalModule.forward() missing 1 required positional argument: 'encoder_hidden_states'
I’ve encountered that with other custom nodes recently. I had to update comfyui and / or update the nodes. I’m not sure which one specifically did it, but after doing both and restarting the error went away.
First off, thanks for your hard work and contributing to the community.
I have a problem with the color washing and defromed faces. The color is the bigeest problem, usually the distiorted faces can be remedied with a larger output Image size, but need heavy VRAM.
I was hope you could go through the modules and describe extratly the intented outcome, like the ControlNet node...which modules and was is intented. Also the Latent keyframe....
I've updated the descriptions with an explanation of the nodes. Most of the nodes are using the animatediff and they have their own page that goes into more detail about their nodes: https://github.com/ArtVentureX/comfyui-animatediff
There is always a difference between the color of my animation and the color of the input image. How can I maintain consistency?
Thanks
Look into the t2i adapter color for loading in a control net. Combine that with a Color Preprocessor node and you can use the colors from your input image
cool
do you know how to fix this error? ERROR: !!! Exception during processing !!!
ERROR: Traceback (most recent call last):
File "C:\Users\Loren\OneDrive\Desktop\ComfyUI_windows_portable\ComfyUI\execution.py", line 153, in recursive_execute
output_data, output_ui = get_output_data(obj, input_data_all)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Loren\OneDrive\Desktop\ComfyUI_windows_portable\ComfyUI\execution.py", line 83, in get_output_data
return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Loren\OneDrive\Desktop\ComfyUI_windows_portable\ComfyUI\execution.py", line 76, in map_node_over_list
results.append(getattr(obj, func)(**slice_dict(input_data_all, i)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Loren\OneDrive\Desktop\ComfyUI_windows_portable\ComfyUI\custom_nodes\comfyui-animatediff\animatediff\nodes.py", line 221, in generate_gif
raise ProcessLookupError("Could not find ffmpeg")
ProcessLookupError: Could not find ffmpeg
"Could not find ffmpeg". That's the root of your error. You need to have ffmpeg installed somewhere on your machine.
What is this Betas error? Sorry I am new on comfy...I cant find a solution to this. It keeps stalling when it get's to the load controlnet model. Pretty sure I have everything I need for this to work
Error occurred when executing AnimateDiffSampler: BaseModel has no attribute betas File "C:\new_ComfyUI_windows_portable_nvidia_cu121_or_cpu\ComfyUI_windows_portable\ComfyUI\execution.py", line 153, in recursive_execute output_data, output_ui = get_output_data(obj, input_data_all) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\new_ComfyUI_windows_portable_nvidia_cu121_or_cpu\ComfyUI_windows_portable\ComfyUI\execution.py", line 83, in get_output_data return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\new_ComfyUI_windows_portable_nvidia_cu121_or_cpu\ComfyUI_windows_portable\ComfyUI\execution.py", line 76, in map_node_over_list results.append(getattr(obj, func)(**slice_dict(input_data_all, i))) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\new_ComfyUI_windows_portable_nvidia_cu121_or_cpu\ComfyUI_windows_portable\ComfyUI\custom_nodes\comfyui-animatediff\animatediff\sampler.py", line 288, in animatediff_sample model = self.inject_motion_module(model, motion_module, inject_method, video_length) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\new_ComfyUI_windows_portable_nvidia_cu121_or_cpu\ComfyUI_windows_portable\ComfyUI\custom_nodes\comfyui-animatediff\animatediff\sampler.py", line 218, in inject_motion_module self.override_beta_schedule(model.model) File "C:\new_ComfyUI_windows_portable_nvidia_cu121_or_cpu\ComfyUI_windows_portable\ComfyUI\custom_nodes\comfyui-animatediff\animatediff\sampler.py", line 189, in override_beta_schedule self.prev_beta = model.get_buffer("betas").cpu().clone().detach() ^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\new_ComfyUI_windows_portable_nvidia_cu121_or_cpu\ComfyUI_windows_portable\python_embeded\Lib\site-packages\torch\nn\modules\module.py", line 762, in get_buffer raise AttributeError(mod._get_name() + " has no attribute `"
Have you tried updating comfyui?
@BoomerMcBlast I had the same issue and I am on a fairly recent version of comfyui. For quick fix try commenting out the calls to self.override_beta_schedule(model.model) and self.restore_beta_schedule(model.model) in custom_nodes/comfyui-animatediff/animatediff/sampler.py. After commenting out those two lines, this workflow is working for me.
@reddesert961 This worked for me BUT, I think there is some cost to quality. I was using a similar workflow and AnimateDiffSampler started throwing up "betas" errors a few days ago. My results earlier were excellent. I commented out those two lines as you said, and everything does work now, but the output video is noticeably worse. It's much less stable. Appreciate your suggestion, I'm glad I found it. Hopefully AnimateDiff will be updated soon and this betas error will be gone.
As of now it looks like comfyui-animatediff is not up to date with ComfyUI's breaking changes.
For now I solved it by checking out to an earlier ComfyUI commit. Run this from ComfyUI's root directory:
git switch --detach 7e3fe3a
NOTE: this will revert ComfyUI to an earlier version. To bring it back to the latest one, run git switch master
@nicodea_morphicfilms Yup, that did the trick! Thank you!
Hello, What is basic pipe ? My comfy can not fetch. How can I fix missing nodes ?
I run into this error:
Error occurred when executing AnimateDiffSampler: 'ModelSamplingConfig' object has no attribute 'sampling_settings'
Everything is up-to-date
+1
As of now it looks like comfyui-animatediff is not up to date with ComfyUI's breaking changes.
For now I solved it by checking out to an earlier ComfyUI commit. Run this from ComfyUI's root directory:
git switch --detach 7e3fe3a
NOTE: this will revert ComfyUI to an earlier version. To bring it back to the latest one, run git switch master
Do you have a workflow for multiple image instead of just starting and ending? I have searched and tried but failed. Would love some answers if you have
i got this error, can you help plz:
Error occurred when executing ControlNetLoaderAdvanced: 'NoneType' object has no attribute 'lower' File "D:\ComfyUI_windows_portable\ComfyUI\execution.py", line 154, in recursive_execute output_data, output_ui = get_output_data(obj, input_data_all) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\ComfyUI_windows_portable\ComfyUI\execution.py", line 84, in get_output_data return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\ComfyUI_windows_portable\ComfyUI\execution.py", line 77, in map_node_over_list results.append(getattr(obj, func)(**slice_dict(input_data_all, i))) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-Advanced-ControlNet\control\nodes.py", line 88, in load_controlnet controlnet = load_controlnet(controlnet_path, timestep_keyframe) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-Advanced-ControlNet\control\control.py", line 339, in load_controlnet controlnet_data = comfy.utils.load_torch_file(ckpt_path, safe_load=True) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\ComfyUI_windows_portable\ComfyUI\comfy\utils.py", line 12, in load_torch_file if ckpt.lower().endswith(".safetensors"): ^^^^^^^^^^
Got some errors :( is there way to fix it instead of back comfyui to earlier version?
Prompt executed
in 0.03 seconds
got prompt
[rgthree] Using rgthree's optimized recursive execution.
[AnimateDiff] - INFO - Injecting motion module with method default.
!!! Exception during processing !!!
Traceback (most recent call last):
File "S:\AI\ComfyUI_windows_portable\ComfyUI\execution.py", line 151, in recursive_execute
output_data, output_ui = get_output_data(obj, input_data_all)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "S:\AI\ComfyUI_windows_portable\ComfyUI\execution.py", line 81, in get_output_data
return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "S:\AI\ComfyUI_windows_portable\ComfyUI\execution.py", line 74, in map_node_over_list
results.append(getattr(obj, func)(**slice_dict(input_data_all, i)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "S:\AI\ComfyUI_windows_portable\ComfyUI\custom_nodes\comfyui-animatediff\animatediff\sampler.py", line 270, in animatediff_sample
model = self.inject_motion_module(model, motion_module, inject_method, video_length)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "S:\AI\ComfyUI_windows_portable\ComfyUI\custom_nodes\comfyui-animatediff\animatediff\sampler.py", line 199, in inject_motion_module
injectors[inject_method](unet, motion_module)
File "S:\AI\ComfyUI_windows_portable\ComfyUI\custom_nodes\comfyui-animatediff\animatediff\sampler.py", line 89, in inject_motion_module_to_unet
unet.input_blocks[unet_idx].append(motion_module.down_blocks[mm_idx0].motion_modules[mm_idx1])
~~~~~~~~~~~~~~~~~^^^^^^^^^^
File "S:\AI\ComfyUI_windows_portable\python_embeded\Lib\site-packages\torch\nn\modules\container.py", line 295, in getitem
return self._modules[self._get_abs_string_index(idx)]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "S:\AI\ComfyUI_windows_portable\python_embeded\Lib\site-packages\torch\nn\modules\container.py", line 285, in getabs_string_index
raise IndexError(f'index {idx} is out of range')
IndexError: index 10 is out of range
Prompt executed in 0.04 seconds
I run into error:
Error occurred when executing AnimateDiffSampler: mat1 and mat2 shapes cannot be multiplied (154x21504 and 768x320) File "C:\AppZ\ComfyUI\execution.py", line 151, in recursive_execute output_data, output_ui = get_output_data(obj, input_data_all) File "C:\AppZ\ComfyUI\execution.py", line 81, in get_output_data return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True) File "C:\AppZ\ComfyUI\execution.py", line 74, in map_node_over_list results.append(getattr(obj, func)(**slice_dict(input_data_all, i))) File "C:\AppZ\ComfyUI\custom_nodes\comfyui-animatediff\animatediff\sampler.py", line 277, in animatediff_sample return super().sample( File "C:\AppZ\ComfyUI\nodes.py", line 1355, in sample return common_ksampler(model, seed, steps, cfg, sampler_name, scheduler, positive, negative, latent_image, denoise=denoise) File "C:\AppZ\ComfyUI\nodes.py", line 1325, in common_ksampler samples = comfy.sample.sample(model, noise, steps, cfg, sampler_name, scheduler, positive, negative, latent_image, File "C:\AppZ\ComfyUI\custom_nodes\ComfyUI-Impact-Pack\modules\impact\sample_error_enhancer.py", line 22, in informative_sample raise e File "C:\AppZ\ComfyUI\custom_nodes\ComfyUI-Impact-Pack\modules\impact\sample_error_enhancer.py", line 9, in informative_sample return original_sample(*args, **kwargs) # This code helps interpret error messages that occur within exceptions but does not have any impact on other operations. File "C:\AppZ\ComfyUI\custom_nodes\ComfyUI-AnimateDiff-Evolved\animatediff\sampling.py", line 313, in motion_sample return orig_comfy_sample(model, noise, args, *kwargs) File "C:\AppZ\ComfyUI\custom_nodes\ComfyUI-Advanced-ControlNet\adv_control\control_reference.py", line 47, in refcn_sample return orig_comfy_sample(model, args, *kwargs) File "C:\AppZ\ComfyUI\custom_nodes\ComfyUI-Advanced-ControlNet\adv_control\utils.py", line 111, in uncond_multiplier_check_cn_sample return orig_comfy_sample(model, args, *kwargs) File "C:\AppZ\ComfyUI\comfy\sample.py", line 43, in sample samples = sampler.sample(noise, positive, negative, cfg=cfg, latent_image=latent_image, start_step=start_step, last_step=last_step, force_full_denoise=force_full_denoise, denoise_mask=noise_mask, sigmas=sigmas, callback=callback, disable_pbar=disable_pbar, seed=seed) File "C:\AppZ\ComfyUI\comfy\samplers.py", line 794, in sample return sample(self.model, noise, positive, negative, cfg, self.device, sampler, sigmas, self.model_options, latent_image=latent_image, denoise_mask=denoise_mask, callback=callback, disable_pbar=disable_pbar, seed=seed) File "C:\AppZ\ComfyUI\comfy\samplers.py", line 696, in sample return cfg_guider.sample(noise, latent_image, sampler, sigmas, denoise_mask, callback, disable_pbar, seed) File "C:\AppZ\ComfyUI\comfy\samplers.py", line 683, in sample output = self.inner_sample(noise, latent_image, device, sampler, sigmas, denoise_mask, callback, disable_pbar, seed) File "C:\AppZ\ComfyUI\comfy\samplers.py", line 662, in inner_sample samples = sampler.sample(self, sigmas, extra_args, callback, noise, latent_image, denoise_mask, disable_pbar) File "C:\AppZ\ComfyUI\comfy\samplers.py", line 567, in sample samples = self.sampler_function(model_k, noise, sigmas, extra_args=extra_args, callback=k_callback, disable=disable_pbar, **self.extra_options) File "C:\Users\Diman\AppData\Local\Programs\Python\Python310\lib\site-packages\torch\utils\_contextlib.py", line 115, in decorate_context return func(*args, **kwargs) File "C:\AppZ\ComfyUI\comfy\k_diffusion\sampling.py", line 137, in sample_euler denoised = model(x, sigma_hat s_in, *extra_args) File "C:\AppZ\ComfyUI\comfy\samplers.py", line 291, in call out = self.inner_model(x, sigma, model_options=model_options, seed=seed) File "C:\AppZ\ComfyUI\comfy\samplers.py", line 649, in call return self.predict_noise(*args, kwargs) File "C:\AppZ\ComfyUI\comfy\samplers.py", line 652, in predict_noise return sampling_function(self.inner_model, x, timestep, self.conds.get("negative", None), self.conds.get("positive", None), self.cfg, model_options=model_options, seed=seed) File "C:\AppZ\ComfyUI\comfy\samplers.py", line 277, in sampling_function out = calc_cond_batch(model, conds, x, timestep, model_options) File "C:\AppZ\ComfyUI\comfy\samplers.py", line 226, in calc_cond_batch output = model.apply_model(input_x, timestep_, c).chunk(batch_chunks) File "C:\AppZ\ComfyUI\custom_nodes\ComfyUI-Advanced-ControlNet\adv_control\utils.py", line 63, in apply_model_uncond_cleanup_wrapper return orig_apply_model(self, args, *kwargs) File "C:\AppZ\ComfyUI\comfy\model_base.py", line 126, in apply_model model_output = self.diffusion_model(xc, t, context=context, control=control, transformer_options=transformer_options, **extra_conds).float() File "C:\Users\Diman\AppData\Local\Programs\Python\Python310\lib\site-packages\torch\nn\modules\module.py", line 1545, in wrappedcall_impl return self._call_impl(*args, **kwargs) File "C:\Users\Diman\AppData\Local\Programs\Python\Python310\lib\site-packages\torch\nn\modules\module.py", line 1554, in callimpl return forward_call(*args, kwargs) File "C:\AppZ\ComfyUI\custom_nodes\SeargeSDXL\modules\custom_sdxl_ksampler.py", line 71, in new_unet_forward x0 = old_unet_forward(self, x, timesteps, context, y, control, transformer_options, kwargs) File "C:\AppZ\ComfyUI\comfy\ldm\modules\diffusionmodules\openaimodel.py", line 852, in forward h = forward_timestep_embed(module, h, emb, context, transformer_options, time_context=time_context, num_video_frames=num_video_frames, image_only_indicator=image_only_indicator) File "C:\AppZ\ComfyUI\custom_nodes\comfyui-animatediff\animatediff\sampler.py", line 30, in forward_timestep_embed x = orig_forward_timestep_embed([layer], x, emb, context, args, *kwargs) File "C:\AppZ\ComfyUI\comfy\ldm\modules\diffusionmodules\openaimodel.py", line 44, in forward_timestep_embed x = layer(x, context, transformer_options) File "C:\Users\Diman\AppData\Local\Programs\Python\Python310\lib\site-packages\torch\nn\modules\module.py", line 1545, in wrappedcall_impl return self._call_impl(*args, **kwargs) File "C:\Users\Diman\AppData\Local\Programs\Python\Python310\lib\site-packages\torch\nn\modules\module.py", line 1554, in callimpl return forward_call(*args, **kwargs) File "C:\AppZ\ComfyUI\comfy\ldm\modules\attention.py", line 644, in forward x = block(x, context=context[i], transformer_options=transformer_options) File "C:\Users\Diman\AppData\Local\Programs\Python\Python310\lib\site-packages\torch\nn\modules\module.py", line 1545, in wrappedcall_impl return self._call_impl(*args, **kwargs) File "C:\Users\Diman\AppData\Local\Programs\Python\Python310\lib\site-packages\torch\nn\modules\module.py", line 1554, in callimpl return forward_call(*args, **kwargs) File "C:\AppZ\ComfyUI\comfy\ldm\modules\attention.py", line 571, in forward n = self.attn2(n, context=context_attn2, value=value_attn2) File "C:\Users\Diman\AppData\Local\Programs\Python\Python310\lib\site-packages\torch\nn\modules\module.py", line 1545, in wrappedcall_impl return self._call_impl(*args, **kwargs) File "C:\Users\Diman\AppData\Local\Programs\Python\Python310\lib\site-packages\torch\nn\modules\module.py", line 1554, in callimpl return forward_call(*args, **kwargs) File "C:\AppZ\ComfyUI\comfy\ldm\modules\attention.py", line 417, in forward k = self.to_k(context) File "C:\Users\Diman\AppData\Local\Programs\Python\Python310\lib\site-packages\torch\nn\modules\module.py", line 1545, in wrappedcall_impl return self._call_impl(*args, **kwargs) File "C:\Users\Diman\AppData\Local\Programs\Python\Python310\lib\site-packages\torch\nn\modules\module.py", line 1554, in callimpl return forward_call(*args, **kwargs) File "C:\AppZ\ComfyUI\comfy\ops.py", line 52, in forward return super().forward(*args, **kwargs) File "C:\Users\Diman\AppData\Local\Programs\Python\Python310\lib\site-packages\torch\nn\modules\linear.py", line 116, in forward return F.linear(input, self.weight, self.bias)
I got error at Diff Sampler. I use gpu.
RuntimeError: Expected all tensors to be on the same device, but found at least two devices, cuda:0 and cpu! (when checking argument for argument weight in method wrapper_CUDA__native_group_norm)
finally can try another img2vid with comfyui.
still thinking how to create seamless animation from stable diffusion.
an error occurs when starting generation:
AnimateDiffSampler
index 10 is out of range
IndexError: index 10 is out of range
How to fix it, what is the error?
Had same issue, Had to use check point that is 1.5 model compatible and use the correct control net and then change the video combine VHS instead of animate diff combine. Then it worked.
I dont have any errors but the output is black. Any idea what can cause this?
Hey, can you do something on PixAI, I would love to see Human to Furry Workflow on PixAI, I'm not very good when it comes to making workflows.
Please help to solve with thank.
# ComfyUI Error Report
## Error Details
- Node ID: 15
- Node Type: AnimateDiffSampler
- Exception Type: AttributeError
- Exception Message: 'Flux' object has no attribute 'input_blocks'
## Stack Trace
```
File "C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\execution.py", line 347, in execute
output_data, output_ui, has_subgraph = get_output_data(obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\execution.py", line 222, in get_output_data
return_values = mapnode_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\execution.py", line 194, in mapnode_over_list
process_inputs(input_dict, i)
File "C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\execution.py", line 183, in process_inputs
results.append(getattr(obj, func)(**inputs))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-animatediff\animatediff\sampler.py", line 270, in animatediff_sample
model = self.inject_motion_module(model, motion_module, inject_method, video_length)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-animatediff\animatediff\sampler.py", line 199, in inject_motion_module
injectors[inject_method](unet, motion_module)
File "C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-animatediff\animatediff\sampler.py", line 89, in inject_motion_module_to_unet
unet.input_blocks[unet_idx].append(motion_module.down_blocks[mm_idx0].motion_modules[mm_idx1])
^^^^^^^^^^^^^^^^^
File "C:\Users\josep\Documents\ComfyUI\.venv\Lib\site-packages\torch\nn\modules\module.py", line 1928, in getattr
raise AttributeError(
```
## System Information
- ComfyUI Version: 0.3.31
- Arguments: C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\main.py --user-directory C:\Users\josep\Documents\ComfyUI\user --input-directory C:\Users\josep\Documents\ComfyUI\input --output-directory C:\Users\josep\Documents\ComfyUI\output --front-end-root C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\web_custom_versions\desktop_app --base-directory C:\Users\josep\Documents\ComfyUI --extra-model-paths-config C:\Users\josep\AppData\Roaming\ComfyUI\extra_models_config.yaml --log-stdout --listen 127.0.0.1 --port 8002
- OS: nt
- Python Version: 3.12.9 (main, Feb 12 2025, 14:52:31) [MSC v.1942 64 bit (AMD64)]
- Embedded Python: false
- PyTorch Version: 2.6.0+cu126
## Devices
- Name: cuda:0 NVIDIA GeForce RTX 3080 : cudaMallocAsync
- Type: cuda
- VRAM Total: 10736893952
- VRAM Free: 9513730048
- Torch VRAM Total: 0
- Torch VRAM Free: 0
## Logs
```
2025-05-04T22:13:14.899877 - Adding extra search path custom_nodes C:\Users\josep\Documents\ComfyUI\custom_nodes
2025-05-04T22:13:14.899877 - Adding extra search path download_model_base C:\Users\josep\Documents\ComfyUI\models
2025-05-04T22:13:14.899877 - Adding extra search path custom_nodes C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\custom_nodes
2025-05-04T22:13:14.899877 - Setting output directory to: C:\Users\josep\Documents\ComfyUI\output
2025-05-04T22:13:14.899877 - Setting input directory to: C:\Users\josep\Documents\ComfyUI\input
2025-05-04T22:13:14.899877 - Setting user directory to: C:\Users\josep\Documents\ComfyUI\user
2025-05-04T22:13:15.534710 - [START] Security scan2025-05-04T22:13:15.534710 -
2025-05-04T22:13:16.357143 - [DONE] Security scan2025-05-04T22:13:16.357143 -
2025-05-04T22:13:16.467850 - ## ComfyUI-Manager: installing dependencies done.2025-05-04T22:13:16.467850 -
2025-05-04T22:13:16.467850 - ** ComfyUI startup time:2025-05-04T22:13:16.467850 - 2025-05-04T22:13:16.467850 - 2025-05-04 22:13:16.4672025-05-04T22:13:16.467850 -
2025-05-04T22:13:16.467850 - ** Platform:2025-05-04T22:13:16.467850 - 2025-05-04T22:13:16.467850 - Windows2025-05-04T22:13:16.467850 -
2025-05-04T22:13:16.467850 - ** Python version:2025-05-04T22:13:16.467850 - 2025-05-04T22:13:16.467850 - 3.12.9 (main, Feb 12 2025, 14:52:31) [MSC v.1942 64 bit (AMD64)]2025-05-04T22:13:16.467850 -
2025-05-04T22:13:16.467850 - ** Python executable:2025-05-04T22:13:16.467850 - 2025-05-04T22:13:16.467850 - C:\Users\josep\Documents\ComfyUI\.venv\Scripts\python.exe2025-05-04T22:13:16.467850 -
2025-05-04T22:13:16.467850 - ** ComfyUI Path:2025-05-04T22:13:16.467850 - 2025-05-04T22:13:16.467850 - C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI2025-05-04T22:13:16.467850 -
2025-05-04T22:13:16.467850 - ** ComfyUI Base Folder Path:2025-05-04T22:13:16.467850 - 2025-05-04T22:13:16.467850 - C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI2025-05-04T22:13:16.467850 -
2025-05-04T22:13:16.467850 - ** User directory:2025-05-04T22:13:16.467850 - 2025-05-04T22:13:16.467850 - C:\Users\josep\Documents\ComfyUI\user2025-05-04T22:13:16.467850 -
2025-05-04T22:13:16.467850 - ** ComfyUI-Manager config path:2025-05-04T22:13:16.467850 - 2025-05-04T22:13:16.467850 - C:\Users\josep\Documents\ComfyUI\user\default\ComfyUI-Manager\config.ini2025-05-04T22:13:16.467850 -
2025-05-04T22:13:16.467850 - ** Log path:2025-05-04T22:13:16.467850 - 2025-05-04T22:13:16.467850 - C:\Users\josep\Documents\ComfyUI\user\comfyui.log2025-05-04T22:13:16.467850 -
2025-05-04T22:13:17.516382 - [ComfyUI-Manager] Failed to restore comfyui-frontend-package
2025-05-04T22:13:17.516382 - expected str, bytes or os.PathLike object, not NoneType
2025-05-04T22:13:17.519050 -
Prestartup times for custom nodes:
2025-05-04T22:13:17.519050 - 2.6 seconds: C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\custom_nodes\ComfyUI-Manager
2025-05-04T22:13:17.519050 -
2025-05-04T22:13:18.989190 - Checkpoint files will always be loaded safely.
2025-05-04T22:13:19.117435 - Total VRAM 10240 MB, total RAM 32682 MB
2025-05-04T22:13:19.117435 - pytorch version: 2.6.0+cu126
2025-05-04T22:13:19.117435 - Set vram state to: NORMAL_VRAM
2025-05-04T22:13:19.117435 - Device: cuda:0 NVIDIA GeForce RTX 3080 : cudaMallocAsync
2025-05-04T22:13:20.137660 - Using pytorch attention
2025-05-04T22:13:21.153637 - Python version: 3.12.9 (main, Feb 12 2025, 14:52:31) [MSC v.1942 64 bit (AMD64)]
2025-05-04T22:13:21.153637 - ComfyUI version: 0.3.31
2025-05-04T22:13:21.186984 - [Prompt Server] web root: C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\web_custom_versions\desktop_app
2025-05-04T22:13:27.209746 - [34m[ComfyUI-Easy-Use] server: [0mv1.3.0 [92mLoaded[0m2025-05-04T22:13:27.209746 -
2025-05-04T22:13:27.209746 - [34m[ComfyUI-Easy-Use] web root: [0mC:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-easy-use\web_version/v2 [92mLoaded[0m2025-05-04T22:13:27.209746 -
2025-05-04T22:13:27.577431 - ### Loading: ComfyUI-Impact-Pack (V8.14.2)2025-05-04T22:13:27.577431 -
2025-05-04T22:13:27.619785 - [Impact Pack] Wildcards loading done.2025-05-04T22:13:27.619785 -
2025-05-04T22:13:27.628286 - Total VRAM 10240 MB, total RAM 32682 MB
2025-05-04T22:13:27.628286 - pytorch version: 2.6.0+cu126
2025-05-04T22:13:27.628286 - Set vram state to: NORMAL_VRAM
2025-05-04T22:13:27.628286 - Device: cuda:0 NVIDIA GeForce RTX 3080 : cudaMallocAsync
2025-05-04T22:13:27.710452 -
2025-05-04T22:13:27.710452 - [92m[rgthree-comfy] Loaded 42 extraordinary nodes. 🎉[00m2025-05-04T22:13:27.710452 -
2025-05-04T22:13:27.710452 -
2025-05-04T22:13:27.823673 - [34mWAS Node Suite: [0mImporting styles from C:\Users\josep\Documents\ComfyUI\styles.csv.[0m2025-05-04T22:13:27.823673 -
2025-05-04T22:13:27.836660 - [34mWAS Node Suite: [0mStyles import complete.[0m2025-05-04T22:13:27.836660 -
2025-05-04T22:13:28.370024 - [34mWAS Node Suite: [0mOpenCV Python FFMPEG support is enabled[0m2025-05-04T22:13:28.370024 -
2025-05-04T22:13:28.370024 - [34mWAS Node Suite [93mWarning: [0m`ffmpeg_bin_path` is not set in C:\Users\josep\Documents\ComfyUI\custom_nodes\was-node-suite-comfyui\was_suite_config.json config file. Will attempt to use system ffmpeg binaries if available.[0m2025-05-04T22:13:28.370024 -
2025-05-04T22:13:28.904938 - [34mWAS Node Suite: [0mFinished.[0m [32mLoaded[0m [0m220[0m [32mnodes successfully.[0m2025-05-04T22:13:28.904938 -
2025-05-04T22:13:28.904938 -
[3m[93m"Art is the lie that enables us to recognize the truth."[0m[3m - Friedrich Nietzsche[0m
2025-05-04T22:13:28.904938 -
2025-05-04T22:13:28.924863 - ### Loading: ComfyUI-Manager (V3.30.4)
2025-05-04T22:13:28.925863 - [ComfyUI-Manager] network_mode: public
2025-05-04T22:13:28.925863 - ### ComfyUI Revision: UNKNOWN (The currently installed ComfyUI is not a Git repository)
2025-05-04T22:13:28.928812 -
Import times for custom nodes:
2025-05-04T22:13:28.928812 - 0.0 seconds: C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-styles_csv_loader
2025-05-04T22:13:28.928812 - 0.0 seconds: C:\Users\josep\Documents\ComfyUI\custom_nodes\cg-use-everywhere
2025-05-04T22:13:28.928812 - 0.0 seconds: C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\custom_nodes\websocket_image_save.py
2025-05-04T22:13:28.928812 - 0.0 seconds: C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-animatediff
2025-05-04T22:13:28.928812 - 0.0 seconds: C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-custom-scripts
2025-05-04T22:13:28.928812 - 0.0 seconds: C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui_essentials
2025-05-04T22:13:28.928812 - 0.0 seconds: C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-frame-interpolation
2025-05-04T22:13:28.928812 - 0.0 seconds: C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-advanced-controlnet
2025-05-04T22:13:28.928812 - 0.0 seconds: C:\Users\josep\Documents\ComfyUI\custom_nodes\rgthree-comfy
2025-05-04T22:13:28.928812 - 0.0 seconds: C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\custom_nodes\ComfyUI-Manager
2025-05-04T22:13:28.928812 - 0.0 seconds: C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-animatediff-evolved
2025-05-04T22:13:28.928812 - 0.0 seconds: C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-videohelpersuite
2025-05-04T22:13:28.928812 - 0.0 seconds: C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-kjnodes
2025-05-04T22:13:28.928812 - 0.0 seconds: C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-impact-pack
2025-05-04T22:13:28.928812 - 0.4 seconds: C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-florence2
2025-05-04T22:13:28.928812 - 0.4 seconds: C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-easy-use
2025-05-04T22:13:28.928812 - 1.2 seconds: C:\Users\josep\Documents\ComfyUI\custom_nodes\was-node-suite-comfyui
2025-05-04T22:13:28.928812 -
2025-05-04T22:13:28.945301 - WARNING: Found example workflow folder 'workflows' for custom node 'comfyui-animatediff', consider renaming it to 'example_workflows'
2025-05-04T22:13:28.962294 - Starting server
2025-05-04T22:13:28.962294 - To see the GUI go to: http://127.0.0.1:8002
2025-05-04T22:13:29.413746 - [ComfyUI-Manager] default cache updated: https://raw.githubusercontent.com/ltdrdata/ComfyUI-Manager/main/alter-list.json
2025-05-04T22:13:29.454227 - [ComfyUI-Manager] default cache updated: https://raw.githubusercontent.com/ltdrdata/ComfyUI-Manager/main/model-list.json
2025-05-04T22:13:29.624462 - [ComfyUI-Manager] default cache updated: https://raw.githubusercontent.com/ltdrdata/ComfyUI-Manager/main/github-stats.json
2025-05-04T22:13:29.791409 - [ComfyUI-Manager] default cache updated: https://raw.githubusercontent.com/ltdrdata/ComfyUI-Manager/main/custom-node-list.json
2025-05-04T22:13:29.812934 - [ComfyUI-Manager] default cache updated: https://raw.githubusercontent.com/ltdrdata/ComfyUI-Manager/main/extension-node-map.json
2025-05-04T22:13:33.249079 - FETCH ComfyRegistry Data: 5/832025-05-04T22:13:33.249079 -
2025-05-04T22:13:34.616945 - got prompt
2025-05-04T22:13:34.616945 - Failed to validate prompt for output 100:
2025-05-04T22:13:34.616945 - * AnimateDiffModuleLoader 16:
2025-05-04T22:13:34.616945 - - Value not in list: model_name: 'mm_sd_v15_v2.ckpt' not in ['mm_sd_v15.ckpt']
2025-05-04T22:13:34.616945 - Output will be ignored
2025-05-04T22:13:34.616945 - invalid prompt: {'type': 'prompt_outputs_failed_validation', 'message': 'Prompt outputs failed validation', 'details': '', 'extra_info': {}}
2025-05-04T22:13:37.186423 - FETCH ComfyRegistry Data: 10/832025-05-04T22:13:37.187670 -
2025-05-04T22:13:41.073001 - FETCH ComfyRegistry Data: 15/832025-05-04T22:13:41.073001 -
2025-05-04T22:13:44.692932 - FETCH ComfyRegistry Data: 20/832025-05-04T22:13:44.692932 -
2025-05-04T22:13:49.779600 - FETCH ComfyRegistry Data: 25/832025-05-04T22:13:49.779600 -
2025-05-04T22:13:53.632493 - FETCH ComfyRegistry Data: 30/832025-05-04T22:13:53.632493 -
2025-05-04T22:13:55.296484 - got prompt
2025-05-04T22:13:56.055976 - model weight dtype torch.float8_e4m3fn, manual cast: torch.bfloat16
2025-05-04T22:13:56.056953 - model_type FLOW
2025-05-04T22:14:02.440212 - Using pytorch attention in VAE
2025-05-04T22:14:02.442210 - Using pytorch attention in VAE
2025-05-04T22:14:04.077946 - FETCH ComfyRegistry Data: 35/832025-05-04T22:14:04.077946 -
2025-05-04T22:14:04.377589 - VAE load device: cuda:0, offload device: cpu, dtype: torch.bfloat16
2025-05-04T22:14:05.006862 - CLIP/text encoder model load device: cuda:0, offload device: cpu, current: cpu, dtype: torch.float16
2025-05-04T22:14:08.296118 - FETCH ComfyRegistry Data: 40/832025-05-04T22:14:08.296118 -
2025-05-04T22:14:11.073354 - warning, embedding:JuggernautNegative-neg does not exist, ignoring
2025-05-04T22:14:11.078353 - warning, embedding:JuggernautNegative-neg does not exist, ignoring
2025-05-04T22:14:11.078353 - Requested to load FluxClipModel_
2025-05-04T22:14:12.098267 - FETCH ComfyRegistry Data: 45/832025-05-04T22:14:12.098267 -
2025-05-04T22:14:12.603268 - loaded completely 7653.8 4777.53759765625 True
2025-05-04T22:14:13.686964 - [AnimateDiff] - [0;32mINFO[0m - Loading motion module mm_sd_v15.ckpt
2025-05-04T22:14:15.495593 - [AnimateDiff] - [0;32mINFO[0m - Converting motion module to fp16.
2025-05-04T22:14:15.688909 - [AnimateDiff] - [0;32mINFO[0m - Injecting motion module with method default.
2025-05-04T22:14:15.727824 - !!! Exception during processing !!! 'Flux' object has no attribute 'input_blocks'
2025-05-04T22:14:15.751854 - Traceback (most recent call last):
File "C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\execution.py", line 347, in execute
output_data, output_ui, has_subgraph = get_output_data(obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\execution.py", line 222, in get_output_data
return_values = mapnode_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\execution.py", line 194, in mapnode_over_list
process_inputs(input_dict, i)
File "C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\execution.py", line 183, in process_inputs
results.append(getattr(obj, func)(**inputs))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-animatediff\animatediff\sampler.py", line 270, in animatediff_sample
model = self.inject_motion_module(model, motion_module, inject_method, video_length)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-animatediff\animatediff\sampler.py", line 199, in inject_motion_module
injectors[inject_method](unet, motion_module)
File "C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-animatediff\animatediff\sampler.py", line 89, in inject_motion_module_to_unet
unet.input_blocks[unet_idx].append(motion_module.down_blocks[mm_idx0].motion_modules[mm_idx1])
^^^^^^^^^^^^^^^^^
File "C:\Users\josep\Documents\ComfyUI\.venv\Lib\site-packages\torch\nn\modules\module.py", line 1928, in getattr
raise AttributeError(
AttributeError: 'Flux' object has no attribute 'input_blocks'. Did you mean: 'single_blocks'?
2025-05-04T22:14:15.751854 - Prompt executed in 20.45 seconds
2025-05-04T22:14:16.034241 - FETCH ComfyRegistry Data: 50/832025-05-04T22:14:16.034241 -
2025-05-04T22:14:19.964967 - FETCH ComfyRegistry Data: 55/832025-05-04T22:14:19.964967 -
2025-05-04T22:14:23.668751 - FETCH ComfyRegistry Data: 60/832025-05-04T22:14:23.668751 -
2025-05-04T22:14:27.579609 - FETCH ComfyRegistry Data: 65/832025-05-04T22:14:27.579609 -
2025-05-04T22:14:31.403614 - FETCH ComfyRegistry Data: 70/832025-05-04T22:14:31.403614 -
2025-05-04T22:14:35.101576 - FETCH ComfyRegistry Data: 75/832025-05-04T22:14:35.101576 -
2025-05-04T22:14:38.822860 - FETCH ComfyRegistry Data: 80/832025-05-04T22:14:38.822860 -
2025-05-04T22:14:41.709170 - FETCH ComfyRegistry Data [DONE]2025-05-04T22:14:41.709690 -
2025-05-04T22:14:41.849589 - [ComfyUI-Manager] default cache updated: https://api.comfy.org/nodes
2025-05-04T22:14:41.925016 - nightly_channel: 2025-05-04T22:14:41.925016 -
2025-05-04T22:14:41.925016 - https://raw.githubusercontent.com/ltdrdata/ComfyUI-Manager/main/remote2025-05-04T22:14:41.925016 -
2025-05-04T22:14:41.926017 - FETCH DATA from: https://raw.githubusercontent.com/ltdrdata/ComfyUI-Manager/main/custom-node-list.json2025-05-04T22:14:41.926017 - 2025-05-04T22:14:42.738909 - [DONE]2025-05-04T22:14:42.738909 -
2025-05-04T22:14:42.790178 - [ComfyUI-Manager] All startup tasks have been completed.
2025-05-04T22:15:36.429999 - got prompt
2025-05-04T22:15:36.450475 - [AnimateDiff] - [0;32mINFO[0m - Injecting motion module with method default.
2025-05-04T22:15:36.467345 - !!! Exception during processing !!! 'Flux' object has no attribute 'input_blocks'
2025-05-04T22:15:36.469351 - Traceback (most recent call last):
File "C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\execution.py", line 347, in execute
output_data, output_ui, has_subgraph = get_output_data(obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\execution.py", line 222, in get_output_data
return_values = mapnode_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\execution.py", line 194, in mapnode_over_list
process_inputs(input_dict, i)
File "C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\execution.py", line 183, in process_inputs
results.append(getattr(obj, func)(**inputs))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-animatediff\animatediff\sampler.py", line 270, in animatediff_sample
model = self.inject_motion_module(model, motion_module, inject_method, video_length)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-animatediff\animatediff\sampler.py", line 199, in inject_motion_module
injectors[inject_method](unet, motion_module)
File "C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-animatediff\animatediff\sampler.py", line 89, in inject_motion_module_to_unet
unet.input_blocks[unet_idx].append(motion_module.down_blocks[mm_idx0].motion_modules[mm_idx1])
^^^^^^^^^^^^^^^^^
File "C:\Users\josep\Documents\ComfyUI\.venv\Lib\site-packages\torch\nn\modules\module.py", line 1928, in getattr
raise AttributeError(
AttributeError: 'Flux' object has no attribute 'input_blocks'. Did you mean: 'single_blocks'?
2025-05-04T22:15:36.473889 - Prompt executed in 0.04 seconds
2025-05-04T22:17:04.606979 - got prompt
2025-05-04T22:17:04.622908 - [AnimateDiff] - [0;32mINFO[0m - Injecting motion module with method default.
2025-05-04T22:17:04.635783 - !!! Exception during processing !!! 'Flux' object has no attribute 'input_blocks'
2025-05-04T22:17:04.641060 - Traceback (most recent call last):
File "C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\execution.py", line 347, in execute
output_data, output_ui, has_subgraph = get_output_data(obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\execution.py", line 222, in get_output_data
return_values = mapnode_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\execution.py", line 194, in mapnode_over_list
process_inputs(input_dict, i)
File "C:\Users\josep\AppData\Local\Programs\@comfyorgcomfyui-electron\resources\ComfyUI\execution.py", line 183, in process_inputs
results.append(getattr(obj, func)(**inputs))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-animatediff\animatediff\sampler.py", line 270, in animatediff_sample
model = self.inject_motion_module(model, motion_module, inject_method, video_length)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-animatediff\animatediff\sampler.py", line 199, in inject_motion_module
injectors[inject_method](unet, motion_module)
File "C:\Users\josep\Documents\ComfyUI\custom_nodes\comfyui-animatediff\animatediff\sampler.py", line 89, in inject_motion_module_to_unet
unet.input_blocks[unet_idx].append(motion_module.down_blocks[mm_idx0].motion_modules[mm_idx1])
^^^^^^^^^^^^^^^^^
File "C:\Users\josep\Documents\ComfyUI\.venv\Lib\site-packages\torch\nn\modules\module.py", line 1928, in getattr
raise AttributeError(
AttributeError: 'Flux' object has no attribute 'input_blocks'. Did you mean: 'single_blocks'?
2025-05-04T22:17:04.644059 - Prompt executed in 0.03 seconds
```
## Attached Workflow
Please make sure that workflow does not contain any sensitive information such as API keys or passwords.
```
Workflow too large. Please manually upload the workflow from local file system.
```
## Additional Context
(Please add any additional context or steps to reproduce the error here)


