Chat
Send a prompt to a configured Large Language Model and emit the model's reply.
The function reads from the prompt input connector and writes to the response
output connector. Output is plain text by default, but can be constrained to a JSON
object — optionally validated against a JSON Schema.
With Conversation memory enabled, the node also exposes a session_id input:
calls sharing the same session id form a multi-turn conversation — previous
exchanges are replayed to the model before the new prompt. History is kept in
Redis with a sliding TTL. When the session_id input is not wired (or empty at
run time) the node behaves as a one-shot chat.
Pre-requisite: Install an AI provider application from Profile > {Organization} > Applications. Supported providers:
- OpenAI
- Anthropic
- Mistral
- Gemini
- Cohere
- Moonshot
- Scaleway AI
- OpenRouter
- DeepSeek
Parameters
Configured AI application that supplies the API credentials and provider type.
Model identifier passed to the provider (e.g. gpt-5.6-sol, claude-sonnet-5,
mistral-large-latest, gemini-3.7-flash). The form suggests common
identifiers based on the selected provider — click a badge to fill in. When
omitted, the provider's default model is used.
System prompt prepended to every call. Use it to set the assistant's persona, constraints, or output style. Leave empty for a neutral assistant.
Shape the model must return:
Text— free-form text reply (default). Theresponseoutput isPlainText.JSON— any valid JSON object. Theresponseoutput isJson.JSON with Schema— JSON validated against a strict JSON Schema. Theresponseoutput isJson. Replies that fail to parse or validate cause the step to error.
With Conversation memory enabled, the response format is not enforced
by the provider (the editor shows a configuration warning); prefer
Text for conversations.
Only shown when Response Format is JSON with Schema. JSON Schema describing
the exact shape the response must conform to. Two starter templates are
available: Empty schema (a blank object to start from) and
Document chunking (a ready-made schema for splitting a document into chunks
with metadata).
{
"name": "document_annotation",
"strict": true,
"schema": {
"type": "object",
"additionalProperties": false,
"required": ["title", "summary"],
"properties": {
"title": { "type": "string" },
"summary": { "type": "string" }
}
}
}
Enables multi-turn conversation memory and the session_id input
connector. Exchanges sharing the same session id are replayed as
conversation history. Off by default.
Only shown when Conversation memory is enabled. How long an idle
conversation is kept, in seconds (default 3600). The TTL is refreshed
on every exchange.
Only shown when Conversation memory is enabled. Maximum number of past
messages replayed per call (default 20). Older messages are dropped
first.
Input
The user message sent to the model. Accepted types:
PlainText— passed through as-is.Integer— converted to its string representation.JSON— serialized to a JSON string before being sent.File— read and decoded as text (useful to pipe a document straight into the model).
Only present when Conversation memory is enabled. Optional. Accepted
types: PlainText or Integer. Runs sharing the same session id share
conversation history. When left unwired or empty at run time, the call is
treated as a one-shot chat.
Output
The model's reply.
PlainTextwhenResponse FormatisText(or unset).JsonwhenResponse FormatisJSONorJSON with Schema.