interactionmodel

package
v0.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 16, 2023 License: Apache-2.0 Imports: 0 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DelegationStrategyType

type DelegationStrategyType string

DelegationStrategyType Enumerates delegation strategies used to control automatic dialog management through the defined dialog model. When no delegation strategies are defined, the value SKILL_RESPONSE is assumed.

func DelegationStrategyType_ALWAYS

func DelegationStrategyType_ALWAYS() DelegationStrategyType

func DelegationStrategyType_SKILL_RESPONSE

func DelegationStrategyType_SKILL_RESPONSE() DelegationStrategyType

type Dialog

type Dialog struct {
	// Defines a delegation strategy for the dialogs in this dialog model.
	DelegationStrategy *DelegationStrategyType `json:"delegationStrategy,omitempty"`
	// List of intents that have dialog rules associated with them. Dialogs can also span multiple intents.
	Intents []*DialogIntents `json:"intents,omitempty"`
}

Dialog Defines dialog rules e.g. slot elicitation and validation, intent chaining etc.

type DialogIntents

type DialogIntents struct {
	// Name of the intent that has a dialog specification.
	Name string `json:"name,omitempty"`
	// Defines an intent-specific delegation strategy for this dialog intent. Overrides dialog-level setting.
	DelegationStrategy *DelegationStrategyType `json:"delegationStrategy,omitempty"`
	// List of slots that have dialog rules.
	Slots []*DialogSlotItems `json:"slots,omitempty"`
	// Describes whether confirmation of the intent is required.
	ConfirmationRequired bool                  `json:"confirmationRequired,omitempty"`
	Prompts              *DialogIntentsPrompts `json:"prompts,omitempty"`
}

type DialogIntentsPrompts

type DialogIntentsPrompts struct {
	// Enum value in the dialog_slots map to reference the elicitation prompt id.
	Elicitation string `json:"elicitation,omitempty"`
	// Enum value in the dialog_slots map to reference the confirmation prompt id.
	Confirmation string `json:"confirmation,omitempty"`
}

DialogIntentsPrompts Collection of prompts for this intent.

type DialogPrompts

type DialogPrompts struct {
	// Reference to a prompt-id to use If this slot value is missing.
	Elicitation string `json:"elicitation,omitempty"`
	// Reference to a prompt-id to use to confirm the slots value.
	Confirmation string `json:"confirmation,omitempty"`
}

DialogPrompts Dialog prompts associated with this slot i.e. for elicitation and/or confirmation.

type DialogSlotItems

type DialogSlotItems struct {
	// The name of the slot that has dialog rules associated with it.
	Name string `json:"name,omitempty"`
	// Type of the slot in the dialog intent.
	Type_ string `json:"type,omitempty"`
	// Describes whether elicitation of the slot is required.
	ElicitationRequired bool `json:"elicitationRequired,omitempty"`
	// Describes whether confirmation of the slot is required.
	ConfirmationRequired bool           `json:"confirmationRequired,omitempty"`
	Prompts              *DialogPrompts `json:"prompts,omitempty"`
	// List of validations for the slot. if validation fails, user will be prompted with the provided prompt.
	Validations []*SlotValidation `json:"validations,omitempty"`
}

type FallbackIntentSensitivity

type FallbackIntentSensitivity struct {
	Level *FallbackIntentSensitivityLevel `json:"level,omitempty"`
}

FallbackIntentSensitivity Denotes skill's sensitivity for out-of-domain utterances.

type FallbackIntentSensitivityLevel

type FallbackIntentSensitivityLevel string

FallbackIntentSensitivityLevel Skill's sensitivity level for out-of-domain utterances. By default, the sensitivity level of the skill is set to ‘LOW’. As the sensitivity level for a skill is increased, more customer utterances that are not supported by the skill will be captured by AMAZON.FallbackIntent.

func FallbackIntentSensitivityLevel_HIGH

func FallbackIntentSensitivityLevel_HIGH() FallbackIntentSensitivityLevel

func FallbackIntentSensitivityLevel_LOW

func FallbackIntentSensitivityLevel_LOW() FallbackIntentSensitivityLevel

func FallbackIntentSensitivityLevel_MEDIUM

func FallbackIntentSensitivityLevel_MEDIUM() FallbackIntentSensitivityLevel

type Intent

