AI Summarize
Controlled node
Overview
AI Summarize uses a large language model to summarize some text, a document, or a list of both. Provide the content you want summarized on the Input socket and describe what the summary should focus on with the Task input. The task is applied at every stage of the summarization, so the more specific you are about what information matters, the better the result.
Because this is a controlled node, it only runs when it receives a Run event, and it fires Done when the final summary is ready.
How it works
AI Summarize uses a map-reduce approach so it can handle inputs far larger than a single model call:
- Each input document is split into overlapping chunks (roughly 50,000 tokens per chunk with a 1,500 token overlap for continuity), so very long documents are supported.
- Every chunk is summarized individually, guided by your task.
- The chunk summaries for each document are merged into a single per-document summary.
- The per-document summaries are merged into one final summary.
Chunk summaries are generated in parallel (up to 8 model calls at a time) and combined in batches, so large inputs are processed as quickly as possible.
Model options
| Model | Description |
|---|---|
| small | Fast, inexpensive lightweight model. The default. Suitable for most summarization tasks. |
| medium | A more capable instruction tuned model. Use for complex or dense documents where summary quality matters more than cost. |
AI Summarize makes many internal model calls — one per chunk, plus additional calls to combine the partial summaries — so token usage grows with the length and number of input documents. Very long documents or large batches will cost more tokens than a single short text.
Inputs
| Input | Type | Description | Default |
|---|---|---|---|
| Model | Enum | The model used for all summarization calls. Options are small and medium. | small |
| Task | Text | A description of what the summary should focus on, e.g. "Summarize the key decisions and action items." Must be a string. | - |
| Input | Text | The content to summarize. Accepts a single string (one document) or an array of strings (multiple documents, combined into one summary). | - |
| Max Tokens | Number | Cap on the length of each generated summary segment. Currently managed automatically by the node; falls back to 128 for the small model and 256 for the medium model. | 128 (small) / 256 (medium) |
| Run | Event | Triggers the node to start summarizing. | - |
Outputs
| Output | Type | Description |
|---|---|---|
| Output | Text | The final summary. If validation fails, this contains an error object such as { error: 'Task must be a string' } instead. |
| Done | Event | Fires when the node has finished running. |
Runtime behavior and defaults
- The node only runs when the Run event is received, and fires Done when processing completes.
- Model defaults to
small. - Task must be a string. If it is not, the node outputs
{ error: 'Task must be a string' }. - Input must be a string or an array of strings. A single string is treated as one document. Anything else produces
{ error: 'Input must be a string or an array of strings' }. - When given multiple documents, the node summarizes each one independently and then combines them into a single summary, preserving important distinctions between documents.
- Token cost is the sum of all internal generation calls (chunk summaries plus combine passes) and is billed when the node completes.
Example
Summarize one or more documents with a task-focused summary:
- Add an AI Summarize node to your workflow.
- Connect a text source (for example a Text node or a loaded document) to the Input socket. To summarize several documents at once, connect an array of strings instead.
- In the node panel, set the Task, for example:
Summarize the main arguments, key decisions, and any deadlines mentioned. - Optionally change the Model (the default
smallworks well for most content). - Connect a trigger (such as a Button node) to the Run event socket.
- Connect the Output socket to a Text Display node to read the summary, and use the Done event to trigger any downstream nodes that depend on the finished summary.