Disclaimer
Since I use dozens of structured prompt presets—complete with dialogue—I grew tired of having to manually change the tags whenever I wanted to switch to a different language. So, I guided ChatGPT and now also Claude to help me build a custom, tailored solution.
It’s working very well for me, so I’m sharing it in the hope that it might be useful to others. I haven’t set up a GitHub repository yet, but I plan to create one for future versions ---> I'll create one this week-end to release next updates through Comfy Manager.
If you have any suggestions, questions, or improvements to propose, please don't hesitate!
H3 Dialogue Translator — v2.0 for ComfyU
Translation, Editing & Preview for ComfyUI
H3 Dialogue Translator is a lightweight custom node pack for working with MiniMax H3 dialogue prompts. It translates dialogue through Bing or Google while preserving the surrounding prompt.
V2 adds an interactive dialogue editor, a full prompt preview and manual approval before the result continues through your workflow. You can review the dialogue before spending time on video generation.
No API key, account or local translation model is required. Translation requires an Internet connection.

Two nodes in one package
Original V1 H3 Dialogue Translator (Bing / Google) translates automatically without a manual approval step.
Interactive V2 H3 Dialogue Translator (Bing / Google) + Editing provides optional editing, translation, preview and Send controls.
Existing workflows using V1 continue to use the original node. Both nodes share the same dependency.
How it works
The node recognizes dialogue blocks using this format:
<d>[French] Je pensais que tu étais partie.</d>Only the dialogue blocks are processed. Scene descriptions, camera instructions, actions and other text outside those blocks remain unchanged. The source language is read from each dialogue’s language label; it is not detected automatically from the text.
Translation only Dialogues are translated immediately, then displayed in the preview. Click Send to continue.
Editing only Each dialogue appears in a separate editable field. Click Apply Edition to preview your changes, then Send.
Editing and translation Edit the original dialogues, click Apply & Translate, review the translated prompt, then Send.
Both disabled The original prompt passes through unchanged. Prompts without dialogue blocks also pass through without waiting.
Dialogue editing
Each field contains the dialogue text without its outer dialogue tags or language label.
Editing Language declares the language of all dialogues submitted through the editor, including any you leave unchanged. The node updates their language labels accordingly before translating, if translation is enabled.
Empty dialogues are rejected with a visible message. The node keeps waiting so you can correct the field without releasing an invalid result.
Preview before sending
The preview displays the complete output prompt in a selectable, read-only area. Language labels and dialogue text use distinct highlighting, making the processed sections easy to identify.
A monitoring line shows the original source language or languages, the declared editing language when applicable, and the translation target and provider.
The action button prepares the preview. Send releases that preview as the node’s output.
If you edit a dialogue or switch modes after preparing a preview, Send is blocked until you refresh it.
Retranslation and live controls
You can change the translator, target language or editing language while the node is waiting, then click the action button again.
In translation-only mode, the button becomes Retranslate after the first preview. Further translation attempts bypass the node’s translation cache and request a fresh result. Identical wording may still be returned by the provider.
When editing is enabled, translation uses your current edited text. When editing is disabled, it uses the original dialogues.
Six visual themes
Choose between Classic, Subtitle, Script, Console, Comic and Lexicon.
Themes switch immediately and are saved individually with each node in the workflow. Classic is the default. Changing the theme preserves the active session, typed dialogue and preview.
Supported languages
French, English, Spanish, German, Russian, Italian, Portuguese, Japanese, Chinese, Korean and Arabic.
One target language applies to all dialogues processed together. Without editing, individual dialogue blocks can declare different source languages.
Installation
Extract the ComfyUI-H3-Dialogue-Translator folder into ComfyUI/custom_nodes.
For a first installation, install requirements.txt using the Python environment running ComfyUI. The dependency is translators==6.0.4.
If V1 already works, no additional dependency is required. Replace the existing folder rather than installing a duplicate copy.
Restart ComfyUI, refresh the browser and find both nodes under H3 / Text.
Compatibility and validation
The functional workflow was tested through a protocol covering 30 different scenarios in ComfyUI 0.43.1 with frontend 1.57.4 on Windows.
The interface targets the classic ComfyUI canvas. Nodes 2.0 and mobile interfaces are not currently supported targets.
When using V2 inside a subgraph, open that subgraph to access the editor. While awaiting Send, the current execution remains active and can hold subsequent queued jobs. Use ComfyUI’s Interrupt command to cancel.
Translation depends on Bing or Google availability. Provider errors appear in the editor and allow another attempt without sending a partially translated prompt.
H3 Dialogue Translator — v1.0 for ComfyUI
Translate the dialogue in your MiniMax H3 prompts using Google or Bing while keeping the rest of the prompt unchanged. No API key, account, or local translation model is required. An Internet connection is necessary.

