Intent Ambiguity
Last updated
Last updated
If your intents have a very similar training set and potentially compete in classification, this is called "intent ambiguation". It is possible that the AI might not be able to differentiate between them as easily.
Using the example of a music school, the VA (Virtual Assistant) is helping interested new students to sign up for a lesson for their preferred instrument.
The VA will ask the user what instrument they’d like to play and the answer will be most likely along the lines of “I’d like to play the flute”, “I want to play the piano”.
However, the training set is very similar and there is a possibility that the AI won’t be able to classify correctly.
Therefore, we are going to enable the intent ambiguation feature, that allows us to clarify with the user if they meant playing the piano or playing the flute.
The feature can be turned on and off in the Classification node right below the intents. Once enabled, we have to add a new parameter that will prompt the user for clarification.
Due to the ambiguation in the entity values, you will need to choose a multi-value parameter.
To do that, upon parameter creation, click on the three dots next to the value and select "Set as multi-value".
We will add a Speak node or Collect Input node where we have to add a phrase prior to the parameter that gives our the intent names, such as “Do you want to” and then we add the parameter.
The parameter, in this case, $INSTRUMENT_TYPE, will give out the names of the intents. The intents in this agent are named "play the flute" and the other "play the piano" - coming together in this Speak node's prompt as "Do you want to play the flute or play the piano?".
To enable the user to clarify, we connect the Speak node with the prompt back to the Listen node to allow the user's input to be classified again.
Currently, the limit of ambiguation is between the closest two competing intents. Even if you have more than two intents with alike training set, it will only re-prompt the two intents that our algorithm defines as closest to the user's query.
For more information on how to prevent intent ambiguity, please click here.