Jedrzej Kosinski and Amp
8c277d92bd
fix: update cast_bias_weight usage and fix motion model dtype loading
...
- Fix #572 : Use offloadable=True with cast_bias_weight in groupnorm_mm_forward
to match ComfyUI's updated 3-return-value API, and call uncast_bias_weight
after use for proper async-offload support.
- Fix #569 : Move .to(dtype) call after load_state_dict across all model loading
functions. Previously, the dtype cast was done before load_state_dict, which
overwrote weights with the original float32 values from disk, causing Half vs
Float mismatches at runtime when the UNet runs in float16. Affected functions:
load_motion_module_gen1, load_motion_module_gen2, create_fresh_motion_module,
create_fresh_encoder_only_model, inject_img_encoder_into_model,
inject_pia_conv_in_into_model, inject_camera_encoder_into_model,
load_hmreferenceadapter.
Co-authored-by: Amp <amp@ampcode.com >
Amp-Thread-ID: https://ampcode.com/threads/T-019d3bef-9580-7798-aec3-7a009a0f62a4
2026-03-29 18:37:59 -07:00
Jedrzej Kosinski
d167f18f79
Added multigpu support to a bunch of core AnimateDiff features via refactor
2025-01-29 09:13:53 -06:00
Jedrzej Kosinski
450b658184
Fixed backwards compatibility for scheduling, changed "sigmas" to "sample_sigmas" to match up with incoming ComfyUI PR
2025-01-05 15:30:54 -06:00
Jedrzej Kosinski
856d850437
Fixed keyframes not working as expected when sampling is spread across multiple nodes/calls, removed conditioning.py since most of the code there was already deprecated in favor of vanilla ComfyUI after my PR was merged in early December
2024-12-30 23:32:47 -06:00
Jedrzej Kosinski
93cafde180
Got MotionCtrl's camere control working, fixed frame_length affecting CameraCtrl Pose speed; still need to fix CameraCtrl Poses not adding to each other as expected
2024-12-29 14:42:54 -06:00
Jedrzej Kosinski
faa5ec365a
More MotionCtrl progress, added per_block_replace to AnimateDiff Keyframe, small refactoring to make this possible, fully deprecated AnimateDiff Loader [Legacy] node
2024-12-28 12:57:19 -06:00
Jedrzej Kosinski
ebb5496001
Technically initial support for HelloMeme RefNet; it needs more work, but after some more testing with the diffusers repo, it does not seem like something that can be extended well. Will continue to explore
2024-12-26 07:41:53 -06:00
Jedrzej Kosinski
852fe3fc81
Add create_MotionModelPatcher to DinkLink, make eject function check if blocks variables are actually defined
2024-12-01 19:43:44 -06:00
Jedrzej Kosinski
5ee8cf677e
Pass transformer_options into VanillaTemporalModule and all subsequent layers, as well as mm_kwargs were applicable, so that behavior can be more easily extended in the future, both from ADE code and other node packs
2024-11-28 13:52:02 -06:00
Jedrzej Kosinski
0a2d1291c9
Refactored MotionModelPatcher into MotionModelAttachment so that no custom ModelPatcher model is required; no more mismatches between ComfyUI and ADE ModelPatcher features. Also made Scale Ref Image and VAE Encode node use batched vae encoding
2024-11-27 23:31:55 -06:00
Jedrzej Kosinski
f64d67466f
Add proper parent reference to MotionModelPatcher.clone() to work properly with new memory management
2024-11-14 21:59:58 -06:00
Jedrzej Kosinski
48079783a2
Use DinkLink to get ACN wrapper for ContextRef and ControlNet conversion purposes
2024-11-14 12:10:26 -06:00
Jedrzej Kosinski
f32a382238
Refactored nodes_conditioning.py to use new built-in ComfyUI hook features (will deprecate almost all these nodes soon after testing)
2024-11-12 09:06:48 -06:00
Jedrzej Kosinski
959fd3fd45
Match changes in patch_hooks_improved_memory ComfyUI branch
2024-11-02 22:21:45 -05:00
Kosinkadink
10e6b0bbae
Made Visualize Context Options nodes work after the refactor
2024-09-24 21:49:35 +09:00
Kosinkadink
f003299708
Adapted sliding_calc_cond_batch and forward_timestep_embed to use new ModelPatcher wrappers/patches, removed no-longer used code, removed model_name from InjectionParams
2024-09-24 14:05:46 +09:00
Kosinkadink
a1b03d6851
Ported Gen1 nodes to use upcoming ComfyUI features, refactored some code to match ComfyUI changes
2024-09-22 16:38:57 +09:00
Kosinkadink
e6a9638cef
Started porting over code to use upcoming ModelPatcher features in ComfyUI to get rid of a bunch of hacky code (and to enable hookable patches)
2024-09-21 16:33:05 +09:00
Jedrzej Kosinski
1a9d70ee4c
Progress on FancyVideo support
2024-09-03 15:37:14 -05:00
Jedrzej Kosinski
00b63e65f0
Merge branch 'main' into develop
2024-08-30 08:25:28 -05:00
Jedrzej Kosinski
3e3351ad72
Fix fp8 support for AD models
2024-08-30 08:20:38 -05:00
Jedrzej Kosinski
df8eb6fb90
Merge branch 'main' into develop
2024-08-23 04:42:31 -05:00
Jedrzej Kosinski
651ccfecf7
Update calculate_weight call to use new location to remove warning (backwards compatible)
2024-08-23 04:01:08 -05:00
Jedrzej Kosinski
32c352e20e
Initial scaffolding for supporting FancyVideo, refactored load_motion_module code to manually parse load_state_dict load_result
2024-08-21 20:29:54 -05:00
Jedrzej Kosinski
ff07c13452
Refactored patching code to work with latest ComfyUI - NOT backwards compatible with previous ComfyUI versions, sadly
2024-08-20 01:26:47 -05:00
Jedrzej Kosinski
3a380d0a18
Added scale support to Per Block nodes
2024-08-16 08:35:40 -05:00
Jedrzej Kosinski
6813b0c19b
Fix sd_type check for AD Per Block node
2024-08-16 04:55:34 -05:00
Jedrzej Kosinski
1a87cefb18
Initial Per-Block implementation - only effect works currently, still need to implement scale, fixed some Apply node sizes due to .js changes with documentation
2024-08-16 03:40:33 -05:00
Jedrzej Kosinski
b81ec6b9ac
Just in case, make sure model is still injected if was originally injected prior to partially_load call
2024-08-12 12:30:48 -05:00
Jedrzej Kosinski
95a5bcad6e
Fix new partial_load/partial_unload calls breaking things for motion module patching
2024-08-12 12:21:06 -05:00
Jedrzej Kosinski
62061995c2
Merge branch 'main' into develop
2024-08-06 17:26:30 -05:00
Jedrzej Kosinski
c1c3bbc583
Remove current_device param from ModelPatcher init call to match latest ComfyUI
2024-08-06 17:25:04 -05:00
Jedrzej Kosinski
2ffa1ef8e5
Added curr_t checks for Context Ketframes, AD Keyframes, and CustomCFG Keyframes to work as expected for tiling
2024-08-04 16:25:02 -05:00
Jedrzej Kosinski
23f88690cd
Made lora hook patches work for newest ComfyUI
2024-06-20 09:06:18 -05:00
Jedrzej Kosinski
62b0dae4c1
Added experimental node to inject PIA component into any AnimateDiff model (not very useful currently)
2024-06-17 07:17:29 -05:00
Jedrzej Kosinski
7670f96fe4
Cleaned up some comments + added extra PIA cleanup
2024-06-17 06:37:20 -05:00
Jedrzej Kosinski
fa227805fb
Implemented PIA paper's original preset values from diffusers code via PIA Input [Paper Presets], some prototype work on PIA effect_multival input (hidden for now)
2024-06-17 06:06:57 -05:00
Jedrzej Kosinski
40ccb3ae87
Merge branch 'main' into develop
2024-06-16 21:45:21 -05:00
Jedrzej Kosinski
89e449d757
Fix small error in updated code for ModelPatcherCLIPHooks
2024-06-16 21:35:58 -05:00
Jedrzej Kosinski
0a7e2d2841
Fixed lora hooks for newest ComfyUI versions
2024-06-16 21:10:14 -05:00
Jedrzej Kosinski
706a98ddee
Move groupnorm injection as wrapper around diffusion_model.forward function to minimize 'leaking' of groupnorm hack, remove no longer necessary mentions of groupnorm uninjector
2024-06-16 04:44:35 -05:00
Jedrzej Kosinski
ee1ad61051
Add logger info about PIA vae encoding, use 16 batch size for encoding to potentially avoid issues for some users
2024-06-10 23:21:52 -05:00
Jedrzej Kosinski
0253cbc205
Refactored code to no longer cache pia conv_in, hopefully fixing all existing PIA issues
2024-06-08 22:33:04 -05:00
Jedrzej Kosinski
6ea41ba6cc
Added initial PIA support
2024-06-07 09:24:14 -05:00
Jedrzej Kosinski
6c755869fd
initial attempt at noised image injection; might remove later if does not pan out
2024-06-04 20:45:23 -05:00
Jedrzej Kosinski
5d9ffaaf4b
Prepare for ComfyUI to remove model_keys prop from ModelPatcher
2024-06-02 19:28:26 -05:00
Jedrzej Kosinski
565261a146
Made MotionModelPatcher handle pe's properly with lowvram
2024-05-18 02:14:57 -05:00
Jedrzej Kosinski
c711dc1e7a
Fixed lora scheduling not working as intended if no lora masking is used
2024-05-08 16:19:27 -05:00
Jedrzej Kosinski
910475c7b2
Added LoRA Hook Keyframe support for scheduling any LoRA Hook, whether it be individual or group
2024-04-29 11:01:25 -05:00
Jedrzej Kosinski
5da9bfda92
Register Model as LoRA Hook (with clip, not the Model Only version) now works properly thanks to the previous refactor of Model as LoRA Hook code
2024-04-28 11:56:42 -05:00