Intent Matcher
Classify the user's message into one of several defined intents using AI-powered semantic matching, then route to the appropriate branch.
The Intent Matcher node uses AI to classify the user's last message into one of the intents you define, then routes the conversation to the matching branch. Intent Matcher's goal is to understand meaning with the use of AI model – it can match "I need to send something back" to a return_request intent even though none of those keywords appear in the intent definition. The AI's understanding of the meaning is based on the description of the "Trigger situation", so it's a crucial part of setting up this node.
Intent Matcher makes conversation flows more predictable than free-form LLM routing. The AI is used only to recognise what the user wants – which it will usually, though not always, get right – while what happens next is entirely under your control: each recognised intent maps to a concrete scenario (branch) you designed, rather than to whatever the model decides to generate. Even when the classification is wrong or uncertain, the conversation still lands in one of your predefined branches – the matched intent or the Fallback – so the set of possible outcomes is always known in advance.
Available in: Conversational Flows
Configuration
| Field | Description |
|---|---|
| AI model | The model used for intent classification. Configured under AI Models. |
| Intents | One or more named intents, each with a description of what it covers |
| Fallback branches | There are two fallback scenarios, one when no intent matches confidently, and one on error (e.g. AI model is unresponsive). |
Defining intents
Each intent has:
- Name – an internal identifier (e.g.
return_request,order_status,greeting) - Description – a plain-language explanation of what this intent covers. This is what the AI uses to classify – write it clearly and cover common phrasings.
Example descriptions:
| Intent name | Description |
|---|---|
return_request | The user wants to return a product, get a refund, or send something back |
order_status | The user is asking about the status, location, or delivery date of an order |
human_handover | The user wants to speak with a human agent or customer support representative |
greeting | The user is saying hello, hi, or opening the conversation |
Use Intent Matcher for conversational input where you can't predict exact phrasing.
Non-determinism note
Because Intent Matcher uses an AI model, the same input may occasionally be classified differently across runs. To mitigate this:
- Write clear, mutually exclusive intent descriptions
- Keep intents focused – avoid overlapping descriptions
- Test with varied phrasings before publishing
Always design your Fallback branch to handle gracefully – a friendly "I didn't quite catch that, could you rephrase?" is better than a dead end.