Deep Translator Text Node
Pick your translation engine instead of being stuck with one
- text
This is the translator node in the AlekPet pack for people who've been burned by GoogleTranslateTextNode breaking, or who just want options. It's built on the deep-translator Python library, which is a wrapper around several translation backends rather than one - so instead of being locked to Google's free, unofficial endpoint, you pick which service actually does the work, right from a dropdown.
Why you'd reach for it
Diffusion models want English (or whatever language they were trained on), and if you draft prompts in another language, this node is the bridge. The difference from the plain GoogleTranslateTextNode is flexibility: deep-translator is actively maintained, supports multiple providers, and gives you an escape hatch if one service is down, rate-limited, or just translating badly for your particular phrase. If you'd rather go straight into CLIP conditioning instead of a separate string, its sibling DeepTranslatorCLIPTextEncodeNode does the translate-and-encode in one node.
How it works
You choose a service, feed it text and a source/target language, and it calls that provider's translation endpoint (or, for the free ones, scrapes the equivalent web interface - same general idea as googletrans, just spread across more providers instead of relying on one). The output is a plain string.
The inputs and outputs that matter
text- your prompt, multiline.service(defaultGoogleTranslator) - six choices: GoogleTranslator [free], MyMemoryTranslator [free], LingueeTranslator [free, word(s) only - good for single words/short phrases, not full sentences], PonsTranslator [free, word(s) only], LibreTranslator [free or api_key - can run against a self-hosted LibreTranslate instance], QcriTranslator [free or api_key]. This is the one setting worth actually paying attention to: if the default Google service is giving you trouble, swap it here before troubleshooting anything else.from_translate/to_translate- source/target language, spelled out as full names ("afrikaans","english", etc.) rather than short codes - 134 and 133 choices respectively, defaultauto→english.auth_data- where you paste an API key for the services that need one (LibreTranslator, QcriTranslator when not using their free tier). Leave blank for the free services.add_proxies(bool) +proxies- route requests through a proxy if you're behind one that blocks direct calls; off by default.
Output is a single text string - same shape as GoogleTranslateTextNode, so it's a drop-in swap in an existing graph.
How to install it
Via ComfyUI Manager: search "ComfyUI Custom Nodes AlekPet" and install. Manually:
cd ComfyUI/custom_nodes
git clone https://github.com/AlekPet/ComfyUI_Custom_Nodes_AlekPet
Restart ComfyUI - the deep-translator Python package installs automatically on first launch, per the pack's own install notes. No model weights, no GPU use; this is a lightweight network call.
Common issues & troubleshooting
A specific service stops working or returns garbage. Each backend in the service dropdown is a separate, independently-run translation provider with its own uptime and quirks - if one has an outage or starts blocking free traffic, that's a provider-side problem, not this node. Switch to a different service in the dropdown rather than debugging the node itself.
LingueeTranslator or PonsTranslator "doesn't work" on full sentences. That's expected, not a bug - both are word/short-phrase dictionaries under the hood, not general machine translation. Use GoogleTranslator or MyMemoryTranslator for full prompt sentences, and save Linguee/Pons for looking up individual terms.
LibreTranslator or QcriTranslator errors out immediately. Check auth_data - those two need an API key (or a self-hosted LibreTranslate URL, in Libre's case) unless you're specifically hitting their free tier, which is rate-limited and not guaranteed to be available. An empty auth_data field is the first thing to check.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| from_translate | COMBO | auto | 134 options: auto, afrikaans, albanian, amharic, arabic, armenian, +128 |
| to_translate | COMBO | english | 133 options: afrikaans, albanian, amharic, arabic, armenian, assamese, +127 |
| add_proxies | BOOLEAN | false | — |
| proxies | STRING | — | |
| auth_data | STRING | — | |
| service | COMBO | GoogleTranslator | 6 options: GoogleTranslator [free], MyMemoryTranslator [free], LingueeTranslator [free - word(s) only], PonsTranslator [free - word(s) only], LibreTranslator [free or api_key], QcriTranslator [free or api_key] |
| text | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| text | STRING | — |