Nodes/IAMCCS-nodes/IAMCCS H3 R40 · Downstream Shot Lab Control
ComfyUI Node

IAMCCS H3 R40 · Downstream Shot Lab Control

The R40 knobs that can only touch delivery — never the native take

By IAMCCS·Created 11 months ago·Updated a day ago· 113
IAMCCS H3 R40 · Downstream Shot Lab Control
    • shot_lab
    • helper
    stage2_seed2026082801
    stage2_seed_stride1
    stage2_sigma_presetseedhunter_3
    stage2_lora_enabledfalse
    stage2_lora_name
    stage2_lora_strength0.60
    stage2_sparse_enabledfalse
    stage2_sparse_video_budget0.30
    stage2_sparse_denser_edgestrue

    R40 Shot Lab is built on a clean separation: the native take is sacred, and everything you might want to fiddle with afterwards is stage-2 delivery. IAMCCS_MiniMaxH3ShotLabControlR40 is the control panel for that second category. Everything on it is a "Stage 2 ·" widget, and the whole node exists to guarantee that changing these settings never invalidates the expensive native work - the cached scout candidates, the selected native decode, and its saved H3 audio all stay put.

    Why does that matter? In the R40 model, the native decode and its audio are the one expensive, hard-to-repeat artifact. The refine pass that sharpens and upscales it is comparatively cheap to rerun. So the pipeline isolates every delivery knob into a node whose output is consumed only by the stage-2 path. Change the refine seed all day and you're re-running minutes of stage-2 work, not re-rolling the whole shot. That's the caching architecture made tangible: one node whose job description is "rerolling me is cheap."

    It outputs a single shot_lab object (plus a helper string that explains the node's own rules). That object is a small schema-versioned contract - iamccs.minimax_h3.r40.shot_lab - which is exactly the sort of thing you don't hand-type. You build it with this node and feed it to PixelRefineR40.

    The widgets, and which matter

    • stage2_seed and stage2_seed_stride - the refine reroll seed and how it steps per segment. Default seed is a big 2026082801-looking number; this is the "try again with a different refine" knob.
    • stage2_sigma_preset - the refine schedule: seedhunter_3, seedhunter_4, seedhunter_5, or authored_scheduler. Think "how aggressive is the refine denoise."
    • stage2_lora_enabled, stage2_lora_name, stage2_lora_strength - an optional refine LoRA. The author's own tooltip is the best summary and worth quoting: "Delivery/refine LoRA only. It never changes the selected native candidate or its saved H3 audio."
    • stage2_sparse_enabled, stage2_sparse_video_budget, stage2_sparse_denser_edges - optional sparse-attention for the refine pass. Sparse attention is the faster/lower-VRAM path that trades some detail or prompt adherence; off is the quality-safe default, and the budget (0.05–1.0, default 0.3) controls how aggressive the sparsity gets.

    For a beginner the two that actually do visible things are stage2_seed (reroll the refine until faces/text clean up) and stage2_sigma_preset (bump from seedhunter_3 to a stronger schedule if the refine looks too timid).

    The catches

    The feature is also the trap. Everything here is stage-2-only by contract - the node builds a labeled object that downstream nodes interpret - but if you wire shot_lab somewhere it shouldn't go, nothing stops you from misusing it. Keep it on the stage-2 path.

    Sparse mode is the other one. Turn on stage2_sparse_enabled and the code reaches out to an external H3SparseAttention node from the H3-Optimizations custom node pack. If that pack isn't installed, you get a loud, specific error telling you to disable sparse mode or install H3-Optimizations. It's not a silent failure, but it is an extra dependency most people won't know they need until they tick that box. If you don't need the VRAM savings, leave sparse off.

    Install

    Part of IAMCCS-nodes:

    cd ComfyUI/custom_nodes
    git clone https://github.com/IAMCCS/IAMCCS-nodes
    

    or via ComfyUI Manager (search "IAMCCS"), restart. Current ComfyUI (≥ 3.x), Python ≥ 3.12, PyTorch ≥ 2.8, plus MiniMax H3 and its VAEs - and check the H3 licence, which excludes the US, EU, UK and Korea. Install H3-Optimizations only if you actually want sparse attention.

    CategoryIAMCCS/MiniMax H3/R40 Shot Lab

    Inputs (9)

    NameTypeDefaultDescription
    stage2_seedINT20260828010–18446744073709550000
    stage2_seed_strideINT10–18446744073709550000
    stage2_sigma_presetCOMBOseedhunter_34 options: seedhunter_3, seedhunter_4, seedhunter_5, authored_scheduler
    stage2_lora_enabledBOOLEANfalse
    stage2_lora_nameCOMBODelivery/refine LoRA only. It never changes the selected native candidate or its saved H3 audio.
    stage2_lora_strengthFLOAT0.60-2–2
    stage2_sparse_enabledBOOLEANfalse
    stage2_sparse_video_budgetFLOAT0.300.05–1
    stage2_sparse_denser_edgesBOOLEANtrue

    Outputs (2)

    NameTypeDescription
    shot_labIAMCCS_H3_R40_SHOT_LAB
    helperSTRING