type Intent struct {
	// Name to identify the intent.
	Name string `json:"name,omitempty"`
	// List of slots within the intent.
	Slots []*SlotDefinition `json:"slots,omitempty"`
	// Phrases the user can speak e.g. to trigger an intent or provide value for a slot elicitation.
	Samples []string `json:"samples,omitempty"`
}

Intent The set of intents your service can accept and process.

type InteractionModelData

type InteractionModelData struct {
	Version          string                  `json:"version,omitempty"`
	Description      string                  `json:"description,omitempty"`
	InteractionModel *InteractionModelSchema `json:"interactionModel,omitempty"`
}

type InteractionModelSchema

type InteractionModelSchema struct {
	LanguageModel *LanguageModel `json:"languageModel,omitempty"`
	Dialog        *Dialog        `json:"dialog,omitempty"`
	// List of prompts.
	Prompts []*Prompt `json:"prompts,omitempty"`
}

type LanguageModel

type LanguageModel struct {
	// Invocation name of the skill.
	InvocationName     string              `json:"invocationName,omitempty"`
	Types              []*SlotType         `json:"types,omitempty"`
	Intents            []*Intent           `json:"intents,omitempty"`
	ModelConfiguration *ModelConfiguration `json:"modelConfiguration,omitempty"`
}

LanguageModel Define the language model.

type ModelConfiguration

type ModelConfiguration struct {
	FallbackIntentSensitivity *FallbackIntentSensitivity `json:"fallbackIntentSensitivity,omitempty"`
}

ModelConfiguration Global configurations applicable to a skill's model.

type MultipleValuesConfig

type MultipleValuesConfig struct {
	// Boolean that indicates whether this slot can capture multiple values.
	Enabled bool `json:"enabled,omitempty"`
}

MultipleValuesConfig Configuration object for multiple values capturing behavior for this slot.

type Prompt

type Prompt struct {
	// The prompt id, this id can be used from dialog definitions.
	Id string `json:"id,omitempty"`
	// List of variations of the prompt, each variation can be either a text string or a well defined ssml string depending on the type defined.
	Variations []*PromptItems `json:"variations,omitempty"`
}

type PromptItems

type PromptItems struct {
	Type_ *PromptItemsType `json:"type,omitempty"`
	// Specifies the prompt.
	Value string `json:"value,omitempty"`
}

type PromptItemsType

type PromptItemsType string

PromptItemsType Prompt can be specified in different formats e.g. text, ssml.

func PromptItemsType_PlainText

func PromptItemsType_PlainText() PromptItemsType

func PromptItemsType_SSML

func PromptItemsType_SSML() PromptItemsType

type SlotDefinition

type SlotDefinition struct {
	// The name of the slot.
	Name string `json:"name,omitempty"`
	// The type of the slot. It can be a built-in or custom type.
	Type_ string `json:"type,omitempty"`
	// Configuration object for multiple values capturing behavior for this slot.
	MultipleValues *MultipleValuesConfig `json:"multipleValues,omitempty"`
	// Phrases the user can speak e.g. to trigger an intent or provide value for a slot elicitation.
	Samples []string `json:"samples,omitempty"`
}

SlotDefinition Slot definition.

type SlotType

type SlotType struct {
	// The name of the custom slot type.
	Name string `json:"name,omitempty"`
	// List of expected values. Values outside the list are still returned.
	Values        []*TypeValue   `json:"values,omitempty"`
	ValueSupplier *ValueSupplier `json:"valueSupplier,omitempty"`
}

SlotType Custom slot type to define a list of possible values for a slot. Used for items that are not covered by Amazon's built-in slot types.

type SlotValidation

type SlotValidation struct {
	// The exact type of validation e.g. isLessThan,isGreaterThan etc.
	Type_ string `json:"type,omitempty"`
	// The prompt id that should be used if validation fails.
	Prompt string `json:"prompt,omitempty"`
}

SlotValidation Validation on a slot with support for prompt and confirmation.

type TypeValue

type TypeValue struct {
	Id   string           `json:"id,omitempty"`
	Name *TypeValueObject `json:"name,omitempty"`
}

TypeValue The value schema in type object of interaction model.

type TypeValueObject

type TypeValueObject struct {
	Value    string   `json:"value,omitempty"`
	Synonyms []string `json:"synonyms,omitempty"`
}

TypeValueObject The object that contains individual type values.

type ValueSupplier

type ValueSupplier struct {
	// The exact type of validation e.g.CatalogValueSupplier etc.
	Type_ string `json:"type,omitempty"`
}

ValueSupplier Supplier object to provide slot values.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL