Documentation Index
Fetch the complete documentation index at: https://documentation.uponai.com/llms.txt
Use this file to discover all available pages before exploring further.
What is a Transition Condition?
Transition conditions are used to determine whether and which node the agent will transition to. If no transition condition is met, the agent will stay in the current node. This is the most essential part of the conversation flow — it gives you the most control, and requires the most careful testing.Types of Transition Conditions
There are two types:- Prompt: The condition is a natural language prompt evaluated by the LLM
- Equation: The condition is a hardcoded mathematical equation — useful for testing if dynamic variables meet a certain condition
Prompt condition examples
Equation condition examples
You can only use variables that are passed in as dynamic variables for equation conditions. If you need to use information extracted by the LLM during the call, use prompt conditions instead.
Where to Define Transition Conditions
By node type:- Conversation, Function & Press Digit Node: Define conditions to transition out of the node
- Call Transfer Node: Select a destination node to transition to when transfer is unsuccessful
- Skip response: Select a destination node to transition to when the agent finishes speaking
- Global node: When enabled, must define the condition to transition into this node
How to Update Transition Conditions
Click on the node, then click the + button to add a transition condition. Choose either a prompt or equation condition. For equation conditions, the equation editor lets you:- Add equations with the Add equation button
- Delete equations with the trash icon
- Change ANY to ALL to require all equations to be true instead of just one
- Reorder equations by dragging the 6-dot handle
Check if a Dynamic Variable Exists
What to Write in a Transition Condition
Write conditions that are clear and self-contained — don’t rely heavily on the node instruction for context. Good examples:==, CONTAINS, NOT CONTAINS, and != are string comparisons — they do not require numerical input. All other comparison operators (>, <, etc.) require numerical input and will always evaluate to false if the input is not a number.Improve Transition Conditions
If you observe an incorrect transition:- Prompt engineer the conditions to be clearer
- Add transition fine-tune examples (see Finetune Examples guide)