Nodes/ComfyUI-MiniMax-H3-Image-Studio/MiniMax H3 Image • Reference Edit
ComfyUI Node

MiniMax H3 Image • Reference Edit

Edit H3 with up to nine reference pictures

By astropuzzo·Created 22 days ago·Updated 6 days ago· 123
MiniMax H3 Image • Reference Edit
  • clip
  • vae
  • source_image
  • reference_image_2
  • reference_image_3
  • reference_image_4
  • reference_image_5
  • reference_image_6
  • reference_image_7
  • reference_image_8
  • reference_image_9
  • positive
  • h3_latent
  • fitted_source
  • requested_frames
  • image_prompt
  • run_info
edit_instruction
width1344
height768
quality_profilerecommended | 5 frames
source_fidelity0.60
source_fitcrop_center
reference_detailmax_identity_2048
optimize_for_stilltrue

H3ReferenceEditPrepare - "MiniMax H3 Image • Reference Edit" - is the flagship of this pack, and it's the node that makes H3 feel like a proper image editor instead of a video model in disguise. The idea is REF2VA: you feed H3 an ordered stack of pictures, tell it who's responsible for what, and it rebuilds the image from those references. "Keep the identity, face, and environment from this one, take the pose from that one" - that's the whole workflow.

Ordered references, by number

The ordering matters, and the node enforces it cleanly. source_image is <Picture 1>. The optional reference_image_2 through reference_image_9 sockets are <Picture 2> through <Picture 9>. Each socket represents exactly one picture - if an upstream node sends an IMAGE batch, only its first image is used, so the <Picture N> numbering stays stable even when you're wiring from a batch source. Then in edit_instruction you refer to them by number:

Keep the identity, face, hair, clothing, camera, and environment from <Picture 1>.
Use the body pose and limb positions from <Picture 2>. The final pose must visibly match <Picture 2>.

That prompt template isn't a suggestion - the pack's prompt optimization reads explicit <Picture N> assignments and gives them priority. source_fidelity (default 0.6) only adjusts the preservation wording for Picture 1 traits the instruction doesn't mention. It is not denoise strength and doesn't touch the sigma schedule. For big pose, framing, or composition transfers, the README suggests starting around 0.50–0.60; higher values favor an unchanged Picture 1.

Inputs that matter

Other inputs worth knowing: quality_profile (one frame removes temporal competition and is recommended with the experimental H3 image VAE; use 5+ frames with the standard video VAE), reference_detail (max_identity_2048 is the default - each reference keeps more of its own resolution before encoding, at higher memory cost; match_generation_area is faster), source_fit for the preview canvas, and optimize_for_still to wrap the instruction in a locked-camera, reference-preserving prompt.

Outputs are the standard prepare-node set: positive conditioning for the sampler, h3_latent (the packed audio/video latent prepared for reference-guided regeneration), fitted_source preview, requested_frames for Exact Frame Decode, image_prompt (the final ordered-reference prompt), and run_info (reference count, packet, checkpoint expectations). Then the pipeline continues the usual way: sample, decode, select a frame.

Tuning notes from the changelog

Two behavior notes from the changelog that explain how this node has been tuned. Earlier versions broadly froze pose, composition, and geometry in the preservation wording, which made pose transfers fail - current versions assign explicit roles and let unmentioned traits float. And in direct pose-transfer testing, a community detail adapter at full strength over-preserved Picture 1 and suppressed the requested pose; the bundled workflows set it to 0.5. If a pose transfer isn't landing, that's the first knob to check, not source_fidelity.

One more thing: state the role of every connected picture explicitly. The node optimizes wording, but it can't guess what a connected socket is supposed to contribute, and an unmentioned reference is a coin flip.

Install

Install is the pack: ComfyUI Manager (search MiniMax H3 Image Studio) or git clone https://github.com/astropuzzo/ComfyUI-MiniMax-H3-Image-Studio.git into custom_nodes, then restart. Requires ComfyUI 0.30.0+ and the H3 models - note that REF2VA wants a REF2VA-capable checkpoint, and each reference you connect costs encoding time and memory.

CategoryMiniMax H3/Image Studio

Inputs (19)

NameTypeDefaultDescription
clipCLIPMiniMax H3 Qwen text/vision encoder.
vaeVAEMiniMax H3 video VAE, or the experimental H3 image VAE for the one-frame profile.
source_imageIMAGEPrimary REF2VA reference, addressed as <Picture 1> in the prompt.
edit_instructionSTRINGDescribe the final image and refer to inputs explicitly as <Picture 1>, <Picture 2>, and so on.
widthINT134432–16384Generation canvas width; references retain their own aspect ratio before encoding.
heightINT76832–16384Generation canvas height; references retain their own aspect ratio before encoding.
quality_profileCOMBOrecommended | 5 framesOne frame removes temporal competition and is recommended with the experimental H3 image VAE. Use 5 or more frames with the standard H3 video VAE.
source_fidelityFLOAT0.600–1Controls preservation wording for unmentioned Picture 1 traits. Explicit target instructions always take priority. This is NOT diffusion denoise strength and does not alter the sigma schedule.
source_fitCOMBOcrop_centerHow the primary source preview is fitted to the generation canvas.
reference_detailCOMBOmax_identity_2048How much source resolution each REF2VA reference keeps before VAE encoding. max_identity_2048 may preserve more identity detail at higher memory cost.
optimize_for_stillBOOLEANtrueAdds a locked-camera still-image prompt wrapper and reference-preservation language. Sampling settings are unchanged.
reference_image_2optIMAGEOptional <Picture 2> reference. Different dimensions are supported.
reference_image_3optIMAGEOptional <Picture 3> reference.
reference_image_4optIMAGEOptional <Picture 4> reference.
reference_image_5optIMAGEOptional <Picture 5> reference.
reference_image_6optIMAGEOptional <Picture 6> reference.
reference_image_7optIMAGEOptional <Picture 7> reference.
reference_image_8optIMAGEOptional <Picture 8> reference.
reference_image_9optIMAGEOptional <Picture 9> reference.

Outputs (6)

NameTypeDescription
positiveCONDITIONINGPositive REF2VA reference-edit conditioning for the sampler's positive input.
h3_latentLATENTPacked H3 audio/video latent prepared for reference-guided regeneration.
fitted_sourceIMAGEPrimary source fitted to the output canvas for preview and comparison.
requested_framesINTNumber of image frames that Exact Frame Decode should preserve and decode.
image_promptSTRINGFinal ordered-reference prompt after optional preservation optimization.
run_infoSTRINGReference count, temporal packet, checkpoint expectations and recommended selection strategy.