Nodes/ComfyUI-Gemini/㊙️Gemini_Chat_Zho
ComfyUI Node

㊙️Gemini_Chat_Zho

The no-key multi-turn chat node — with the same 1.5 Pro trap as its twin

By ZHO-ZHO-ZHO·Created 3 years ago·Updated 2 years ago· 784
㊙️Gemini_Chat_Zho
  • image
  • response
promptWhat is the meaning of life?
model_name

㊙️Gemini_Chat_Zho is the chat node you actually want if you're going to use this pack's chat family at all: same multi-turn conversation as the explicit-key version, but the key is read from config.json instead of living in the workflow. ZHO's own V2.0 demo is built on this one - a chatbot node wired to DisplayText_Zho, where each message you queue gets answered and the whole conversation accumulates in the graph.

Why prefer it over Gemini_API_Chat_Zho? Because your API key isn't typed into a widget, which means it doesn't end up embedded in a saved PNG's workflow metadata when you share an output image. That's the whole point of the ㊙️ family, and it's a genuinely good habit for anything that costs you money or rate limit.

How it works

Same mechanism as its explicit twin: model.start_chat(history=[]) is created once on the node instance, and every execution calls chat.send_message(prompt) on that same session. That's what gives you memory across queue runs. The output is named response, but it's really the formatted transcript - role: lines separated by dashed rules - so expect the whole history, not just the newest answer. Wire it to DisplayText_Zho and the node becomes a chat window.

It offers gemini-pro and gemini-1.5-pro-latest, plus an optional image input.

The trap, and it's a real one

The shipped code has the same bug as the explicit chat node: generate_chat never receives an image argument, but the 1.5 Pro branch checks if image == None anyway. Select gemini-1.5-pro-latest and you'll crash with a NameError before Google ever sees a request. gemini-pro works cleanly. If you need 1.5 Pro with chat, the 🆕Gemini_15P_Chat_Advance_Zho node is the working path - its code actually accepts the image parameter, and you get a system instruction on top.

Inputs and install

  • prompt - each message in the conversation.
  • model_name - gemini-pro (works) or gemini-1.5-pro-latest (crash, above).
  • image (optional) - declared, but broken in this node's 1.5 Pro path.
cd ComfyUI/custom_nodes
git clone https://github.com/ZHO-ZHO-ZHO/ComfyUI-Gemini.git
cd ComfyUI-Gemini
pip install -r requirements.txt

Then put your key in custom_nodes/ComfyUI-Gemini/config.json (the pack auto-creates it with a placeholder on first load - replace "your key") and restart ComfyUI.

Two more notes. Chat state lives on the node while ComfyUI runs, and there's no reset button - fresh conversation means a new node or a restart. And the free tier's rate limits (roughly 2 requests/minute on 1.5 Pro at launch) plus the ever-growing history mean long chats get slower and can hit the ceiling mid-thread.

CategoryZho模块组/✨Gemini

Inputs (3)

NameTypeDefaultDescription
promptSTRINGWhat is the meaning of life?
model_nameCOMBO2 options: gemini-pro, gemini-1.5-pro-latest
imageoptIMAGE

Outputs (1)

NameTypeDescription
responseSTRING