Nodes/MiniMax H3 Audio T8/MiniMax H3 Environment Audit / 环境兼容审计 (Advanced)
ComfyUI Node

MiniMax H3 Environment Audit / 环境兼容审计 (Advanced)

Diagnose your H3 install before you blame the workflow

By T8mars·Created 20 days ago·Updated a day ago· 807
MiniMax H3 Environment Audit / 环境兼容审计 (Advanced)
  • model
  • positive
  • no_known_blocker
  • status
  • report_json
workload_profilegeneral
width736
height416
length124
model_familyauto_unknown
model_precisionauto_unknown
attention_backendauto_detect
cache_backendauto_detect
decode_moderegular
dynamic_vram_modeauto_detect
reference_media_count0
middle_keyframe_count0
minimum_current_headroom_mib512
enforcementreport_only

This is the "is my environment even compatible" node, and it's the one I'd point anyone at before they start tweaking sampling parameters. It's a read-only audit of your current ComfyUI H3 setup: the H3 core, known fix ancestry, VAE chunking and tiled-decode contracts, wrapper ownership, DynamicVRAM, and - the part that saves the most hours - a requested workload estimate. It never patches, unloads, downloads, runs an attention kernel, or changes a single setting. You drag it in, describe the job, read the report.

Why it exists in this pack: MiniMax H3 on ComfyUI is young and your stack can quietly be broken in ways that look like a model problem. The canonical case the README documents is KJNodes' Sage Attention patch throwing sageattention is not new enough ... or could not determine CUDA architecture. The fix everyone gives is "update Sage", but that's usually wrong - the real culprit is a wheel built for a different Torch/CUDA/Python/GPU-architecture combo. "Installed latest" doesn't mean compatible. This node is the pack's way of making that mismatch visible instead of guessable.

When you select the Sage backend it preserves the exact package/core import result, the six core symbols KJNodes requires, and the CUDA-architecture probe evidence - the wheel's reported smXX versus your actual GPU. That's the difference between "my Sage is broken" and "my Sage wheel targets sm_120 but my card is sm_100".

The inputs are mostly a workload description: workload_profile (general, t2va, ref2va, hybrid, long_video, multikeyframe, speech), width/height (defaults 736×416, 32-aligned steps), length (default 124 frames), model_family/model_precision, attention_backend, cache_backend, decode_mode, dynamic_vram_mode, plus reference_media_count and middle_keyframe_count - because H3's VRAM and sequence length grow with every reference you add. minimum_current_headroom_mib (default 512) is the reserve gate the pack uses in its own claims, and enforcement flips between report_only and block_known_unsafe - the latter actually raising an error if a blocker is found, which is useful if you want it to stop a fragile run before it OOMs. The optional model and positive inputs let it look at the real tensors rather than your typed guess.

Outputs: no_known_blocker (BOOLEAN), a human status string, and report_json for the report-watchers. It's an output node, so it ends a branch.

The honest framing to remember: this is a diagnostic, not a guarantee. The workload estimate is a memory-planning proxy - model weights, full attention activations, VAE/CLIP, VBAR and fragmentation are not all included, so "no known blocker" isn't "16GB safe." The pack's own rule is to pass a small job first and climb. Use this node to answer "is my Sage real, is my VAE contract right, is this canvas asking for the impossible" - and then still test.

Install: ComfyUI Manager → search "MiniMax H3 Audio T8", or:

cd ComfyUI/custom_nodes
git clone https://github.com/T8mars/comfyui-minimax-h3-audio-T8

Restart ComfyUI. No forced pip deps, no downloads - the audit is pure Python reflection and report generation. And a reminder that applies to all of H3: the model weights themselves carry the MiniMax H3 Community License, which excludes the US, EU, UK and Korea from the applicable territory, no matter how clean your environment audit looks.

CategoryT8/MiniMax H3/Models/Experimental

Inputs (16)

NameTypeDefaultDescription
workload_profileCOMBOgeneral7 options: general, t2va, ref2va, hybrid, long_video, multikeyframe, +1
widthINT73632–16384
heightINT41632–16384
lengthINT1245–3600
model_familyCOMBOauto_unknown3 options: auto_unknown, fl2va, ref2va
model_precisionCOMBOauto_unknown6 options: auto_unknown, bf16_fp16, int8_convrot, fp8, nvfp4, other_quant
attention_backendCOMBOauto_detect4 options: auto_detect, stock, sage_attention, other_custom
cache_backendCOMBOauto_detect6 options: auto_detect, none, t8_h3_block_cache, step_cache, spectrum, other_custom
decode_modeCOMBOregular2 options: regular, tiled
dynamic_vram_modeCOMBOauto_detect3 options: auto_detect, enabled, disabled
reference_media_countINT00–32
middle_keyframe_countINT00–32
minimum_current_headroom_mibFLOAT5120–65536
enforcementCOMBOreport_only2 options: report_only, block_known_unsafe
modeloptMODEL
positiveoptCONDITIONING

Outputs (3)

NameTypeDescription
no_known_blockerBOOLEAN
statusSTRING
report_jsonSTRING