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. Takes its model from the Model port. Conversation history is a Messages array on the Message port: wire the Chat History node's output there and the model receives every message, the last one being the current turn.
Type in the graph: llm_response
Exec
An error output can be enabled to handle failures on their own path.
Ports can be split into separate execution and data handles.
Try it
Minimal working scenario
- Execute + Data
- LLM
- Execute + Data + Streaming
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.
- Wiring both the entry and the history into Message. The Messages array from Chat History already ends with the current message and reaches the model whole. A second edge into the same port from Entry is not needed — and without it LLM Response is guaranteed to run after the history has been read.
Inputs
| Port | Wire | Payload | Notes |
|---|---|---|---|
Modelllm | LLMlink_llm | — | LLM config from llm node (registry or workspace connection) |
Messagemessage | Execute + Dataexecute_data | message | Text, a Message or a Messages array. A Messages array (e.g. from Chat History) reaches the model whole — that is how the conversation history gets in. |
Systemsystem | Datadata | — | System prompt override |
Outputs
| Port | Wire | Payload | Notes |
|---|---|---|---|
Model replyoutput | Execute + Data + Streamingexecute_data_streaming | object | |
Extra streamthinking | Streamingstreaming | — | shown when output_to_thinking = true |
Configuration
| Field | Type | Default | Description |
|---|---|---|---|
Message sourcemessage_source | string | connected | connected — from edge; template — from template text Options: |
User Message Templateuser_prompt_template | string | "" | Used when message source is template. Supports {{inputs.message}}, {{nodes.xxx.output.yyy}} supports templates shown when «Message source» = Template |
System Prompt Sourcesystem_source | string | template | auto -- use connected system input if available, else template Options: |
System promptsystem_prompt | string | "" | System prompt template supports templates |
| Advanced | |||
Mirror Output to Extra Sectionoutput_to_thinking | boolean | false | Also stream LLM output to a connected ExtraSection node |
De-identify sensitive datamask_sensitive_data | string | "" | Replace recognised personal data with markers in the text sent to the model, and restore the originals in its answer. Does not cover attachments, knowledge bases, web search or HTTP node calls. Recognition is not guaranteed to be complete. Options: |
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.