Commit Graph

2372 Commits

Author SHA1 Message Date
Alan Li 84a38419d7
Merge 48454d17b6 into a9ab2b62da 2026-08-16 01:40:29 +08:00
Jukka Seppänen 55b6a9b11d
Fix thinking handling (#15611) 2026-08-14 15:17:18 -04:00
Jukka Seppänen 7fe8a61385
Speedup Gemma4 text generation (CORE-371) (#15054) 2026-08-13 21:12:55 -04:00
Barish Ozbay e01fb4c56b
Add MiniMaxH3AddGuide for anchoring image and audio guides at any frame (#15439) 2026-08-13 15:55:36 -04:00
comfyanonymous 03fa4e48ba
Fix minimax music not working on non dynamic vram. (#15588) 2026-08-13 15:47:44 -04:00
rattus ddbaa87528
minimax: early detect qkv vs q,k,v (#15581)
avoid a commit charge surge on non-dynamic windows due to double linear
creation.
2026-08-13 13:08:08 -04:00
rattus af3d2153a7
llama: fix non-local x path (#15580) 2026-08-13 12:21:26 -04:00
rattus efd4e951a0
Implement Minimax Music 3 + Core Support for Cuda Graphs (#15570) 2026-08-13 12:10:08 -04:00
Alexander Brown addd479729
Fix Generate Text ignoring thinking=false on Gemma4 E2B/E4B (#15278) 2026-08-12 22:44:14 -04:00
Alex Harper 2220d111c8
Query pytorch for aotriton support instead of listing its lib directory (#15412) 2026-08-12 21:40:11 -04:00
comfyanonymous 725e6ec606
Support anima tunes with extra blocks. (#15555) 2026-08-12 16:22:50 -04:00
comfyanonymous bd34f338ac
Fix float64 device in ltx diffusion decoder. (#15516) 2026-08-12 03:55:08 -04:00
Jukka Seppänen 27bca654eb
Fix KSamplerAdvanced with add_noise disabled on nested latents (#15447) 2026-08-11 17:58:00 -04:00
comfyanonymous 024cbc5fc1
Remove potentially problematic process_tokens method. (#15507) 2026-08-11 16:45:52 -04:00
comfyanonymous bbb4b04caa
Don't depend on transformers for mistral and llama tokenizers. (#15503) 2026-08-11 15:54:44 -04:00
comfyanonymous d9f9d2ba12
Fix some clip vision regression. (#15506) 2026-08-11 15:54:15 -04:00
comfyanonymous 2a19bbf014
Fix for broken tiled audio decode. (#15502) 2026-08-11 14:07:32 -04:00
Alexis Rolland 57ce8e1a27
Add support for LTX 2.5 (#15499)
---------

Co-authored-by: kijai <40791699+kijai@users.noreply.github.com>
2026-08-11 13:47:39 -04:00
comfyanonymous 62b3c94bd4
Fix peak memory issue with H3. (#15486) 2026-08-11 02:09:29 -07:00
comfyanonymous bf4c9a08fc
Implement comfy kitchen attention. (#15479)
Add a ModelAttentionBackend node to manually select the attention for models in the workflows. Currently supports pytorch attention or comfy kitchen attention.

Add --use-ck-attention to enable comfy kitchen attention as the default attention backend for all models (might break some).
2026-08-10 22:03:08 -07:00
comfyanonymous 4f3544d131
Make cu130 warning more visible. (#15463) 2026-08-10 23:25:01 -04:00
Jukka Seppänen 2a68ce33b4
Optimize MiniMax-H3 VAE (#15446) 2026-08-09 14:24:48 -04:00
blepping cbbc9dab1f
Make a context manager for cast_bias_weight and use it. (#14750) 2026-08-08 22:38:34 -04:00
Alan Li 48454d17b6 Avoid duplicate quant metadata markers 2026-08-08 01:25:21 -04:00
Alan Li 50af1a3563 Fix quant metadata marker collision handling 2026-08-08 01:25:21 -04:00
Alan Li 20467f61ee Fix convert_old_quants ignoring model_prefix in _quantization_metadata branch (#11864)
The new-format branch of convert_old_quants() writes "{layer_key}.comfy_quant"
markers straight from the checkpoint's _quantization_metadata JSON, ignoring
model_prefix entirely. Checkpoint metadata stores layer keys either with the
full diffusion-model prefix or already stripped of it, and convert_old_quants()
is invoked before and/or after that prefix is stripped from state_dict
(comfy/sd.py calls it up to twice around the strip). A fixed assumption about
which convention is in play silently mismatches the other, so affected layers
never get wrapped in a QuantizedTensor and fall back to plain-dtype storage
(observed as VRAM blowup / manual-cast warnings on NVFP4 checkpoints such as
LTX-Video 2.3).

PR #13328 tried to fix this by reordering comfy/sd.py's calls around the
prefix strip, but that only swaps which convention works and was closed by
the maintainer for risking regressions on checkpoints using the other
convention. This instead makes convert_old_quants() match each layer key
against the state_dict's real key first (zero behavior change when metadata
is already aligned with state_dict), then try adding/stripping model_prefix,
and only fall back to today's blind write when neither matches. No call
sites in comfy/sd.py are touched or reordered. The write is now also
idempotent, guarding against the double-call case rewriting a resolved key.

Adds tests-unit/comfy_quant/test_convert_old_quants_prefix.py covering both
metadata conventions, the legacy scaled_fp8 branch (unaffected), the exact
two-call dance from load_diffusion_model_state_dict, and a documented (xfail)
residual gap: when a checkpoint's real weight keys carry no prefix at all but
its metadata keys do, comfy/sd.py's model_prefix="" call-site argument still
lets model_detection.unet_prefix_from_state_dict get poisoned by the
resulting spurious marker keys. That is pre-existing (reproduces identically
without this patch) and out of scope here since fixing it needs a
comfy/sd.py or model_detection.py change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-08 01:25:21 -04:00
comfyanonymous cd84f47efe
Make it easier to debug nested tensors. (#15383) 2026-08-07 22:14:04 -04:00
Jukka Seppänen 344b43989e
Support asym w4a8_int (#15308)
* support asym w4a8_int

* Simplify

* Fixes
2026-08-07 08:32:57 -07:00
Jukka Seppänen 93cb5edb98
Fix audio carry to wrappers (#15390) 2026-08-07 08:30:21 -07:00
comfyanonymous 2340099d93
Fix full offload on minimax audio vae. (#15377) 2026-08-07 00:26:16 -04:00
Jukka Seppänen a464ac3358
feat: Support Wan-Animate2 (CORE-358) (#15362) 2026-08-06 21:08:16 -04:00
comfyanonymous 88fec4b605
Skip creating useless noise in res_multistep sampler. (#15339) 2026-08-06 18:17:44 -04:00
Jukka Seppänen bdcb886a47
Fix sampler issues for audio with minimax, support more samplers. (#15243) 2026-08-06 13:36:34 -07:00
endman100 563b98eefb
Fix MiniMax H3 latent noise mask sampling (#15322) 2026-08-05 23:47:13 -04:00
Jukka Seppänen 15989f87ca
Speedup LTX and Wan (#15138) 2026-08-05 21:15:48 -04:00
Jukka Seppänen bbda83647d
Support int8_convrot VAE (#15334) 2026-08-05 21:12:23 -04:00
rattus 40dbdc1bef
restore SDPA non-cudnn small attention bypass (#15296)
This is performance critical for ACE step.
2026-08-04 15:25:25 -04:00
rivadart 16e3f3034f
fix(minimax): cast raw parameters to input device in H3 VAEs (#15268) 2026-08-03 19:06:12 -04:00
comfyanonymous e377e26304
Don't pin too much memory on Linux systems with no swap partition. (#15266) 2026-08-03 16:29:47 -04:00
Jukka Seppänen 57500fc5bc
feat: Support MiniMax-H3 (CORE-375) (#15224) 2026-08-02 22:28:29 -04:00
Oliver Freyermuth b53e247c94
rename comfy/logging.py to comfy/internal_logging.py (#15231)
This avoids name collision (circular imports) for external custom nodes,
for which the comfy path is pushed into sys.path so Python's own logging module
is shadowed otherwise.

fixes: #15229
2026-08-02 16:20:27 -04:00
rattus 611f2a4e0f
fix pin registration priority (#15226)
This priority scheme was broken in the case where you have pin
registration exhaustion while loading a VBAR that gets a big evicition.
The weight would stay in the loaded set but inherit the MRU priority
against other workflow models WRT pin registration which leads to async
offload without pinning.

Fix by universally promiting active pin registration above workflow
pins without concern for the weights/weights-loaded split. This diverges
from the actual budgeting where the split still makes sense.
2026-08-02 08:16:06 -07:00
rattus 8084083d4b
comfy-aimdo 0.4.11 (#15215)
Changes:

Remove sequential scan hint
Prefer NVML pressure on windows
Add async malloc clamp option (unused by comfy so far)
Workaround AMD windows GPU virtual address space leak

The largest change is the NVML pressure, which works around a cuMemGetInfo
drift from actual VRAM in some circumstances.
2026-08-02 06:55:37 -04:00
comfyanonymous f06a187f50
Handle case where swap memory query fails on windows. (#15219) 2026-08-02 01:12:12 -04:00
comfyanonymous 532a16f3b9
Disable gradients on diffusion models. (#15218) 2026-08-01 20:15:51 -07:00
Jukka Seppänen 49a7422892
Support latent previews for nested latents (#15196) 2026-08-01 19:57:15 -04:00
comfyanonymous a1c421994c
Expand k, v when attention backend would fall back to math because gqa. (#15190) 2026-07-31 15:17:56 -07:00
rattus 7c806288d5
ops: apply the custom placeholder logic to Linux too (#15181)
Windows has proven this logic works for a long time and there are
corner cases where this materialization actual consumes real RAM
on linux.

Its not as bad as the original windows commit charge surge, but
its still a detectable transient leak. So simplify and unify.
2026-07-31 10:44:09 -07:00
rattus de5625a64a
Delay dynamic pin cleanup until model destruction (#15183) 2026-07-31 10:29:47 -07:00
blepping 831710d257
Don't assume sampler_function has a __name__ attribute in detail logging (#15179) 2026-07-31 19:12:17 +03:00