ComfyUI Node

MiniMax H3 Aicg 分段采样器

One sampler node that also hands you the sampler and the sigmas

By JGRFW·Created about a month ago·Updated about 16 hours ago· 309
MiniMax H3 Aicg 分段采样器
  • model
  • h3_context
  • sampler
  • sigmas
  • sampling_plan
  • vae
  • audio_vae
  • segments
  • sampler
  • sigmas
◄sampler_nameer_sde►
◄schedulersimple►
◄steps25►
◄denoise1.00►
◄seed0►
◄segment_seedsdefault►
◄preview_enabledtrue►
◄preview_max_resolution360►
◄preview_jpeg_quality100►
◄preview_suppress_defaulttrue►
◄preview_frames277►
◄preview_fps12►
◄tiny_vaenone►

In a normal ComfyUI graph, sampling needs three things you assemble by hand: a sampler (KSamplerSelect), a noise schedule (BasicScheduler), and something that runs them over latents. Fine for a single image. Annoying the moment you have a segment chain that wants the same schedule in two places - inside the segment render, and in the pack's global sequence settings - because now you maintain two copies of "steps 25, simple, denoise 1.0" and forget to update one.

「MiniMax H3 Aicg 分段采样器」 collapses that. Sampler name, scheduler, steps and denoise are widgets, it builds the objects for you, runs the segment chain, and - the useful bit - exposes the resolved sampler and sigmas as outputs so one node drives everything downstream.

What it does under the hood

Built-in path first: the sampler name resolves through ComfyUI's own sampler list, and the sigmas are calculated from the model's model_sampling with the chosen scheduler and step count. Denoise isn't a bolted-on extra - when denoise is below 1.0 the node builds a longer schedule (steps ÷ denoise) and takes the last steps + 1 sigmas off the end, the same truncation stock ComfyUI uses. Denoise 0.5 at 25 steps really does mean "start halfway down the schedule".

Then it hands both objects to the pack's segment render chain, which samples your h3_context plan with MotionContext-style latent continuity across segments. So it isn't just a widget bundle - it's the sampling step. Feed segments into 分段解码 to see it, or 分段二采 to refine per segment.

Connect something to the optional sampler or sigmas inputs and those win outright, with the widgets going inert. That's the point of the node - it's what lets DMAD's sampler and sigmas drive the chain, per the v1.1.4 notes - but it's also the trap: after you wire an external pair, changing steps or denoise does nothing, and nothing warns you.

The settings a beginner should touch

Defaults are er_sde / simple / 25 steps / denoise 1.0, and they're not the SDXL-era dpmpp_2m + karras you've probably got muscle memory for. Karras concentrates denoising effort in the middle of the trajectory, which is a correction on a curved DDPM path and a distortion on a straighter flow-matching one - so if you go swapping schedulers because something looks overcooked, try a flatter schedule before blaming the model.

segment_seeds is a plain string and smarter than it looks. default (the literal word, used alone) applies the main seed to every segment. A single number broadcasts to all. A comma-separated list assigns per segment, and any shortfall gets filled with the main seed - handy when you want segment 1 pinned and the rest to breathe. More numbers than segments is an error, not a silent truncation.

Preview is controlled by preview_enabled and friends. Worth knowing: it loads KJNodes' ModelPreviewOverrideKJ class out of custom_nodes/comfyui-kjnodes/nodes/preview_override_node.py. No KJNodes at that exact folder name, no preview - it logs a Chinese line and carries on rather than failing. Drop taeh3.safetensors into vae_approx and tiny_vae picks it up for real RGB; preview_frames (277 default) decides still versus animation at preview_fps.

Wiring the outputs

segments goes to the decode or second-pass refine node. sampler and sigmas are meant for the external sampler/sigmas inputs on 「MiniMax H3 Aicg 无限段落顺序生成(全局设置)」, so the infinite-segment pass uses exactly the schedule you tuned here instead of its own private copy. Three outputs, one source of truth. That's a genuinely good design for a pack whose whole job is chaining long sequences.

Install

cd ComfyUI/custom_nodes
git clone https://github.com/JGRFW/comfyui-AICG3D
cd comfyui-AICG3D && pip install -r requirements.txt

Or search AICG3D / MiniMax H3 in ComfyUI Manager and restart. The pack's requirements are shallow (imageio-ffmpeg, psutil, requests, aiohttp), and FFmpeg is only needed by the final-combine node in workflow 13, not by sampling. Two optional extras worth naming: ComfyUI-KJNodes if you want the in-node preview, and ComfyUI-DMAD if you're loading the shipped 13 workflow, which uses DMADSampler/DMADSigmas for the four-step accelerated path.

Problems you'll actually hit

The most common confusion is a stale run: you changed steps from 25 to 8 and nothing moved. Look for a wire on sampler or sigmas - the optional inputs override everything, silently.

A boring but real one: H3's community licence excludes the US, EU, UK and Korea from its Applicable Territory, and the exclusion reaches outputs, not just weights. If you're in one of those regions that's an upstream problem this pack can't solve - the hosted Hailuo API is the licensed route there.

And a filing quirk: the node lives in the 提示词与 Skill category despite doing the sampling. If you can't find it under a workflow category, that's the pack's taxonomy, not a broken install.

CategoryAICG3D/提示词与 Skill

Inputs (20)

NameTypeDefaultDescription
modelMODEL—
h3_contextMINIMAX_H3_CONTEXT—
sampler_nameCOMBOer_sde44 options: euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, heunpp2, +38
schedulerCOMBOsimple9 options: simple, sgm_uniform, karras, exponential, ddim_uniform, beta, +3
stepsINT251–10000—
denoiseFLOAT1.000–1—
seedINT00–4294967295—
segment_seedsSTRINGdefault—
preview_enabledBOOLEANtrue直接在分段采样节点内调用 KJNodes 的模型预览,不再额外接 Model Preview Override 节点。
preview_max_resolutionINT3600–8192预览图最长边;0 表示跟随采样分辨率。
preview_jpeg_qualityINT10030–100预览图 JPEG 质量。
preview_suppress_defaultBOOLEANtrue隐藏 ComfyUI 默认采样预览,只显示这个节点的预览面板。
preview_framesINT2771–1024每一步抽取的预览帧数;1 为单图,大于 1 为动态预览。
preview_fpsINT121–60动态预览播放帧率。
tiny_vaeCOMBOnoneKJNodes 预览使用的 tiny VAE;选择 taeh3.safetensors 可显示真实 RGB 预览。
sampleroptSAMPLER—
sigmasoptSIGMAS—
sampling_planoptMINIMAX_H3_SAMPLING_PLAN—
vaeoptVAE—
audio_vaeoptVAE—

Outputs (3)

NameTypeDescription
segmentsMINIMAX_H3_SEGMENTS—
samplerSAMPLER—
sigmasSIGMAS—