Conversation Flow

Overview

A conversation flow determines how it interacts with users and navigates between different conversation paths. 
This section provides a step-by-step breakdown of how the chatbot starts, processes user input, and determines the next node in the conversation.

How Does the Conversation Flow Start?

The chatbot’s flow is initiated when the user types the first message, unless the chatbot has been set to proactive mode.
If proactive mode is enabled, the chatbot initiates the conversation. If proactive mode is disabled, the chatbot waits for the user to send the first message. Once triggered, the chatbot typically starts at the top node of the flow, which is usually named “Greet”.

How the Chatbot Determines the Next Node?

After starting at the Greet Node, the chatbot follows a structured process to determine the next appropriate node based on the user’s input.

Decision-Making Process:

1. Check for Small Talk Matches

The chatbot first evaluates whether the user’s input matches Small Talk Nodes (e.g., “Hello,” “Thank you,” “Goodbye”).

If a match is found, the chatbot proceeds to the corresponding Small Talk Node.

2. Check for Global or Q&A Node Matches

If the input does not match Small Talk Nodes, the chatbot then checks for Global Nodes or Q&A Nodes.

If a match is found, the chatbot directs the conversation to the corresponding Global or Q&A Node.

3. Evaluate Child Nodes of the Current Node

If no match is found in Small Talk, Global, or Q&A Nodes, the chatbot evaluates the child nodes of the current node. This process involves multiple steps:

a) Verify Node Requirements

The chatbot checks if all requirements listed for each child node are met (e.g., authentication checks, conditional logic).

If any requirement is not met, that node is assigned a score of zero and is skipped.

b) Compute a Raw Score for Matching

The chatbot calculates how closely the user’s input matches each child node.

If a classifier is used, Example-Based Matching is ignored.

c) Adjust the Raw Score Based on Weighting

The chatbot applies matching weights to fine-tune the selection process.

d) Select the Node with the Highest Score

The chatbot moves to the node with the highest adjusted score, ensuring the most relevant response is chosen.

Visual Representation of Conversation Flow

 

 

Summary of Conversation Flow Decision Logic

StepDecision Process
1. Small Talk NodesIf the user’s input matches a small talk phrase (e.g., “Thank you”), the chatbot goes to the corresponding Small Talk Node.
2. Global or Q&A NodesIf no small talk match is found, the chatbot checks for matches in Global or Q&A Nodes.
3. Evaluate Child NodesIf no match is found in previous steps, the chatbot assesses child nodes of the current node.
4. Verify RequirementsChecks authentication and any conditions before proceeding.
5. Compute Matching ScoreThe chatbot calculates how well the user’s query matches each child node.
6. Adjust and Select NodeThe chatbot applies weight adjustments and moves to the highest-scoring node.

Choosing Among Multiple Matching Child Nodes

If multiple child nodes have a matching score above the threshold (as defined in the chatbot’s Basic Configuration), the chatbot follows these rules:

  1. The Node with the Highest Score is Chosen
    The chatbot selects the child node with the highest confidence score based on input matching.
  2. Tiebreaker: Flow Order
    If two or more nodes have identical scores, the chatbot selects the node that is placed higher in the flow structure.
    While this scenario is uncommon, it can happen when multiple child nodes have similar matching conditions.
  3. Optimizing Matching Logic
    If the chatbot frequently selects a node based on flow placement rather than relevance, consider adjusting node thresholds to ensure better decision-making.

Modifying threshold values helps prioritize nodes based on content relevance rather than their order in the flow.

 

Matching When a Node Has No Requirements or Examples

Some nodes may not have predefined requirements, classifiers, or example-based training data. The chatbot processes such nodes using default evaluation logic.

How the Chatbot Evaluates Nodes Without Defined Matching Criteria:

ScenarioHow the Chatbot Processes It
Node has no requirementsAssumes that all requirements are met.
Node has no classifier or examplesAssigns a default score just above the fallback threshold.
Node lacks requirements, examples, and classifierThe node is evaluated slightly above the fallback threshold, making it a low-priority match.

Impact on Chatbot Matching Behavior

If a chatbot has no training examples, no classifier, and no requirements, every node:

✔ Will always score just above the fallback threshold.

✔ May still be selected if no other nodes match better.

✔ Should be refined with examples or a classifier to improve accuracy.

Best Practices for Managing Node Matching

✔ Adjust Thresholds
Ensure that nodes are chosen based on matching relevance rather than flow placement.

 Define Examples or Classifiers
To improve accuracy, provide training examples or enable a classifier to refine how nodes are selected.

✔ Monitor & Test
Regularly review chatbot responses and tweak configurations if multiple nodes match frequently.

 

Published

Last updated

0
0