Node Anatomy
Every node has a consistent structure:Node Categories
- Chat Models
- Chains
- Agents
- Tools
- Memory
- Vector Stores
Language models that power conversations:
- ChatOpenAI: OpenAI’s GPT models (3.5, 4, etc.)
- ChatAnthropic: Anthropic’s Claude models
- ChatOllama: Local models via Ollama
- AzureChatOpenAI: Azure OpenAI Service
- ChatGoogleGenerativeAI: Google’s Gemini models
- Model Name: Which model version to use
- Temperature: Creativity (0 = deterministic, 1 = creative)
- Max Tokens: Maximum response length
- Top P: Nucleus sampling parameter
Adding and Configuring Nodes
Open Node Palette
Click the + Add Node button on the canvas. This opens the node palette with all available components.
Use the search bar to quickly find nodes by name or category.
Select a Node
Browse by category or search for a specific node. Click to add it to the canvas.The node appears at your cursor position. You can also drag-and-drop from the palette.
Configure Parameters
Click on the node to view its configuration panel:
- Required parameters are marked and must be filled
- Optional parameters have default values
- Additional Parameters button reveals advanced settings
- Input anchors accept connections from other nodes
Node Input Types
Nodes accept different types of inputs:Input Anchors (Connections)
Input Anchors (Connections)
These are connection points that accept output from other nodes:
- Displayed as circles on the left side of nodes
- Type-checked (e.g.,
BaseChatModel,Tool,VectorStore) - Can be single or list (accepting multiple connections)
- Shows visual feedback on hover (compatible = green, incompatible = red)
model(BaseChatModel) - single connectiontools(Tool[]) - list, accepts multiple toolsmemory(BaseChatMemory) - single connection
Input Parameters (Direct Values)
Input Parameters (Direct Values)
These are form fields for direct configuration:Text Input: Simple string valuesNumber Input: Numeric values with validationSelect/Dropdown: Choose from predefined optionsJSON Input: Structured dataCode Editor: Write custom functionsFile Upload: Upload documents, images, or data filesCredential: Securely stored API keys and secrets
Variable Inputs
Variable Inputs
Parameters that support the
acceptVariable flag can use dynamic values:- Reference other node outputs:
{{nodeId.data.instance}} - Use global variables:
{{$vars.variableName}} - Runtime expressions:
{{question}}(user input)
Node Actions
Hover over a node to reveal action buttons:| Action | Icon | Description |
|---|---|---|
| Duplicate | 📋 | Create a copy of the node with same settings |
| Delete | 🗑️ | Remove node and all its connections |
| Info | ℹ️ | View node documentation and details |
You can also select nodes and press Delete or Backspace to remove them.
Advanced Node Features
Additional Parameters
Many nodes hide advanced settings behind the “Additional Parameters” button:Configure Advanced Settings
A dialog opens with optional parameters:
- Timeout settings
- Custom base URLs
- Advanced model parameters
- Retry logic
- Headers and metadata
Credentials
Nodes that require API keys use the credential system:Create Credential
- Click Connect Credential on the node
- Select Create New from the dropdown
- Enter your API key and give it a name
- Click Add
Node Versioning
Nodes are versioned to support updates and improvements:- Version badge: Shows current node version (e.g.,
v2,v3) - Outdated warning: Orange warning icon if newer version available
- Sync nodes: Button appears to upgrade all outdated nodes
- Breaking changes: Review changelog before upgrading
Upgrading Nodes
Upgrading Nodes
When a sync button appears:
- Click the Sync Nodes button (orange refresh icon)
- Flowise automatically updates all outdated nodes
- Incompatible connections are removed (review carefully!)
- Test your flow after upgrading
- Save the updated flow
Custom Nodes
Flowise allows creating custom nodes for specialized functionality:- Custom Tool
- Custom Loader
- Custom Function
Write JavaScript/Python functions that agents can call:
Connection Rules
Flowise enforces type safety when connecting nodes:Compatible Connections
✅ Allowed:- ChatOpenAI → Conversation Chain (model input)
- Calculator Tool → Agent (tools input)
- Vector Store → Retrieval QA Chain (vectorstore input)
- Document → Text Splitter → Embeddings → Vector Store
- Agent → Chat Model (wrong direction)
- Text Splitter → Agent (incompatible types)
- Multiple outputs to single input (unless input accepts lists)
List Inputs
Some inputs accept multiple connections: Thetools input accepts a list of tools, so multiple connections are valid.
Sticky Notes
Add documentation and comments to your canvas:Add Content
Click the note and type your documentation:
- Explain complex logic
- Add TODOs and reminders
- Document configuration decisions
- Add usage examples
Best Practices
Node Configuration
Node Configuration
- Use descriptive names for custom tools and functions
- Keep tool descriptions clear - LLMs use them to decide when to call tools
- Set reasonable token limits to control costs
- Use lower temperatures (0.1-0.3) for factual tasks, higher (0.7-0.9) for creative tasks
- Test with different model versions to find the right balance of cost and performance
Connection Patterns
Connection Patterns
- Keep data flow left-to-right when possible (easier to read)
- Group related nodes together visually
- Avoid crossing connections when possible
- Use consistent positioning (e.g., all LLMs on the right, all data sources on left)
Performance Tips
Performance Tips
- Enable caching on LLM nodes for repeated queries
- Use appropriate chunk sizes in text splitters (500-1000 tokens)
- Configure vector store batch sizes for bulk uploads
- Set timeouts on external API calls
- Use streaming for better user experience
Next Steps
Testing & Debugging
Learn how to test and debug your flows
Variables & Expressions
Use dynamic values in your nodes