Nodes/SimpleSyrup/External LLM Prompt
ComfyUI Node

External LLM Prompt

An LLM in Your Graph Without Loading a Single Local Model

By Artificial-Sweetener·Created 3 months ago·Updated 12 days ago· 2
External LLM Prompt
  • image
  • response
modelConfigure external LLM endpoint
system_prompt
user_prompt
max_tokens1024
reasoning_effortdefault

The name is a bit of a letdown once you realize what it means: "External LLM" isn't a euphemism for some cloud dependency - it just means the LLM isn't running inside ComfyUI. External LLM Prompt sends your system and user prompts to an OpenAI-compatible provider you configure, and returns the response as text. No local model, no VRAM, no quantized weights. If you're already paying for an OpenAI-compatible endpoint, this is the cheapest way to put a language model inside your ComfyUI graph.

How it works

The provider is configured in Settings, not on the node. Two SimpleSyrup settings matter:

  • SimpleSyrup: External LLM endpoint - the OpenAI-compatible base URL.
  • SimpleSyrup: External LLM API key - the key, stored in OS credential storage (via the pack's keyring dependency) rather than plaintext.

Saving the endpoint and key refreshes the provider's model list, so the node's model dropdown gets populated from what your endpoint actually offers. Unconfigured, it shows the placeholder "Configure external LLM endpoint" - which is the README's polite way of saying "go to Settings first."

On the node itself:

  • system_prompt: the instruction sent as the system message ("You are a prompt engineer...").
  • user_prompt: the actual request.
  • max_tokens (default 1024): response length ceiling; longer replies cost more time and money.
  • reasoning_effort (default default): reasoning behavior for providers that support it. default omits provider-specific controls; off explicitly disables thinking via chat template options where available.
  • image (optional): attach an image to the user message for vision-capable models. With a batch connected, the first image is used.

Output is a single response STRING - the assistant's reply, ready to wire into a prompt encoder, a text display, or another node.

What it's good for

This is the "prompt enhancer" class of node, and the KB's guidance applies: LLM-enhanced prompting works best when the job is narrow and structured. Use it to rewrite a rough idea into a model-appropriate prompt, to generate a structured prompt from a description, or to produce tags/descriptions that feed other nodes. What it won't do is run offline, be free, or be uncensored the way a local model can be - for that you'd want a local-LLM node instead. Also note the honest ceiling: a chat LLM's output is chat, and if you wire raw prose into a prompt box, preamble and all, it bleeds into your conditioning. Keep the system prompt tight ("reply with only the prompt, no commentary") and inspect the response before automating.

Security posture is straightforward: it's an API call, not arbitrary local code - but the endpoint and key are still credentials, which is exactly why the key goes to OS keychain rather than the workflow JSON.

Install

Ships in the SimpleSyrup pack. ComfyUI Manager → search SimpleSyrup → Install → restart, or:

Set-Location ComfyUI\custom_nodes
git clone https://github.com/Artificial-Sweetener/SimpleSyrup.git
Set-Location SimpleSyrup
..\..\venv\Scripts\python.exe -m pip install -r requirements.txt

Restart ComfyUI; current build required (v3 extension API).

Common issues

  • Model dropdown is stuck on "Configure external LLM endpoint" - you haven't saved a valid endpoint (and key, if required) in Settings; save them and the list refreshes.
  • Vision image ignored - your provider model doesn't support vision. Image inputs require a vision-capable model.
  • Responses come back chatty - tighten the system prompt; ask for raw output.
  • Node missing - update ComfyUI first.

It's the lightest way to add an LLM to a workflow: one API key, no gigabytes of weights, and a text socket out.

CategorySimpleSyrup/Prompting

Inputs (6)

NameTypeDefaultDescription
modelCOMBOConfigure external LLM endpointExternal model used for the prompt request.
system_promptSTRINGInstruction text sent as the system message.
user_promptSTRINGPrompt text sent as the user message.
max_tokensINT10241–32768Maximum number of response tokens the external model may generate. Higher values allow longer replies but can take longer and cost more.
reasoning_effortCOMBOdefaultReasoning behavior for compatible providers. Default omits provider-specific controls; off sends thinking disabled through chat template options.
imageoptIMAGEOptional image sent with the user message for vision-capable external models. When a batch is connected, the first image is used.

Outputs (1)

NameTypeDescription
responseSTRINGAssistant response returned by the external model.