Commit Graph

2077 Commits

Author SHA1 Message Date
Yousef Rafat 977242b2f1 vae shape decode fixes 2026-02-25 04:26:33 +02:00
Yousef Rafat 83d962e9c7 . 2026-02-24 14:53:54 +02:00
Yousef Rafat f4ea5926a5 progressing 2026-02-23 01:40:56 +02:00
Yousef R. Gamaleldin bd7a8e9e4f Merge branch 'master' into trellis2 2026-02-23 00:09:46 +02:00
Yousef Rafat 3fcdac8c7b bunch of fixes 2026-02-22 23:47:49 +02:00
comfyanonymous caa43d2395
Fix issue loading fp8 ltxav checkpoints. (#12582) 2026-02-22 16:00:02 -05:00
comfyanonymous 07ca6852e8
Fix dtype issue in embeddings connector. (#12570) 2026-02-22 03:18:20 -05:00
comfyanonymous f266b8d352
Move LTXAV av embedding connectors to diffusion model. (#12569) 2026-02-21 22:29:58 -05:00
Yousef Rafat 49d1eab2a5 fixes 2026-02-22 01:25:10 +02:00
rattus 0bfb936ab4
comfy-aimdo 0.2 - Improved pytorch allocator integration (#12557)
Integrate comfy-aimdo 0.2 which takes a different approach to
installing the memory allocator hook. Instead of using the complicated
and buggy pytorch MemPool+CudaPluggableAlloctor, cuda is directly hooked
making the process much more transparent to both comfy and pytorch. As
far as pytorch knows, aimdo doesnt exist anymore, and just operates
behind the scenes.

Remove all the mempool setup stuff for dynamic_vram and bump the
comfy-aimdo version. Remove the allocator object from memory_management
and demote its use as an enablment check to a boolean flag.

Comfy-aimdo 0.2 also support the pytorch cuda async allocator, so
remove the dynamic_vram based force disablement of cuda_malloc and
just go back to the old settings of allocators based on command line
input.
2026-02-21 10:52:57 -08:00
Terry Jia f394af8d0f
feat: add gradient-slider display mode for FLOAT inputs (#12536)
* feat: add gradient-slider display mode for FLOAT inputs

* fix: use precise type annotation list[list[float]] for gradient_stops

Amp-Thread-ID: https://ampcode.com/threads/T-019c7eea-be2b-72ce-a51f-838376f9b7a7

---------

Co-authored-by: Jedrzej Kosinski <kosinkadink1@gmail.com>
Co-authored-by: bymyself <cbyrne@comfy.org>
2026-02-20 22:52:32 -08:00
Yousef Rafat c000fe090f debugging 2026-02-20 22:04:37 +02:00
Yousef Rafat 167ab754d9 coderabbit 2 2026-02-20 21:13:13 +02:00
Yousef Rafat acb25b55e8 code rabbit suggestions 2026-02-20 20:16:49 +02:00
Yousef Rafat 8e1230543d . 2026-02-20 17:39:44 +02:00
comfyanonymous 5f2117528a
Force min length 1 when tokenizing for text generation. (#12538) 2026-02-19 22:57:44 -05:00
comfyanonymous 0301ccf745
Small cleanup and try to get qwen 3 work with the text gen. (#12537) 2026-02-19 22:42:28 -05:00
Yousef Rafat 578c64f2c4 trellis2conditioning and a hidden bug 2026-02-19 22:05:33 +02:00
Jukka Seppänen 6d11cc7354
feat: Add basic text generation support with native models, initially supporting Gemma3 (#12392) 2026-02-18 20:49:43 -05:00
Yousef Rafat 4e401fd353 small fixes 2026-02-19 00:48:26 +02:00
Yousef Rafat f2d477720c . 2026-02-18 22:01:09 +02:00
Yousef R. Gamaleldin 5a51bf82de Merge branch 'master' into trellis2 2026-02-18 21:52:39 +02:00
rattus 58dcc97dcf
ops: limit return of requants (#12506)
This check was far too broad and the dtype is not a reliable indicator
of wanting the requant (as QT returns the compute dtype as the dtype).
So explictly plumb whether fp8mm wants the requant or not.
2026-02-17 15:32:27 -05:00
chaObserv 44f8598521
Fix anima LLM adapter forward when manual cast (#12504) 2026-02-17 07:56:44 -08:00
comfyanonymous c39653163d
Fix anima preprocess text embeds not using right inference dtype. (#12501) 2026-02-17 00:29:20 -05:00
comfyanonymous 18927538a1
Implement NAG on all the models based on the Flux code. (#12500)
Use the Normalized Attention Guidance node.

Flux, Flux2, Klein, Chroma, Chroma radiance, Hunyuan Video, etc..
2026-02-16 23:30:34 -05:00
comfyanonymous 4454fab7f0
Remove code to support RMSNorm on old pytorch. (#12499) 2026-02-16 20:09:24 -05:00
Yousef Rafat b7de0ad87e postprocessing node fixes + model small fixes 2026-02-17 00:10:48 +02:00
comfyanonymous 88e6370527
Remove workaround for old pytorch. (#12480) 2026-02-15 20:43:53 -05:00
rattus c0370044cd
MPDynamic: force load flux img_in weight (Fixes flux1 canny+depth lora crash) (#12446)
* lora: add weight shape calculations.

This lets the loader know if a lora will change the shape of a weight
so it can take appropriate action.

* MPDynamic: force load flux img_in weight

This weight is a bit special, in that the lora changes its geometry.
This is rather unique, not handled by existing estimate and doesn't
work for either offloading or dynamic_vram.

Fix for dynamic_vram as a special case. Ideally we can fully precalculate
these lora geometry changes at load time, but just get these models
working first.
2026-02-15 20:30:09 -05:00
Yousef Rafat ee24b93abc rewriting conditioning logic + model code addition 2026-02-16 01:53:53 +02:00
comfyanonymous e1ede29d82
Remove unsafe pickle loading code that was used on pytorch older than 2.4 (#12473)
ComfyUI hasn't started on pytorch 2.4 since last month.
2026-02-14 22:53:52 -05:00
krigeta dc9822b7df
Add working Qwen 2512 ControlNet (Fun ControlNet) support (#12359) 2026-02-13 22:23:52 -05:00
comfyanonymous 712efb466b
Add left padding to LTXAV text encoder. (#12456) 2026-02-13 21:56:54 -05:00
comfyanonymous 726af73867
Fix some custom nodes. (#12455) 2026-02-13 20:21:10 -05:00
comfyanonymous 831351a29e
Support generating attention masks for left padded text encoders. (#12454) 2026-02-13 20:15:23 -05:00
comfyanonymous e1add563f9
Use torch RMSNorm for flux models and refactor hunyuan video code. (#12432) 2026-02-13 15:35:13 -05:00
rattus 8902907d7a
dynamic_vram: Training fixes (#12442) 2026-02-13 15:29:37 -05:00
Yousef Rafat 6023feca0e . 2026-02-13 21:05:59 +02:00
rattus ae79e33345
llama: use a more efficient rope implementation (#12434)
Get rid of the cat and unary negation and inplace add-cmul the two
halves of the rope. Precompute -sin once at the start of the model
rather than every transformer block.

This is slightly faster on both GPU and CPU bound setups.
2026-02-12 19:56:42 -05:00
rattus 117e214354
ModelPatcherDynamic: force load non leaf weights (#12433)
The current behaviour of the default ModelPatcher is to .to a model
only if its fully loaded, which is how random non-leaf weights get
loaded in non-LowVRAM conditions.

The however means they never get loaded in dynamic_vram. In the
dynamic_vram case, force load them to the GPU.
2026-02-12 19:51:50 -05:00
Yousef Rafat 3309aaafd0 more reliable detection 2026-02-13 00:10:25 +02:00
Yousef Rafat 28268a7a57 fixed attn (couldn't use apply_rope for dino3) 2026-02-12 23:35:57 +02:00
askmyteapot e5ae670a40
Update ace15.py to allow min_p sampling (#12373) 2026-02-11 20:28:48 -05:00
rattus 3fe61cedda
model_patcher: guard against none model_dtype (#12410)
Handle the case where the _model_dtype exists but is none with the
intended fallback.
2026-02-11 14:54:02 -05:00
rattus 2a4328d639
ace15: Use dynamic_vram friendly trange (#12409)
Factor out the ksampler trange and use it in ACE LLM to prevent the
silent stall at 0 and rate distortion due to first-step model load.
2026-02-11 14:53:42 -05:00
rattus d297a749a2
dynamic_vram: Fix windows Aimdo crash + Fix LLM performance (#12408)
* model_management: lazy-cache aimdo_tensor

These tensors cosntructed from aimdo-allocations are CPU expensive to
make on the pytorch side. Add a cache version that will be valid with
signature match to fast path past whatever torch is doing.

* dynamic_vram: Minimize fast path CPU work

Move as much as possible inside the not resident if block and cache
the formed weight and bias rather than the flat intermediates. In
extreme layer weight rates this adds up.
2026-02-11 14:50:16 -05:00
Yousef Rafat 9b9c3c3b9f debugging 2026-02-11 20:33:59 +02:00
comfyanonymous 76a7fa96db
Make built in lora training work on anima. (#12402) 2026-02-10 22:04:32 -05:00
Kohaku-Blueleaf cdcf4119b3
[Trainer] training with proper offloading (#12189)
* Fix bypass dtype/device moving

* Force offloading mode for training

* training context var

* offloading implementation in training node

* fix wrong input type

* Support bypass load lora model, correct adapter/offloading handling
2026-02-10 21:45:19 -05:00