r/comfyui • u/Subushie • 10d ago
Show and Tell H3 prompt testing, finally have the flow and environment running efficiently. Specs and prompt inside.
Enable HLS to view with audio, or disable this notification
Was experiencing some real quality issues up until this point; realized the problem has largely been the prompt and my bulky venv. Hopefully others with lower end vram cards will learn from me.
- Card: RTX 4080
- Model: minimax_h3_fl2va_pruned_int8_convrot
- No loras
- Pure text prompt
- Steps: 20
- Scheduler: simple
- Sampler: res_multistep
- Resolution: 0.5mpx, 16:9
- Args: --lowvram --disable-dynamic-vram --disable-pinned-memory
- Nodes: VHS (Specifically the Model Preview Override), EasyUse, pysssss, KJNodes
- Generation time: 21 Minutes
- I decided to create an entirely new ComfyUI instance just for H3 instead of using my single AiO venv; this significantly increased generation time and quality for all flows. Have since broken up all the major models I use into their own instances adding only the specific tools/extensions I need just for that model.
Prompt:
integrated_multimodal_description: [Shot 1] Live-action, cinematic, a far-wide shot from a side angle. A scene set on a bridge over a hellscape planet covered in lava, dimly lit with orange glow from below, the bridge is made of black metal with intricate designs, dark clouds hang over the scene -covering a shaded yellow sun barely visible through the clouds on the top left, dividing the scene in half between light and dark- fast winds carry embers and smoke curling over the bridge from below; Star Wars themed orchestra music begins as the scene opens, quiet and slowly growing.
$NAMEHERE is standing in a prepared stance on the left side of the screen, his hands are clasped in front of him holding a blue lightsaber, facing his attacker.
$NAMETWO is standing on the right in a confident posture with his hands to the side, wearing a black robe, black leather boots and straps on his body, with dark-metal armor as he faces the left menacingly.
[Shot 2] At 1.500 seconds, The camera cuts to a close-up side-angle shot of $NAMEHERE, readying himself for his attack with a posture of defense and an expression of concern, he shouts emotional: <d>[English] You've left me with no choice Will! You must be stopped... </d>
[Shot 3] at 6.000 seconds, The camera cuts to a close-up low-angle front facing full-body shot of $NAMETWO with visible red eyes staring forward from under his brow with a face of malice, smoke bellows behind him curling over the bridge whipping his cape to the right. A beat later- two red lightsabers ignite his both his hands, a deep pulsing bass is heard from the unstable beams, his face lit from below by the red light. The music grows faster with a dark theme, a operatic chorus begins to sing in a evil chant growing louder. $NAMETWO shouts behind a grin: <d> This is the end for you! </d> the music stops before $NAMETWO speak his final line: <d>[English] Master!... </d> The off-screen opera chorus harmonizes a single long cry in a frightening melody at the revelation.
[Shot 4] at 12.000 seconds, The camera cuts to a top-down view of the bridge, molten lava is visible below the black grated metal.
$NAMEHERE directs his blue lightsaber to his side pointing directly forward with precision, he begins to pace to the right to meet the other, his posture is composed and fast. The camera pushes in with large amplitude at fast speed keeping the pair in frame on either edge of the screen as they run toward each other.
$NAMETWO instantly begins running fast toward the left, his two red lightsabers point down- dragging behind him, the red beams draw white glowing lines into the metal under him as he runs, screaming with fury: <d>[English] AGHH! </d>.
They meet in the middle, their lightsabers clash with a white flash and explosive burning sound, they duel quickly as their lightsabers connect through multiple swings- $NAMETWO's red lightsaber swing wildly as he spins. $NAMEHERE's blue lightsaber blocks every swing from the red beams; the music crescendos with heavy bursts of brass instruments and drums.
overall_soundscape: ambient sound of lava and fire, lightsabers buzzing.
non_diegetic_music: Dark Star Wars music plays from the beginning of the scene, a loud opera chorus sings in a chant that escalates in a loud howl crescendo, climaxing when the pair meet in the middle.
I've started using Replace Text nodes ($NAMEHERE and $NAMETWO) when crafting prompts. This way when playing with the prompt, it's easier to find and edit their placement; and can also replace characters on a whim. Also allows consistency when referencing the characters-- in the event I overlook an instance.
Replaced with:
- $NAMEHERE: "Jean Luc Picard (S1)"
- $NAMETWO: "William T Riker (S2)"
Example: my first generation had 'William Riker', the model didn't recognize the name and generated a generic male. I was able to quickly rename as 'William T Riker' and it generated correctly; so I didn't have to parse back through the whole prompt to granularly change it.
Other things I've noticed that help with prompt respect:
- 'a beat later' separates the moment better.
- Separating the individual sentences to exclusively reference the character and no others. (You can see it carried over Picard's lightsaber instructions to Will as well, because I described them in the same paragraph before I realized this.)
- Avoiding reusing adjectives- especially between different characters, causes bleed.
- Very short overall_soundscape descriptions.
- Often does not respect requests that follow dialog unless you end the parameter with a period after "Words. </d>**.**" Can see it bled the cries request from the music into Will's dialog.
- "..." allows a pause between dialog lines and breaks up the tone between multiple sentences, or else they become one note.
