π± Gemini Prompter
Turn a one-line idea into a prompt worth generating from
- system_instruction
- response
Gemini Prompter is the pack's enrichment node: you feed it a rough idea - "a cat with a hat" - and it hands back a richer, more detailed prompt ready for a text encoder. It's the "yes, andβ¦" of the Artha-Gemini pack, and it's the node to reach for when you know what you want but your prompt-writing vocabulary runs out after about twelve words.
It's part of the Artha-Gemini pack (the π± Gemini nodes), the family of cloud-LLM nodes that outsource the thinking to Google's Gemini API. Prompter is text-in, text-out: no image involved unless you choose one, and nothing runs on your GPU.
How it works
The node takes your text_prompt and sends it to Gemini with one of two bundled agents, selected by the media dropdown:
- IMAGE - uses the "enrich_image" agent, tuned to expand a prompt into the kind of descriptive language that image models respond to: subject details, composition, lighting, style.
- VIDEO - uses the "enrich_video" agent, which adds motion, camera, and temporal language - the stuff a video model actually needs and a still-image agent would never think to include.
That split is the feature. Prompt enrichment is not one skill; the language that helps a still-image model is nearly useless to a video model, and vice versa. Telling it which medium you're targeting is what makes the output useful rather than generic.
The output is a single response string. Because modern image and video models treat your prompt as an instruction - the KB's prompt-engineering notes make the case that structured, descriptive prompting is now the highest-leverage habit - a well-enriched prompt genuinely moves results.
Inputs and outputs
- text_prompt - the seed idea. Default
A cat with a hat. - media - IMAGE or VIDEO, the target medium.
- system_instruction (optional) - the
ARTHAINSTRUCTslot if you want to override the agent via Gemini Instruct.
Shared API block: api_key, model, max_tokens, temperature (default gemini-2.5-flash). Output: response (STRING).
Installing it
Via ComfyUI Manager (search Artha-Gemini) or:
cd ComfyUI/custom_nodes
git clone https://github.com/Cyrostar/ComfyUI-Artha-Gemini
cd ComfyUI-Artha-Gemini
pip install -r requirements.txt
No model downloads. You need a Gemini API key from Google AI Studio - every run is a live API call.
Where people get burned
The most common mistake is using Prompter as your whole prompt strategy instead of as one stage. It enriches; it doesn't critique. If you feed it a weak idea, you get a longer weak idea - garbage in, wordier garbage out. And it can drift: the model will happily "improve" your concept in ways you didn't ask for, so read the output before you lock it into a workflow, especially if the prompt carries a specific subject you care about.
Token math matters too. Enrichment tends to produce long prompts, and if you're feeding the result into a model with a context window, keep max_tokens sane. The pack's key hygiene also applies: api.json (gemini_api_key) or the GEMINI_API_KEY env var, never the plain-text field in the workflow.
One workflow tip: it pairs beautifully with Gemini Condense. Enrich a thin idea, then condense it back down to a tight word budget - you get the descriptive richness without the bloat.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| text_prompt | STRING | A cat with a hat. | β |
| media | COMBO | IMAGE | 2 options: IMAGE, VIDEO |
| api_key | STRING | API key will be visible in plain text. Consider adding your api to the api.json located inside this custom node folder. | |
| model | COMBO | gemini-2.5-flash | 5 options: gemini-2.5-pro, gemini-2.5-flash, gemini-2.5-flash-lite, gemini-2.0-flash, gemini-2.0-flash-lite |
| max_tokens | INT | 50001β8192 | For Gemini models, a token is equivalent to about 4 characters. 100 tokens is equal to about 60-80 English words. |
| temperature | FLOAT | 0.70β2 | A temperature of 0 means only the most likely tokens are selected, and there's no randomness. Conversely, a high temperature injects a high degree of randomness into the tokens selected by the model, leading to more unexpected, surprising model responses. |
| system_instructionopt | ARTHAINSTRUCT | β |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| response | STRING | β |