ComfyUI Node

MiniMax H3 Vision

The node that turns your reference shots into MiniMax H3's picky prompt format

By 1038lab·Created 24 days ago·Updated a day ago· 193
MiniMax H3 Vision
  • ref_images
  • ref_videos
  • ref_audios
  • VISION_CONTEXT
  • REF_IMAGES
global_image_modeSubject / Identity
global_video_modeComprehensive
_media_state
output_languageEnglish
provideropenai (gpt-5)
temperature0.20
max_tokens2048
custom_prompt_override

MiniMax H3 doesn't just take a prompt. It wants a structured, tagged screenplay - a six-part schema with <Picture N> reference tags, (S1)(S20) shorthand, dialogue wrapped in <d>[Language]... - and if you've ever tried to hand-write that for a video with three reference images, you know it's a miserable way to spend an evening. H3_Vision is the half of the ComfyUI-MiniMax-H3-Promptor pack that makes it survivable.

The node acts as your virtual director of photography. It takes the reference images, videos, and audio you want H3 to honor, sends them to a vision-capable LLM, and returns a structured JSON report that the pack's other node, H3_Promptor, then formats into the final H3 prompt. The trick is in the split: vision analysis is the expensive part (images in, tokens out), so it happens exactly once, up front. The writer node never touches the heavy media again, which is what keeps the API bill from bleeding you dry on every prompt revision.

How it works

Media arrives two ways: from upstream workflow nodes through the autogrow connectors (ref_images, ref_videos, ref_audios - up to 9 images, 3 videos, 3 audio streams), or by dragging files straight into a panel on the node's face. Videos get sampled down to four keyframes rather than fed whole. Everything is serialized and sent to whichever provider you've configured - OpenAI, Anthropic, Gemini, or a local Ollama / LM Studio / llama.cpp server - and the analysis is scoped by the mode you pick. Out the other side comes a JSON vision_context whose <Picture 1> tags stay in lockstep with the tensors flowing downstream, plus your reference images passed through untouched.

The inputs that actually matter

Most of the schema is set-and-forget, but three fields do the real work:

  • global_image_mode - which preset governs image analysis (Subject / Identity, Clothing, Environment, Action, Full, Raw). The prompts live in vision_prompts.json at the pack root, and you can add your own keys; they take effect after a restart.
  • global_video_mode - the same idea for video keyframes (Comprehensive, Motion, Audio-Visual Sync, Lighting, Camera, Character).
  • custom_prompt_override - a multiline box for surgically overriding one reference. <Picture 2>: focus entirely on the background beats a global setting any day.

After that: provider picks the model, temperature (default 0.2 - keep it low, this is a fact-finding job, not creative writing), max_tokens (2048 default), and output_language (English or Chinese).

Two outputs wire into the rest of the H3 workflow: VISION_CONTEXT (the JSON report, straight into H3_Promptor) and REF_IMAGES (the batched reference images, zero-deformation, into your MiniMax sampler).

Installing it

ComfyUI Manager → search "MiniMax H3-Promptor", or:

cd ComfyUI/custom_nodes
git clone https://github.com/1038lab/ComfyUI-MiniMax-H3-Promptor
pip install -r requirements.txt

Here's the thing that surprises people: the requirements are just requests. No model downloads, because this node doesn't ship or run H3 - it only writes the prompt that drives it. That means it needs an LLM with vision: cloud (add your API key under ComfyUI Settings → MiniMax H3) or local (Ollama's llama3.2-vision, not the plain text llama3.2, or a Qwen-VL via the companion ComfyUI-QwenVL pack). One more gotcha: this pack is written against ComfyUI's newer comfy_api node API, so it needs a current ComfyUI build - on an old install it loads and quietly does nothing.

Common issues

  • "No Provider Configured" in the dropdown - no key yet. Settings → MiniMax H3, fill in the provider and key.
  • Blank or garbled analysis on Ollama - you pointed the vision node at a text-only model. It needs a VLM.
  • Context overflow on local servers - launch with a real context window: ./llama-server -m model.gguf -c 8192 -ngl 99, and drop max_tokens to 1024–2048 for a serious speed-up locally.

And one thing outside this node's control: H3's open weights are licence-locked out of the US, EU, UK and Korea. This node writes the prompt either way - the hosted Hailuo API stays available everywhere, so the pack is equally useful whether you generate locally or in the cloud.

Category🧪AILab/🎬 MiniMax H3-Promptor

Inputs (11)

NameTypeDefaultDescription
global_image_modeCOMBOSubject / IdentityAnalysis focus mode for reference images (Subject, Clothing, Environment, Action, Full, Raw).
global_video_modeCOMBOComprehensiveAnalysis focus mode for reference videos (Comprehensive, Motion, Audio-Visual Sync, Lighting, Camera, Character).
_media_stateSTRING
output_languageoptCOMBOEnglishLanguage for the analysis output and subject descriptions.
provideroptCOMBOopenai (gpt-5)Vision-capable Multimodal LLM provider used to analyze images, videos, and audio.
temperatureoptFLOAT0.200–1Sampling temperature for vision analysis reasoning (0.0 = deterministic/strict, 1.0 = creative).
max_tokensoptINT2048256–8192Maximum token limit for vision analysis response.
ref_imagesoptCOMFY_AUTOGROW_V3
ref_videosoptCOMFY_AUTOGROW_V3
ref_audiosoptCOMFY_AUTOGROW_V3
custom_prompt_overrideoptSTRINGManual prompt override for specific reference tags. E.g.: <Picture 1>: ..., <Video 1>: ...

Outputs (2)

NameTypeDescription
VISION_CONTEXTSTRINGStructured JSON context containing media analysis and reference tags to connect to MiniMax H3 Promptor.
REF_IMAGESIMAGEBatched reference images passed downstream to MiniMax Sampler.