Nodes/SpicyAPI/MiniMax H3 LoRA · Reference to Video
ComfyUI Node

MiniMax H3 LoRA · Reference to Video

Nine Images, Three Clips and Your Own LoRAs in One Shot

By spicyapi-ai·Created 21 days ago·Updated 2 days ago· 2
MiniMax H3 LoRA · Reference to Video
  • reference_image_urls
  • reference_video_urls
  • reference_audio_urls
  • loras
  • video
  • task id
◄prompt►
◄aspect_ratio16:9►
◄resolution480p►
◄duration_seconds5►
◄seed0►

Reference-to-video is the answer to the problem character-consistency docs keep circling: you have a handful of images of a character, a location and a prop, and you want them all in one moving shot without the model reinventing anyone's face. This node hands MiniMax H3 up to nine images, three video clips and three audio clips, plus up to three of your own LoRAs, and asks it for a 3-to-15 second shot with stereo sound.

What it actually is

MiniMax H3 is the Shanghai lab's 33B omni-modal video model - the one behind the closed Hailuo service, opened to weights in August 2026 and the first credible open-weight answer to Veo's welded-in audio. This node does not run H3 on your machine. It calls SpicyAPI, which runs it on their GPUs and hands back a VIDEO. Nothing to download, no VRAM check, works on a laptop.

The "LoRA" in the name is the point of this variant: you can attach your own H3-trained weights by URL and they get applied server-side on top of the base model. It is priced from about $0.06 per second of output, with a per-reference charge on top for each image and audio clip, and reference video seconds billed exactly like output seconds.

How it works

The node is generated from the model's published input schema, so the widgets you see are literally what the API accepts. When you hit Run, it uploads your reference media, takes a quote, creates a task under an idempotency key, polls until the job finishes, then downloads the MP4 and converts it to a ComfyUI VIDEO. Same image bytes re-uploaded within 12 hours reuse the previous upload, so tweaking your prompt does not re-send the same nine pictures.

The inputs that matter

  • prompt (required) - the one place beginners stumble. Refer to your references by number: "image 1 walks through the doorway from video 2, ambient Audio: rain on metal". The author's own tooltip says to describe the shot the references should produce, sound included.
  • duration_seconds - 3 to 15, default 5. resolution starts at 480p; aspect_ratio defaults to 16:9. Loosen the resolution until you like the shot - a 15-second 1080p run is where the bill gets real.
  • reference_image_urls / reference_video_urls / reference_audio_urls - autogrow socket groups. Connect one and a new free socket appears next to it, up to nine images, three clips (15 seconds total) and three audio clips.
  • loras - takes the loras output of a SpicyAPI LoRA node (a direct .safetensors URL plus a strength, chainable). Up to three.
  • seed - same seed and settings, same result.

Outputs are video and a task id string, which is what support asks for if a run dies.

Installing it

ComfyUI Manager → search SpicyAPI, install, restart. Or:

cd ComfyUI/custom_nodes
git clone https://github.com/spicyapi-ai/comfyui-spicyapi

There are no Python dependencies to resolve - the pack installs nothing and uses what ComfyUI already ships. Then paste a key from spicyapi.ai/console/keys into Settings > SpicyAPI and restart once so the node list comes from your account. On a headless box, set SPICY_API_KEY instead. Wire the video output into Save Video.

Where people get burned

The three unavoidable ones. Cost: every run is billed, and reference images and reference video seconds add line items, so quote-check a 1080p 15-second attempt before you queue six of them. Set Max cost per run in Settings and the node refuses anything above it before charging a cent. Cancelling the run in ComfyUI stops waiting, not the job - the task keeps generating server-side, is charged if it succeeds, and lands in your console for up to 14 days. And seeds default to fixed on purpose, because a billed node that silently re-rolls on re-queue would be rude; switch control after generate to randomize when you want a new take.

CategorySpicyAPI/Video/MiniMax

Inputs (9)

NameTypeDefaultDescription
promptSTRINGRefer to the references by number and describe the shot they should produce, including the sound.
aspect_ratioCOMBO16:9Output aspect ratio.
resolutionCOMBO480pOutput resolution.
duration_secondsINT53–15Requested output length in whole seconds, from 3 to 15.
seedINT00–2147483647Same seed and settings, same result. Set 'control after generate' to randomize to get a new result on every run; every run is billed.
reference_image_urlsoptCOMFY_AUTOGROW_V3Reference images, up to nine. Each one adds a per-reference charge.
reference_video_urlsoptCOMFY_AUTOGROW_V3Reference videos, up to three and 15 seconds in total. Their seconds are billed like output seconds.
reference_audio_urlsoptCOMFY_AUTOGROW_V3Reference audio clips, up to three. Each one adds a per-reference charge.
lorasoptSPICY_LORASUp to three LoRA weight files trained for MiniMax H3, each with its own strength.

Outputs (2)

NameTypeDescription
videoVIDEO—
task idSTRINGThe SpicyAPI task id, for the console logs or support.