How it works
Connect your complete prompt to the STRING input, select a target language and a translation provider, then use the resulting STRING output in your H3 workflow.
The node identifies dialogue blocks using this format:
<d>[French] Bonjour, comment vas-tu ? </d>
With English selected, the block can become:
<d>[English] Hello, how are you? </d>
The spoken text is translated and its language label is updated. Scene descriptions, camera instructions, actions, and all other text outside dialogue blocks remain unchanged.
One target language per prompt
Version 1.0 uses one shared target language for every dialogue block in the input prompt.
The source prompt may contain multiple languages—for example, French, English, and Spanish—but all dialogue blocks are processed toward the same selected target language. Blocks already in that language are left unchanged.
Individual target languages cannot currently be assigned to separate lines or speakers. A future version may introduce independent language selection for each dialogue block, but this feature is not included in v1.0.
Supported languages
French, English, Spanish, German, Russian, Italian, Portuguese, Japanese, Chinese, Korean, and Arabic.
Technical behavior
The node reads the source language from each dialogue block’s [Language] label. It does not automatically detect the language of the spoken text, so the label should match the dialogue.
Each block is processed independently. Only dialogue fragments requiring translation are sent to the selected provider through the Python translators library. No model weights are loaded into RAM or VRAM.
Dialogue order, text outside the blocks, and whitespace surrounding each translated fragment are preserved. H3 control markers such as <cutoff> and <scenetrans> are retained and excluded from translation. Text fragments separated by these markers are translated separately, which may reduce linguistic context.
A prompt without dialogue blocks passes through completely unchanged, without making a network request. Empty dialogue blocks only have their language label updated.
Malformed or unclosed dialogue blocks, nested blocks, missing language labels, and unsupported source labels produce an explicit error. If a translation request fails, the node does not silently return a partially translated prompt.
Caching
An in-memory cache stores up to 512 successful translation fragments. Cache entries include the provider, source language, target language, and original text, keeping Google and Bing results separate.
The cache is cleared when ComfyUI restarts. ComfyUI’s standard execution caching also applies.
Installation
Extract the ComfyUI-H3-Dialogue-Translator folder into ComfyUI/custom_nodes, then install the dependencies using ComfyUI’s Python environment:
python -m pip install -r requirements.txt
Restart ComfyUI and find “H3 Dialogue Translator (Bing / Google)” under H3 / Text.
Limitations
Both providers are accessed through web connectors. Availability may change if a provider modifies its service or limits requests. Translation quality depends on the selected provider and available context.
Each text fragment is limited to 4,999 characters, without silent truncation. Internal line breaks within translated dialogue may be reformatted by the translation service.
Description
V2 - What’s New
Editing
Modify each detected dialogue directly inside the node.
Preview
Review the complete output prompt before sending it downstream.
Approval
Keep the workflow waiting until you click Send.
Retranslation
Refresh translations with a different provider or target language.
Bypass
Enable editing and translation independently.
Monitoring
Track processing states, languages and translation provider.
Highlighting
Quickly identify language labels and dialogue text in the preview.
Themes
Choose from six visual styles, saved individually with each node.
The original V1 node remains included and unchanged. No additional dependencies are required for existing users.






