MiniMax H3 Spectrum (Experimental)
Forecast MiniMax H3's transformer output to skip expensive steps
- model
- model
UC_MiniMaxH3Spectrum is the experimental sibling of the pack's H3 cache node, and it's weirder and more ambitious. Instead of reusing a cached result when consecutive steps are similar, it forecasts the complete post-transformer features with a Chebyshev polynomial model, runs the real transformer on a schedule of actual evaluations, and blends the two - all while keeping native output reconstruction intact. In plain terms: it watches how H3's features evolve across steps, fits a cheap model to that history, and predicts steps the 33B transformer never has to compute. The label says Experimental for a reason.
It's part of silveroxides/ComfyUI-UtilsCollection. If you're new to this, be honest with yourself about where you are: this is a researcher's tuning node with fifteen inputs, not a "click for free speed" button. The right way to approach it is to set everything to defaults and only touch one or two knobs, or to use it in forced_actual mode to measure overhead first.
The knobs that matter
- execution_mode -
spectrum(default) forecasts on eligible steps;forced_actualruns everything for real, which is your benchmark mode for measuring patch overhead with zero forecasts. - degree (default 1) - Chebyshev polynomial degree. Degree 1 enables the first-forecast bootstrap; higher degrees fit more expressive curves but disable it. Start at 1.
- ridge_lambda (default 0.1) - regularization that stabilizes the history fit; raise it if the forecast goes unstable.
- window_size (default 2) - the initial interval between actual transformer evaluations; flex_window (0.75) grows that interval after each refresh, so the model gets bolder over time.
- warmup_steps / tail_actual_steps (defaults 1/1) - the first and last solver steps always run the real transformer. Leave them.
- video_blend_weight (default 0.5) - how much of the output is pure spectral prediction vs local linear prediction. 1 = all spectral, 0 = none.
- audio_blend_weight (default 0) - spectral share for audio rows, kept at 0 by default because direct spectral mixing of audio can hurt continuity.
- offline_smoothing_replay (default on) - a two-pass smoothing replay that protects H3 audio continuity. It's there for a reason; don't turn it off on a whim.
- history_storage / offline_archive_storage -
system_ramorvramfor the feature history and replay anchors.system_ramis the default and the safe choice on tight VRAM. - debug - logs forecast decisions, timing, retained memory, and a run summary. Turn it on for exactly one run to see what's happening.
Outputs
- model - the patched clone, fed to your sampler. Nothing else.
Installing it
Via the pack:
- ComfyUI Manager: search "ComfyUI-UtilsCollection".
- Or:
cd ComfyUI/custom_nodes
git clone https://github.com/silveroxides/ComfyUI-UtilsCollection
Restart ComfyUI. No extra downloads beyond H3 itself (license-gated; US/EU/UK/Korea excluded).
Gotchas
This is a speed experiment, and speed experiments on a 33B model have consequences: turn on debug, run one spectrum pass and one forced_actual pass on the same seed, and compare before you trust it. If the forecast destabilizes, raise ridge_lambda or reduce video_blend_weight rather than throwing more degree at it. And if you just want a safer speedup, the plain UC_MiniMaxH3Cache node is the conservative option - Spectrum is for people who want to squeeze further and are willing to validate the output. The audio defaults are deliberately conservative because H3 audio is easy to break; leave audio_blend_weight at 0 unless you've confirmed the audio survives.
Inputs (16)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | — | |
| execution_mode | COMBO | spectrum | Spectrum forecasts eligible steps; forced_actual measures patch overhead without forecasts. |
| degree | INT | 11–16 | Chebyshev polynomial degree. Values other than 1 disable first-forecast bootstrap. |
| ridge_lambda | FLOAT | 0.100–10 | Regularization that stabilizes the history fit. |
| window_size | FLOAT | 2.001–16 | Initial interval between actual transformer evaluations. |
| flex_window | FLOAT | 0.750–8 | Amount added to the actual-evaluation interval after each refresh. |
| warmup_steps | INT | 10–64 | Initial solver steps that always run the transformer. Values above 1 disable first-forecast bootstrap. |
| tail_actual_steps | INT | 10–64 | Final solver steps that always run the transformer. |
| max_history | INT | 82–64 | Maximum actual post-transformer features retained for fitting. |
| video_blend_weight | FLOAT | 0.500–1 | Video spectral share; 1 uses pure spectral prediction and 0 uses local linear prediction. |
| audio_blend_weight | FLOAT | 0.000–1 | Audio spectral share; default 0 avoids direct spectral mixing of audio rows. |
| history_storage | COMBO | system_ram | Device used for bounded causal feature history. |
| bootstrap_first_forecast | BOOLEAN | true | Forecast step 1 from step 0 only when degree is 1 and warmup is at most 1. |
| offline_smoothing_replay | BOOLEAN | true | Run optional two-pass smoothing replay to protect H3 audio continuity. |
| offline_archive_storage | COMBO | system_ram | Device used for replay anchors retained through both passes. |
| debug | BOOLEAN | false | Log forecast decisions, timing, retained memory, and run summary. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| model | MODEL | — |