Skip to main content

AI & LLM Nodes

AI nodes bring the power of large language models and AI capabilities to your workflows. Generate text, analyze images, transcribe audio, create embeddings, and route decisions with AI.

LLM Node

The core AI node for text generation and reasoning.

Providers & Models

ProviderModels
OpenAIgpt-4.1, gpt-4.1-mini, gpt-4.1-nano, gpt-4o, gpt-4o-mini, o4-mini, o3, o3-mini
Anthropicclaude-opus-4-5, claude-sonnet-4-5, claude-haiku-4-5
Googlegemini-3-pro-preview, gemini-3-flash-preview, gemini-2.5-pro, gemini-2.5-flash
Coherecommand-a-03-2025, command-r-plus, command-r
Hugging FaceLlama-4-Scout, Llama-4-Maverick, Qwen-3-235B, DeepSeek-R1
x.aigrok-3, grok-3-fast, grok-2-vision

Configuration

{
provider: "openai",
model: "gpt-4.1",
systemPrompt: "You are a helpful assistant that...",
prompt: "{{trigger.body.question}}",
temperature: 0.7,
maxTokens: 2048,
topP: 1.0,
outputVariable: "llm_response"
}
FieldDescription
providerAI provider to use
modelSpecific model
systemPromptSystem instructions (optional)
promptUser prompt (supports variables)
temperatureCreativity (0-2, lower = deterministic)
maxTokensMaximum response length
topPNucleus sampling parameter
outputVariableVariable name for result

Extended Thinking

Some models support extended thinking/reasoning:

{
provider: "anthropic",
model: "claude-sonnet-4-5",
enableThinking: true,
thinkingBudget: 10000 // Max thinking tokens
}

Supported models:

  • OpenAI: o3, o3-mini, gpt-4.1
  • Anthropic: claude-opus-4-5, claude-sonnet-4-5
  • Google: gemini-3-pro, gemini-3-flash
  • Hugging Face: DeepSeek-R1

Output

{
response: "The answer to your question is...",
usage: {
inputTokens: 150,
outputTokens: 450,
totalTokens: 600
}
}

Vision Node

Analyze images with AI vision models.

Providers

ProviderModels
OpenAIgpt-4o, gpt-4o-mini
Anthropicclaude-opus-4-5, claude-sonnet-4-5
Googlegemini-3-pro, gemini-3-flash
x.aigrok-2-vision

Operations

OperationDescription
analyzeAnalyze and describe image content
generateGenerate images (provider-dependent)

Configuration

{
provider: "openai",
model: "gpt-4o",
operation: "analyze",
imageInput: "{{files_node.output.file}}", // URL or base64
prompt: "Describe what you see in this image",
maxTokens: 1000,
outputVariable: "vision_result"
}

Use Cases

  • Product image analysis
  • Document OCR and extraction
  • Visual quality inspection
  • Chart and graph interpretation
  • UI screenshot analysis

Audio Input Node (Speech-to-Text)

Transcribe audio to text.

Providers

ProviderModels
OpenAIwhisper-1
Deepgramnova-2, nova, enhanced, base

Configuration

{
provider: "openai",
model: "whisper-1",
inputName: "audio_file",
language: "en", // Optional, auto-detected
punctuate: true,
diarize: false, // Speaker identification
outputVariable: "transcription",
label: "Upload Audio",
description: "Audio file to transcribe"
}

Supported Formats

  • MP3, MP4, MPEG, MPGA
  • WAV, WEBM
  • M4A, OGG, FLAC

Output

{
text: "Hello, this is the transcribed audio...",
language: "en",
duration: 45.2,
segments: [...] // With timestamps if requested
}

Audio Output Node (Text-to-Speech)

Generate speech from text.

Providers

ProviderVoices
OpenAIalloy, echo, fable, onyx, nova, shimmer
ElevenLabs100+ voices, custom voice cloning
Deepgramaura, aura-asteria, aura-luna

Configuration

{
provider: "elevenlabs",
voice: "rachel",
textInput: "{{llm_node.output.response}}",
speed: 1.0,
stability: 0.5,
similarityBoost: 0.75,
outputFormat: "mp3",
returnAsUrl: true,
outputVariable: "audio_output"
}

Output Options

OptionDescription
returnAsUrl: trueReturns URL to audio file
returnAsUrl: falseReturns base64-encoded audio

Audio Transcription Node

Advanced transcription with more options.

Configuration

{
audioSource: "{{input.audio_url}}",
task: "transcribe", // or "translate"
language: "en",
outputFormat: "json", // text, json, srt, vtt
timestamps: true,
prompt: "Technical discussion about...",
temperature: 0.2,
outputVariable: "transcript"
}

Tasks

TaskDescription
transcribeTranscribe in original language
translateTranscribe and translate to English

Embeddings Node

Generate vector embeddings for semantic search.

Providers

