Input Actions

An input action specifies the allowable intents that a user may give at this point in the dialog. It also specifies which actions should be taken in response to each intent, which is what effectively causes the dialog flow to branch. An input action may also specify what actions should be taken if no intent is recognized or if the intent is invalid for this input action.

Properties of an input action

Property Required? Description
name Required The name of this action, which may be referenced in other action lists within this story.
intents Required List of intents for this action. See below for Properties of each intent
alert_word_required Optional Set to true if the alert word should be spoken before recognizing any intents for this input action. The alert word is defined in model_config.yaml.
no_intent_actions Optional The actions to execute when a user’s input is not a valid intent anywhere in the model.
invalid_intent_actions Optional The actions to execute when an intent was recognized as valid for this model, but not for this point in the dialog (i.e. it is not listed under intents for this input action).
ambiguous_intent_actions Optional The actions to execute when multiple intents were recognized from the user’s input. This may be an indication of a poorly designed model.

Intent Properties

Property Required? Description
intent_id Required Filename (without extension) in the intents folder
domain_id Optional If the underlying Chosun (NLU) model supports domain classification, this field may be used to help differentiate intents with the same name from different domains, or to limit intent recognition to only when it is from the correct domain. If this field is specified, the associated actions will only be run if both the intent ID and domain ID match. If left unspecified (empty), this intent will match any domain. If the underlying Chosun model does not support domain classification, this field should be left empty.
required_slots Optional The names of any required slots for this intent. Diatheke will prompt the user for them if they have not yet been given.
slot_prompts Optional Override the default prompt for any required slots in this intent.
actions Required The actions to take when this intent is recognized.

For an example, see the List Filters story in the tutorial.