CLIP Text Translate Advanced
Strength and pass-through
- clip
- conditioning
- translated_text
CLIP Text Translate Advanced is what happens when the pack's author gives the plain CLIP Text Encode (Translate) two extra knobs and calls it a day. Same translate-then-encode pipeline, but with a strength slider and a pass_through_original switch, plus it hands you the translated string as a second output so you can see what actually reached the encoder.
For most people, most of the time, you don't need this node - the plain one is fine. But those two extra inputs are aimed at a specific situation: you translated your prompt, and the result isn't landing the way you want. strength is the blunt "how hard should the model believe this prompt" dial, and pass_through_original is the "actually, encode the untranslated text and let me keep the translation as a reference" escape hatch.
How it works
The translation machinery is identical to the rest of the pack: langdetect (with a scripted fallback) detects the source, Argos Translate - offline, OpenNMT on CTranslate2, no API key - translates to your target language, and the resulting text gets tokenized and encoded through your CLIP model.
The two extras are where it differs:
- pass_through_original (default false) - when true, the node encodes your original text instead of the translation, and just reports the translation out the side port. So you get a conditioning built from the original prompt while still getting to see (and save) what the English version would have been.
- strength (default 1.0, range 0.0–2.0) - when it's not 1.0, the whole conditioning tensor gets multiplied by it before it leaves the node. This is a raw scale on the conditioning, not a careful per-token adjustment. It's the same family of trick as prompt weighting, applied globally, and it behaves about as predictably as you'd expect from multiplying a tensor.
The inputs and outputs
- text - multiline, your prompt.
- clip - the CLIP model from your checkpoint loader.
- source_language / target_language - defaults
auto - Auto-detectanden - English.
Two outputs: conditioning (wire to KSampler) and translated_text (the string, handy for a preview or a save node).
Installing it
You know the drill by now - this is a member of the ComfyUI-Prompt-Translator pack. ComfyUI Manager, search ComfyUI-Prompt-Translator, install, restart:
cd ComfyUI/custom_nodes
git clone https://github.com/DrStone71/ComfyUI-Prompt-Translator
Restart, and if the pack's imports fail, pip install -r requirements.txt inside the cloned folder (the notable deps are argostranslate, ctranslate2, sentencepiece). Nodes appear under 🌐 DrStone71.
Honest notes on the extras
The strength knob is the fiddliest thing in the pack, and I'd treat it with suspicion: it scales the entire conditioning tensor, so values above 1.0 can oversaturate your prompt's influence and values near 0 quietly make the model ignore what you wrote. It's useful when you want to soften a too-loud prompt without rewriting it, but start at 1.0 and nudge in 0.1 steps. And remember the pack-wide gotcha: first use of any language pair triggers a one-time Argos model download that freezes the graph - pre-install pairs with Language Package Manager if you're going to be switching languages often.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| text | STRING | — | |
| clip | CLIP | — | |
| source_language | COMBO | auto - Auto-detect | 39 options: auto - Auto-detect, en - English, ar - Arabic (العربية), az - Azerbaijani (Azərbaycan), ca - Catalan (Català), zh - Chinese (中文), +33 |
| target_language | COMBO | en - English | 39 options: auto - Auto-detect, en - English, ar - Arabic (العربية), az - Azerbaijani (Azərbaycan), ca - Catalan (Català), zh - Chinese (中文), +33 |
| strengthopt | FLOAT | 1.00–2 | — |
| pass_through_originalopt | BOOLEAN | false | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| conditioning | CONDITIONING | — |
| translated_text | STRING | — |