Nugget H3 EasyR2V β€” Prompt Enhancer & Full Workflow

Why spend 30 minutes doing something when you can spend 2.5 weeks making a tool to automate it. That's basically the whole reason this exists.

I wanted an easy to use workflow for us simple folk who want to do Ref2V on MiniMax H3 but keep running into troubles with the model understanding me. A good prompt does 80–90% of the work with H3 R2V β€” so instead of writing them by hand every time, this workflow writes them for you.

Think of it as "Ref2Video for dummies". But it's not just limited to that.


What it does

  • Scans your video (if you're using one) to caption it and transcribe the audio
  • Captions all your images - so it also works as a pure image-to-video workflow
  • Loads a small LLM of your choice and writes your H3 R2V prompt in the correct format with your stated intent (user prompt)
  • If you're on the Full workflow, it generates the video too

What it does NOT do

  • Be creative for you - The current WF is only setup to do the prompt formatting, it is not able to generate new ideas for you
  • It cannot perform magic - You are still limited to what the H3 model can and cannot do. Complex scenes are still very difficult

Saving Time

  • If your video doesn't change, a second run doesn't trigger a new video transcription (If you have "FIXED SEED")
  • If your images and user prompt don't change, it doesn't write a new prompt β€” so you can re-run on a new seed to test without paying the LLM cost every time (If you have "FIXED SEED")

Two workflows

File What it does
Nugget_H3_EasyR2V_Full_WF_v03.json The full thing β€” transcribe + prompt + generate video
Nugget_H3_EasyR2V_Prompter_Only_v03.json Just writes the H3 prompt. Copy it out, or wire it into your own H3 graph

Prompter-only is handy if you've already got your own H3 setup dialled in and just want a better prompt without ripping your workflow apart.

Full workflow:

full workflow view

Prompter only:

prompter only view


Examples

Character replacement β€” swap the person in a clip for one from your reference images:

example char replacement setup

Side by side, original vs replaced:

Background + character replacement β€” swap both in one go:

Voice line + character replacement β€” new person, new dialogue:


Setup

Both workflow files have a big START HERE β€” Downloads & Setup markdown note pinned inside them, with every model link, folder path and install step. Rather than duplicate it all here, just open the workflow and read the note β€” it's more accurate than a copy of it would be.

The short version:

  • Custom nodes: ComfyUI-Nugget, ComfyUI-KJNodes, and (Full workflow only) ComfyUI-PlagueKind-Nodes
  • Run the Nugget install script if you want dialogue transcribed β€” it installs faster-whisper into ComfyUI's own Python. A normal pip install goes into the wrong interpreter and it will still say the package is missing
  • H3 models from πŸ€— Comfy-Org/MiniMax-H3
  • Prompt enhancer model β€” start with Qwen3-VL 8B fp8_scaled. Drop to nvfp4 on 12 GB cards

If the file won't open in ComfyUI, a node pack is missing. Install it, restart, reopen. Bypassing won't help.


Tips for good character replacement

  • Don't expect miracles. - It is still H3 model and sometimes tempermental. Check your enhanced prompt and consider rolling again if it is not right.

  • H3 is a tool, you're the one using it. If you don't specify emotions, expect expressionless results. This current setup will only do what you intend for it to do. Slop prompt in, slop video out

  • Limit the resolution and length. There seems to be an arbitrary context window that may be linked to your specs, so the higher higher res/longer time your input/outputs. Keep it smaller and your success rate goes up

  • If the video is easy, replacement should be easy too. H3 has a quirk though β€” if the original person and the new person look too similar, it sometimes converges back to the original. A prompt won't always fix that. If you hit it, consider changing the person to a intermediate step (faceless green person). The new body/face will transfer over better. Alternatively you can look into Sam3 character replacement method.

  • More than one person in the scene? Describe the scene properly. replace the man wearing white shorts with the man in <picture 1> beats replace the man with <picture 1> every time.

  • Complex scenes? It will be very difficult (I've tried), scenes with too many people, too many cuts, characters obstructed are very difficult for the model to properly identify and swap.

  • Give the LLM some context. A one-liner in the user prompt like <video 1> is a video of two girls eating a cup of chocolate ice cream really helps the LLM understand what it's looking at. Especially useful with multiple scenes

  • Use 24 FPS videos you can trim, crop and edit the FPS before you send it to the WF. I have a (unfortunately a bit buggy at times) tool for that. Alternatively you can use the VHS Load Video nodes

  • Use Character Sheets through my testing, I have found that replacing a character is much easier when a character sheet is supplied. Consider checking out my character generator to make a 360 orbit and generate a full sheet or individual shots

  • Test! Test! Test!. Sometimes less is more, sometimes more is more when it comes to the user prompt. You'll get a feel for it, tweak it until you get your desired results.


Re-running cheaply

Keep both seed widgets on fixed. If nothing upstream has changed, ComfyUI skips the transcriber and the prompt enhancer entirely β€” only the sampler re-runs. Change the sampler seed for a new take, don't touch the others.

Set the transcriber or enhancer seed to randomize and you'll re-transcribe the whole video every queue for nothing.

To skip the video entirely, bypass Load source video (Ctrl+B). Prompt is written from the images and your text alone.


If this has helped you, consider chucking a few dollars my way. Any tips help with the power bills. Thank you.

By C_Nugget

Downloads last month
-
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support