Nodes/ComfyUI-Artha-Nodes/πŸ”± Artha Gemini Makeup
ComfyUI Node

πŸ”± Artha Gemini Makeup

Read the makeup off a reference photo, reliably

By CyrostarΒ·Created 10 months agoΒ·Updated 8 months agoΒ· 0
πŸ”± Artha Gemini Makeup
  • image
  • makeup
β—„api_keyβ–Ί
β—„modelgemini-2.5-flashβ–Ί
β—„max_tokens5000β–Ί
β—„temperature0.7β–Ί

Artha Gemini Makeup is the part of the Artha character pipeline that handles one of the fiddliest prompt details there is: makeup. Most people writing character prompts either skip it entirely or fall back on "light makeup" and hope, because describing a specific look - winged eyeliner, nude lip, dewy base - is surprisingly hard to nail in a sentence. This node doesn't make you write any of that. You give it a reference image, it asks Gemini what makeup is on the face, and it hands back a makeup value that Artha Gemini Portrait folds into your character description.

Like its sibling Artha Gemini Cloth, this node is vision-only. The image input is required, every run is a Gemini API call, and there's no offline picker mode to fall back on. It's simple, and it's honest about what it costs.

What you get

The input list is short: image (required), then the pack's standard api_key, model (default gemini-2.5-flash), max_tokens, and temperature. Under the hood it sends the image with the prompt "Identify the make-up of the face and list each element," guided by a built-in makeup agent prompt, and returns the description through the single makeup output (type ARTHAMAKEUP).

That output is plain text - readable on its own if you route it into a display node like Artha Gemini Response, or consumed directly by Portrait's makeup input. Portrait merges it with face, body, form, and cloth into one character description, and it also honors the reconstruct mode, where your wired-in makeup description overrides whatever Portrait inferred from a reference photo.

The honest assessment

Vision-based makeup extraction is genuinely useful, and it's also a place to keep expectations level. Gemini is good at "natural makeup," "smokey eye," "bold red lip" - the broad categories that actually show up in prompts. It's less reliable at nuance (is that satin or matte?) and gets genuinely confused by editorial photography where the "makeup" is an artistic choice rather than a beauty look. For a faithful recreation workflow - "same person, keep the makeup" - it works. For a forensic inventory, don't.

Cost is the thing to watch. Vision mode runs an API call per execution, no toggle. If you're iterating on a character, cache the makeup value you like and reuse it rather than re-running the node every iteration, or your free tier evaporates quietly. Failures are swallowed the pack way: empty makeup output, error printed to the ComfyUI console.

Key handling

The pack's three-way resolution applies: the node's api_key field, then api.json in the pack folder, then the GEMINI_API_KEY environment variable. Put the key in api.json and leave the field blank so a plaintext key doesn't ride along in a workflow file you share. Get the key itself from Google AI Studio.

Install

Same one-time install as the rest of the πŸ”± pack:

cd ComfyUI/custom_nodes
git clone https://github.com/Cyrostar/ComfyUI-Artha-Nodes
cd ComfyUI-Artha-Nodes
pip install -r requirements.txt

Restart ComfyUI, or install "Artha" via ComfyUI Manager. Since there's no offline mode here, get the key sorted before you wire it up - this node will not work without one.

CategoryArtha/LLM/Gemini

Inputs (5)

NameTypeDefaultDescription
imageIMAGEβ€”
api_keySTRINGAPI key will be visible in plain text. Consider adding your api to the api.json located inside this custom node folder.
modelCOMBOgemini-2.5-flash5 options: gemini-2.5-pro, gemini-2.5-flash, gemini-2.5-flash-lite, gemini-2.0-flash, gemini-2.0-flash-lite
max_tokensINT50001–8192For Gemini models, a token is equivalent to about 4 characters. 100 tokens is equal to about 60–80 English words.
temperatureFLOAT0.70–2A temperature of 0 means only the most likely tokens are selected. Higher values increase randomness.

Outputs (1)

NameTypeDescription
makeupARTHAMAKEUPβ€”