Commit Graph

176 Commits

Author SHA1 Message Date
Jedrzej Kosinski 0fbefb8428 Refactored code to store wrappers and callbacks in transformer_options, added apply_model and diffusion_model.forward wrappers 2024-11-03 06:22:48 -06:00
Jedrzej Kosinski 51e8d5554c Moved WrappersMP/CallbacksMP/WrapperExecutor to patcher_extension.py 2024-11-02 22:21:16 -05:00
Jedrzej Kosinski 3bcbcce88d Merge branch 'master' into patch_hooks 2024-10-31 18:34:05 -05:00
Jedrzej Kosinski d5169df808 Added initial support within CLIP Text Encode (Prompt) node for scheduling weight hook CLIP strength via clip_start_percent/clip_end_percent on conds, added schedule_clip toggle to Set CLIP Hooks node, small cleanup/fixes 2024-10-30 04:56:09 -05:00
comfyanonymous 5cbb01bc2f Basic Genmo Mochi video model support.
To use:
"Load CLIP" node with t5xxl + type mochi
"Load Diffusion Model" node with the mochi dit file.
"Load VAE" with the mochi vae file.

EmptyMochiLatentVideo node for the latent.
euler + linear_quadratic in the KSampler node.
2024-10-26 06:54:00 -04:00
Jedrzej Kosinski daeb2624a9 Fixed default conds not respecting hook keyframes, made keyframes not reset cache when strength is unchanged, fixed Cond Set Default Combine throwing error, fixed model-as-lora throwing error during calculate_weight after a recent ComfyUI update, small refactoring/scaffolding changes for hooks 2024-10-25 18:32:22 -05:00
Jedrzej Kosinski 4bbdf2bfe5 Merge branch 'master' into patch_hooks 2024-10-23 21:10:46 -05:00
comfyanonymous f82314fcfc Fix duplicate sigmas on beta scheduler. 2024-10-21 20:19:45 -04:00
Jedrzej Kosinski 1e2777bab1 Added uuid to conds in CFGGuider and uuids to transformer_options to allow uniquely identifying conds in batches during sampling 2024-10-08 17:52:01 -05:00
Jedrzej Kosinski 06fbdb03ef Merge branch 'master' into patch_hooks 2024-10-05 06:43:43 -05:00
kosinkadink1@gmail.com 0c8bd63aa9 Added Combine versions of Cond/Cond Pair Set Props nodes, renamed Pair Cond to Cond Pair, fixed default conds never applying hooks (due to hooks key typo) 2024-09-27 14:42:50 +09:00
kosinkadink1@gmail.com 0f7d379d24 Refactored WrapperExecutor code to remove need for WrapperClassExecutor (now gone), added sampler.sample wrapper (pending review, will likely keep but will see what hacks this could currently let me get rid of in ACN/ADE) 2024-09-27 12:14:36 +09:00
kosinkadink1@gmail.com 09cbd69161 Added create_model_options_clone func, modified type annotations to use __future__ so that I can use the better type annotations 2024-09-25 20:29:49 +09:00
kosinkadink1@gmail.com fd2d572447 Modified ControlNet/T2IAdapter get_control function to receive transformer_options as additional parameter, made the model_options stored in extra_args in inner_sample be a clone of the original model_options instead of same ref 2024-09-25 19:46:33 +09:00
chaObserv 479a427a48
Add dpmpp_2m_cfg_pp (#4992) 2024-09-24 02:42:56 -04:00
kosinkadink1@gmail.com 7c86407619 Refactored callbacks+wrappers to allow storing lists by id 2024-09-22 16:36:40 +09:00
kosinkadink1@gmail.com 5052a78be2 Added WrapperExecutor for non-classbound functions, added calc_cond_batch wrappers 2024-09-22 11:52:35 +09:00
kosinkadink1@gmail.com 59d72b4050 Added wrappers to ModelPatcher to facilitate standardized function wrapping 2024-09-20 20:05:29 +09:00
kosinkadink1@gmail.com 787ef34842 Continued work on simpler Create Hook Model As LoRA node, started to implement ModelPatcher callbacks, attachments, and additional_models 2024-09-19 11:47:25 +09:00
kosinkadink1@gmail.com 4b472ba44c Added support for adding weight hooks that aren't registered on the ModelPatcher at sampling time 2024-09-17 06:22:41 +09:00
kosinkadink1@gmail.com f5c899f42a Fixed MaxSpeed and default conds implementations 2024-09-15 21:00:45 +09:00
kosinkadink1@gmail.com 9ded65a616 Added initial set of hook-related nodes, added code to register hooks for loras/model-as-loras, small renaming/refactoring 2024-09-15 08:33:17 +09:00
kosinkadink1@gmail.com 5dadd97583 Added default_conds support in calc_cond_batch func 2024-09-14 17:21:50 +09:00
kosinkadink1@gmail.com f160d46340 Added call to initialize_timesteps on hooks in process_conds func, and added call prepare current keyframe on hooks in calc_cond_batch 2024-09-14 16:10:42 +09:00
kosinkadink1@gmail.com 9ae758175d Added current_patcher property to BaseModel 2024-09-13 21:35:35 +09:00
kosinkadink1@gmail.com 3cbd40ada3 Initial changes to calc_cond_batch to eventually support hook_patches 2024-09-13 18:31:52 +09:00
yoinked b5d0f2a908
Add CFG++ to DPM++ 2S Ancestral (#3871)
* Update sampling.py

* Update samplers.py

* my bad

* "fix" the sampler

* Update samplers.py

* i named it wrong

* minor sampling improvements

mainly using a dynamic rho value (hey this sounds a lot like smea!!!)

* revert rho change

rho? r? its just 1/2
2024-09-11 02:49:44 -04:00
Jim Winkens bb52934ba4
Fix import issue (#4815) 2024-09-07 05:28:32 -04:00
comfyanonymous 2622c55aff Automatically use RF variant of dpmpp_2s_ancestral if RF model. 2024-08-18 00:47:25 -04:00
Ashen 1beb348ee2 dpmpp_2s_ancestral_RF for rectified flow (Flux, SD3 and Auraflow). 2024-08-18 00:33:30 -04:00
comfyanonymous 63a7e8edba More aggressive batch splitting. 2024-08-03 11:53:30 -04:00
comfyanonymous 95fa9545f1 Only append zero to noise schedule if last sigma isn't zero. 2024-07-20 12:37:30 -04:00
comfyanonymous 6ab8cad22e Implement beta sampling scheduler.
It is based on: https://arxiv.org/abs/2407.12173

Add "beta" to the list of schedulers and the BetaSamplingScheduler node.
2024-07-19 18:05:09 -04:00
Extraltodeus f1a01c2c7e
Add sampler_pre_cfg_function (#3979)
* Update samplers.py

* Update model_patcher.py
2024-07-09 16:20:49 -04:00
comfyanonymous 05e831697a Switch to the real cfg++ method in the samplers.
The old _pp ones will be updated automatically to the regular ones with 2x
the cfg.

My fault for not checking what the "_pp" samplers actually did.
2024-06-29 11:59:48 -04:00
comfyanonymous 44947e7ad4 Add DEIS order 3 sampler.
Order 4 seems to give bad results.
2024-06-26 22:40:05 -04:00
comfyanonymous 69d710e40f Implement my alternative take on CFG++ as the euler_pp sampler.
Add euler_ancestral_pp which is the ancestral version of euler with the
same modification.
2024-06-25 07:41:52 -04:00
comfyanonymous d5efde89b7 Add ipndm_v sampler, works best with the exponential scheduler. 2024-06-20 08:51:49 -04:00
comfyanonymous e11052afcf Add ipndm sampler. 2024-06-19 16:32:30 -04:00
comfyanonymous a5e6a632f9 Support sampling non 2D latents. 2024-06-10 01:31:09 -04:00
comfyanonymous f81a6fade8 Fix some edge cases with samplers and arrays with a single sigma. 2024-05-01 17:05:30 -04:00
Jedrzej Kosinski 7990ae18c1
Fix error when more cond masks passed in than batch size (#3353) 2024-04-26 12:51:12 -04:00
comfyanonymous 0f5768e038 Fix missing arguments in cfg_function. 2024-04-04 23:38:57 -04:00
comfyanonymous 1a0486bb96 Fix model needing to be loaded on GPU to generate the sigmas. 2024-04-04 22:08:49 -04:00
comfyanonymous c6bd456c45 Make zero denoise a NOP. 2024-04-04 11:41:27 -04:00
comfyanonymous fcfd2bdf8a Small cleanup. 2024-04-04 11:16:49 -04:00
comfyanonymous 0542088ef8 Refactor sampler code for more advanced sampler nodes part 2. 2024-04-04 01:26:41 -04:00
comfyanonymous 57753c964a Refactor sampling code for more advanced sampler nodes. 2024-04-03 22:09:51 -04:00
comfyanonymous e6482fbbfc Refactor calc_cond_uncond_batch into calc_cond_batch.
calc_cond_batch can take an arbitrary amount of cond inputs.

Added a calc_cond_uncond_batch wrapper with a warning so custom nodes
won't break.
2024-04-01 18:07:47 -04:00
comfyanonymous 0624838237 Add inverse noise scaling function. 2024-03-21 14:49:11 -04:00