Skip to main content

Default Fallback Match

A Fallback Match Skill is a sub-type of the Default Skill Type.

This type of Skill is executed when both of the following requirements are met:

  1. A project's Base Corpus is unable to fulfil the user's request, and responds with a NO_MATCH response AND;
  2. All other Default Skills with higher priority did not handle the request or responded with a NO_MATCH response

Common use cases

A Fallback Match Skill must provide a response for any user input. It provides a final opportunity to respond to user input if no other Skills have been able to.

This type of Skill is commonly used for:

  • Elegant Failure to provide more interesting fallback responses than the standard "I'm sorry, I don't understand".
  • Generated Chitchat from a LLM (Large Language Model, eg. GPT) to ensure the Digital Person always responds with some interesting content.

Implementation requirements

A Fallback Match Skill only receives user input when none of the other Skills were matched, or those that were matched all responded with a NO_MATCH, indicating they did not have a valid response.

The Skill may be written using a supported third-party NLP Platform, or using the Skills SDK.

Implementation requirements for a Fallback Match Skill:

  • It must respond if executed.
  • It must respond with some content for the Digital Person to speak.
  • It must not respond with a NO_MATCH response as there are no subsequent Skills to handle such a response.

Creating a Fallback Match Skill

A Fallback Match Skill can be created using your preferred method:

Registering a Fallback Match Skill

It is recommended to use the Skill's name field to specify that it is a Fallback type, so that users know that it will be executed after all other Skills configured for a project.

skill-definition.json
{
"name": "My Skill",
"summary": "skill summary here",
"description": "",
// ... other skill properties
"config": {
"skillType": "DEFAULT",
"matchType": "FALLBACK"
}
}