ProviderModels
OpenAItext-embedding-3-small, text-embedding-3-large
Cohereembed-english-v3.0, embed-multilingual-v3.0
Googletext-embedding-004

Configuration

{
provider: "openai",
model: "text-embedding-3-small",
input: "{{node.output.text}}",
batchMode: false,
outputVariable: "embeddings"
}

Batch Mode

For multiple texts:

{
batchMode: true,
input: ["Text 1", "Text 2", "Text 3"]
}

Output

{
embeddings: [0.0123, -0.0456, 0.0789, ...], // 1536 dimensions
model: "text-embedding-3-small",
usage: { totalTokens: 15 }
}

Router Node

Use AI to classify inputs and route to different paths.

Configuration

{
provider: "openai",
model: "gpt-4o-mini",
systemPrompt: "Classify the user's intent",
prompt: "{{trigger.body.message}}",
routes: [
{ value: "sales", label: "Sales inquiry" },
{ value: "support", label: "Technical support" },
{ value: "billing", label: "Billing question" },
{ value: "other", label: "Other/unknown" }
],
defaultRoute: "other",
temperature: 0.3,
outputVariable: "route"
}

How It Works

  1. LLM analyzes the input
  2. Classifies into one of the defined routes
  3. Workflow branches based on classification

Output

{
route: "support",
confidence: 0.92,
reasoning: "The user mentioned a technical error..."
}

Use Cases

  • Intent classification for chatbots
  • Ticket routing
  • Content categorization
  • Lead qualification

Knowledge Base Query Node

Search your knowledge bases with semantic similarity.

Configuration

{
knowledgeBaseId: "kb_abc123",
query: "{{user.question}}",
topK: 5,
threshold: 0.7,
outputVariable: "search_results"
}
FieldDescription
knowledgeBaseIdTarget knowledge base
querySearch query
topKNumber of results
thresholdMinimum similarity (0-1)

Output

{
results: [
{
content: "Relevant chunk text...",
score: 0.92,
metadata: {
documentId: "doc_123",
fileName: "guide.pdf",
pageNumber: 5
}
},
// ... more results
],
totalMatches: 5
}

OCR Extraction Node

Extract text from images using OCR.

Configuration

{
imageSource: "{{input.image_url}}",
languages: ["en", "es"],
psm: 3, // Page segmentation mode
outputFormat: "text", // text, json, hocr
confidenceThreshold: 0.6,
preprocessing: {
deskew: true,
denoise: true,
contrast: "auto"
},
outputVariable: "ocr_result"
}

Output

{
text: "Extracted text content...",
confidence: 0.94,
blocks: [
{
text: "Header text",
bbox: { x: 10, y: 10, width: 200, height: 30 },
confidence: 0.98
}
]
}

Image Generation Node

Generate images with AI.

Providers

ProviderModels
OpenAIdall-e-3, dall-e-2
Replicateflux-pro, flux-schnell
Stability AIstable-diffusion-3, sdxl
FALVarious models

Operations

OperationDescription
generateCreate new image from prompt
inpaintEdit parts of an image
outpaintExtend image beyond borders
upscaleIncrease image resolution
removeBackgroundRemove image background
styleTransferApply style to image

Configuration

{
provider: "openai",
model: "dall-e-3",
operation: "generate",
prompt: "A serene mountain landscape at sunset",
negativePrompt: "blurry, low quality",
size: "1024x1024",
quality: "hd",
style: "vivid",
n: 1,
outputFormat: "url",
outputVariable: "generated_image"
}

Video Generation Node

Generate videos with AI.

Providers

ProviderModels
Google Veoveo-2
Runwaygen-3
Lumadream-machine
ReplicateVarious

Configuration

{
provider: "runway",
model: "gen-3",
prompt: "A cat playing piano",
imageInput: "{{input.reference_image}}", // Optional
duration: 4,
aspectRatio: "16:9",
loop: false,
outputFormat: "mp4",
outputVariable: "video_output"
}

Best Practices

Model Selection

TaskRecommended
Complex reasoningclaude-opus-4-5, o3, gpt-4.1
Fast responsesgpt-4o-mini, claude-haiku-4-5, gemini-flash
Vision tasksgpt-4o, claude-sonnet-4-5
Code generationclaude-sonnet-4-5, gpt-4.1
Cost-sensitivegpt-4o-mini, gemini-flash-lite

Temperature Guidelines

Use CaseTemperature
Factual Q&A0.0 - 0.3
Code generation0.2 - 0.4
General assistant0.5 - 0.7
Creative writing0.7 - 1.0
Brainstorming0.9 - 1.2

Error Handling

Always handle potential AI failures:

// Use conditional node after LLM
condition: "{{llm_node.output.error}} == null";

Cost Optimization

  • Use smaller models for simple tasks
  • Set appropriate maxTokens limits
  • Cache responses when possible
  • Use embeddings for semantic search vs. LLM comparison