Nodes/civitai-comfy-nodes/Civitai Chat (Simple)
ComfyUI Node

Civitai Chat (Simple)

A chat LLM inside your graph without writing a line of JSON

By civitai·Created 2 months ago·Updated about a month ago· 42
Civitai Chat (Simple)
  • image
  • api_config
  • text
  • workflow_id
  • raw_json
modelopenai/gpt-oss-120b
user_prompt
system_prompt
temperature1.00
max_tokens1024

You want an LLM to rewrite your prompt, caption an image, or summarize something - and you don't want to hand-write an OpenAI messages array to do it. That's the whole job of Civitai Chat (Simple). It's the friendly front door to the pack's full CivitaiChatCompletion node: one prompt in, one text string out, no JSON scaffolding.

What it is

A single-turn chat completion that runs on Civitai's cloud (via the same orchestration API the rest of the pack uses), so there's no model download, no VRAM, and no Ollama server to babysit. You pay per call in Buzz. The default model is openai/gpt-oss-120b, and you can swap in any model the API serves by typing its name.

This is the "LLM as a tool in the graph" pattern from the KB's LLM-in-ComfyUI essay: a language model doing a job that isn't diffusion - prompt enhancement, captioning, structured rewriting - sitting before or alongside your sampler rather than inside it.

The inputs that matter

  • user_prompt - your instruction. The thing you actually type.
  • system_prompt - optional framing ("You are a prompt engineer for FLUX").
  • image - an IMAGE socket. Drop in an image and the model reads it (vision), which makes this a one-node captioner or img2img prompt-seeder. This is the sneaky-good feature; most people don't notice it's there.
  • model - defaults to openai/gpt-oss-120b.
  • temperature and max_tokens (default 1024) - the two dials you'll touch.

Outputs: text (the reply, a plain STRING), plus workflow_id and raw_json for debugging and cost inspection - every pack node returns those last two.

How it works under the hood

Wire text into whatever wants a prompt string downstream. The classic setup: this node → a Prompt input on one of the pack's cloud image nodes. Since the model is hosted, the response lands back in your graph as if a local node had produced it - the same illusion every API-wrapper node in this pack trades on (see the KB's external-api-nodes essay for the honest tradeoffs of that pattern).

Where people use Simple instead of the full ChatCompletion node: when they want one shot, no conversation memory, no tool calls. It's deliberately opinionated. If you need roles, multi-turn history, JSON output, or function calling, step up to CivitaiChatCompletion - this node is the 80% case.

Install & gotchas

Install the pack once and you get this node with it:

  • ComfyUI Manager → search Civitai Comfy Nodes (publisher civitai) → Install → restart.
  • Or comfy node registry-install civitai-comfy-nodes.
  • Or clone https://github.com/civitai/civitai-comfy-nodes into custom_nodes and pip install -r its requirements (just requests).

Three things bite beginners:

  1. There's no conversation memory. Each run is stateless. For a chatbot you have to chain calls yourself, feeding the previous text back into the next user_prompt. Simple is for single-turn jobs - that's the point of the name.
  2. Every call costs Buzz. It's metered, and a verbose LLM churning through a big image-caption loop adds up fast. The KB's cost warning about API nodes ("a local generation is free after the electricity; a cloud call is metered every time") applies in full.
  3. No credentials → a brick wall. You need the CIVITAI_API_TOKEN env var, a stored OAuth login, or a wired Civitai Auth node feeding api_config. Without one you'll get a "No Civitai credentials" error before anything runs.

One light take: for pure prompt enhancement, plenty of people prefer a local uncensored model for the privacy and zero marginal cost. This node's edge is when you want a hosted frontier-class model and vision in one node with zero setup. Both are legitimate; pick by whether the prompt leaves your machine is a problem for you.

CategoryCivitai/Text

Inputs (7)

NameTypeDefaultDescription
modelSTRINGopenai/gpt-oss-120b
user_promptSTRING
system_promptoptSTRING
imageoptIMAGEOptional image to include in the user message
temperatureoptFLOAT1.000–2
max_tokensoptINT10241–131072
api_configoptCIVITAI_CONFIG

Outputs (3)

NameTypeDescription
textSTRING
workflow_idSTRING
raw_jsonSTRING