Stages
A Stage is an isolated prompting context, or if you like, a task or goal.
For example, the goal of a stage could be to ensure that a user understands a concept, which means the agent should explain it and answer the user’s questions until they are satisfied that the user understands it.
Or it could be to collect and validate a piece of information. It could even be just to greet the user.
Examples might be “collect x and y data”, “find out the biggest problem facing the user” or “help the user to set and refine a goal”.
The key here is that a Stage should be a single task or goal.
As a consequence, a stage may involve a single conversational turn or require multiple turns.
Note that in reality, the number of turns required to satisfy the goal of the stage can only be determined by the LLM as a result of interpreting the specific interaction between the agent and the user, according to the prompting.
iostack allows this process to happen naturally, according to the prompting, transcript and the user's responses.
What’s in a stage?
A Stage contains:
- Prompting - an authored prompting context, designed to elicit the specific behaviour and responses required from the LLM to achieve the aim of that stage.
- Variables - an optional list of information that can be updated by the LLM in the stage
- Integrations - an optional list of external integrations to trigger when entering or exiting the stage
- Navigation Instructions - conditional paths or transitions to other stages
Prompting
The stage contains relevant prompting to allow the LLM to interact with the user according to the aim of that specific stage.
Variables
The prompting can also leverage the intelligence of the LLM to collect data as variables.
The value of a variable can easily be included in prompting, enabling conditional navigation or conditional reasoning within the conversation based on values of variables updated earlier.
Integrations
Interactions with external systems for retrieving or sending data are performed using integrations. Integrations configured in a stage leverage the dynamics of transitions to determine when they should occur. Specifically, a stage can trigger an integration call when the conversation flow enters or exits the stage.
Navigation
Each stage also contains a list of possible transitions from that stage to other stages. In accordance with the prompting, the LLM can decide when the aim of a stage has been satisfied by selecting a transition to move on to another stage based on the ‘condition’ of a transition.