All nodes/AI/LLM

LLM Response

Sends a message to the LLM and streams the response. A simpler option than AI Agent — no tools, a single call. Requires an LLM via link_llm. Supports a system prompt and chat history.

LLM Response
LLMOutput
MessageExtra stream
System

Type in the graph: llm_response

Exec

An error branch can be enabled (expose_error_output) to handle failures on their own path.

Ports can be split into separate execution and data handles.

Try it

Minimal working workflow

Entry
LLM Response
LLM
Exit
  • Execute + Data
  • LLM
  • Execute + Data + Streaming
Press “Copy nodes”, open the editor and hit Ctrl+V on the canvas.

Runs as pasted

When to use it

Reach for this node when you need one answer from the model and nothing else: rewrite a text, translate it, summarise it, answer a question from the context you passed in. One call, no tools, no rounds, and the answer streams out. If the model has to decide for itself what to use, you want an AI Agent; if you need the answer as an object with fields, use Structured Output LLM.

How it works

The Message port does two things at once: it triggers the node and carries the prompt. It accepts a plain string, a message with attachments, or a whole Messages array — from the Chat History node, for example. In that last case the leading messages become conversation context and the trailing one becomes this turn’s question.

The answer streams. When the node’s output is wired straight into Exit, tokens appear in the chat as they are generated; any node in between buffers the answer and hands it over in one piece.

What travels on downstream is the answer text itself — a plain string, no wrapper.

The extra stream port appears once “Mirror Output to Extra Section” is on; wire it into the ExtraSection node.

Common mistakes

  • The System port is connected but the prompt did not change. “System Prompt Source” defaults to Template, and the connected port is then ignored. Switch it to “Connected System port” or “Auto”.
  • Choosing Template and removing the edge. The Message edge is still required — it triggers the node; with the Template source only its value is ignored.
  • Wiring the streaming output into two nodes. A stream has exactly one destination: two streaming edges from one port is a validation error.
  • Counting on the “Use Chat History” toggle. It only picks up history that arrived together with the value on the Message port. The reliable way to give the model context is to feed a Messages array from the Chat History node into that port.

Inputs

PortWirePayloadNotes
LLMllmLLMlink_llm

LLM config from llm node (registry or workspace connection)

MessagemessageExecute + Dataexecute_datamessage

User message sent to the LLM

SystemsystemDatadata

System prompt override

Outputs

PortWirePayloadNotes
OutputoutputExecute + Data + Streamingexecute_data_streamingobject
Extra streamthinkingStreamingstreaming

shown when output_to_thinking = true

Configuration

FieldTypeDefaultDescription
Message Sourcemessage_sourcestringconnected

connected — from edge; template — from template text

Options: connected — Connected input, template — Template

User Message Templateuser_prompt_templatestring""

Used when message source is template. Supports {{inputs.message}}, {{nodes.xxx.output.yyy}}

supports templates

shown when message_source = template

System Prompt Sourcesystem_sourcestringtemplate

auto -- use connected system input if available, else template

Options: auto — Auto (connected System port, else template), connected — Connected System port, template — Template

System Promptsystem_promptstring""

System prompt template

supports templates

Advanced
Use Chat Historyuse_chat_historybooleanfalse

Pass full chat history to LLM instead of only last message

Mirror Output to Extra Sectionoutput_to_thinkingbooleanfalse

Also stream LLM output to a connected ExtraSection node

Shared fields

Every node has these three — the platform adds them, not the node author.

  • expose_error_output — When enabled, show an execution output to connect nodes that run if this step fails.
  • split_ports_in — Show separate execution and data input handles instead of one combined port.
  • split_ports_out — Show separate execution and data output handles instead of one combined port.