Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Structures communes dans un AWS Lambda fonction pour
Dans la réponse Lambda, un certain nombre de structures se reproduisent. Des détails sur ces structures communes sont fournis dans cette section.
Intention
"intent": { "confirmationState": "Confirmed | Denied | None", "name":
string
, "slots": { // see Emplacements for details about the structure }, "state": "Failed | Fulfilled | FulfillmentInProgress | InProgress | ReadyForFulfillment | Waiting", "kendraResponse": { // Only present when intent is KendraSearchIntent. For details, see // https://docs.aws.amazon.com/kendra/latest/dg/API_Query.html#API_Query_ResponseSyntax } }
Le intent
champ est mappé à un objet avec les champs suivants :
Indique si l'utilisateur a confirmé les créneaux correspondant à l'intention et si l'intention est prête à être exécutée. Les valeurs suivantes sont possibles :
Confirmed
— L'utilisateur confirme que les valeurs des emplacements sont correctes.
Denied
— L'utilisateur indique que les valeurs des emplacements sont incorrectes.
None
— L'utilisateur n'a pas encore atteint le stade de confirmation.
Nom de l'intention.
Informations sur les créneaux nécessaires pour atteindre l'objectif. Voir Emplacements pour plus de détails sur la structure.
Indique l'état d'exécution de l'intention. Les valeurs suivantes sont possibles :
Failed
— Le bot n'a pas atteint son objectif.
Fulfilled
— Le bot a terminé de remplir son intention.
FulfillmentInProgress
— Le bot est en train de réaliser son intention.
InProgress
— Le bot est en train de déterminer les valeurs des créneaux nécessaires pour atteindre l'objectif.
ReadyForFulfillment
— Le bot a obtenu toutes les valeurs des créneaux correspondant à l'intention et est prêt à l'exécuter.
Waiting
— Le bot attend une réponse de l'utilisateur (limité aux conversations en streaming).
Contient des informations sur les résultats de la requête de recherche Kendra. Ce champ n'apparaît que si l'intention est uneKendraSearchIntent
. Consultez la syntaxe de réponse dans l'APIappel Query pour Kendra pour plus d'informations.
Emplacements
Le slots
champ existe au sein d'une intent
structure et est mappé à une structure dont les clés sont les noms des emplacements prévus à cet effet. Si l'emplacement n'est pas un emplacement à valeurs multiples (voir Utilisation de plusieurs valeurs dans un emplacement pour plus de détails), il est mappé à une structure au format suivant. Notez que c'shape
est le casScalar
.
{
slot name
: { "shape": "Scalar", "value": { "originalValue":string
, "interpretedValue":string
, "resolvedValues": [string
, ... ] } } }
Si l'emplacement est un emplacement à valeurs multiples, l'objet auquel il est mappé contient un autre champ appelévalues
, qui est mappé à une liste de structures, chacune contenant des informations sur un emplacement constituant l'emplacement à valeurs multiples. Le format de chaque objet de la liste correspond à celui de l'objet auquel un emplacement normal est mappé. Notez que shape
c'est le List
cas, mais que shape
le composant se trouve sous l'values
estScalar
.
{
slot name
: { "shape": "List", "value": { "originalValue":string
, "interpretedValue":string
, "resolvedValues": [string
, ... ] }, "values": [ { "shape": "Scalar", "value": { "originalValue":string
, "interpretedValue":string
, "resolvedValues": [string
, ... ] } }, { "shape": "Scalar", "value": { "originalValue":string
, "interpretedValue":string
, "resolvedValues": [string
, ... ] } }, ... ] }
Les champs de l'objet slot sont décrits ci-dessous :
La forme de la fente. Cette valeur correspond à la List
présence de plusieurs valeurs dans le slot (voir Utilisation de plusieurs valeurs dans un emplacement pour plus de détails), mais c'est le cas dans le Scalar
cas contraire.
Un objet contenant des informations sur la valeur fournie par l'utilisateur pour un emplacement et sur l'interprétation d'Amazon Lex, au format suivant :
{ "originalValue":
string
, "interpretedValue":string
, "resolvedValues": [string
, ... ] }
Les champs sont décrits ci-dessous :
-
originalValue— La partie de la réponse de l'utilisateur à la demande d'emplacement déterminée par Amazon Lex est liée à la valeur de l'emplacement.
-
interpretedValue— La valeur qu'Amazon Lex détermine pour l'emplacement, en fonction des données saisies par l'utilisateur.
-
resolvedValues— Une liste de valeurs définies par Amazon Lex comme des résolutions possibles pour les données saisies par l'utilisateur.
Liste d'objets contenant des informations sur les emplacements qui constituent l'emplacement à valeurs multiples. Le format de chaque objet correspond à celui d'un emplacement normal, avec les value
champs shape
et décrits ci-dessus. values
n'apparaît que si le slot est composé de plusieurs valeurs (voir Utilisation de plusieurs valeurs dans un emplacement pour plus de détails). L'JSONobjet suivant montre deux emplacements de composants :
"values": [ { "shape": "Scalar", "value": { "originalValue": string, "interpretedValue":
string
, "resolvedValues": [string
, ... ] } }, { "shape": "Scalar", "value": { "originalValue": string, "interpretedValue":string
, "resolvedValues": [string
, ... ] } }, ... ]
État de la session
Le sessionState
champ est mappé à un objet contenant des informations sur l'état de la conversation avec l'utilisateur. Les champs réels qui apparaissent dans l'objet dépendent du type d'action de dialogue. Consultez Champs obligatoires dans la réponse les champs obligatoires dans une réponse Lambda. Le format de l'sessionState
objet est le suivant :
"sessionState": { "activeContexts": [ { "name":
string
, "contextAttributes": {string
:string
}, "timeToLive": { "timeToLiveInSeconds":number
, "turnsToLive":number
} }, ... ], "sessionAttributes": {string
:string
, ... }, "runtimeHints": { "slotHints": {intent name
: {slot name
: { "runtimeHintValues": [ { "phrase":string
}, ... ] }, ... }, ... } }, "dialogAction": { "slotElicitationStyle": "Default | SpellByLetter | SpellByWord", "slotToElicit":string
, "type": "Close | ConfirmIntent | Delegate | ElicitIntent | ElicitSlot" }, "intent": { // see Intention for details about the structure }, "originatingRequestId":string
}
Les champs sont décrits ci-dessous :
Liste d'objets contenant des informations sur un contexte utilisé par un utilisateur au cours d'une session. Utilisez des contextes pour faciliter et contrôler la reconnaissance des intentions. Pour plus d'informations sur les contextes, consultezDéfinition du contexte d'intention pour votre bot Lex V2. Chaque objet est formaté comme suit :
{ "name":
string
, "contextAttributes": {string
:string
}, "timeToLive": { "timeToLiveInSeconds":number
, "turnsToLive":number
} }
Les champs sont décrits ci-dessous :
-
name — Le nom du contexte.
-
contextAttributes— Un objet contenant les noms des attributs du contexte et les valeurs auxquelles ils sont mappés.
-
timeToLive— Objet qui indique la durée pendant laquelle le contexte reste actif. Cet objet peut contenir un ou les deux champs suivants :
-
timeToLiveInSeconds— Le nombre de secondes pendant lesquelles le contexte reste actif.
-
turnsToLive— Le nombre de tours pendant lesquels le contexte reste actif.
-
Une carte de paires clé/valeur représentant des informations contextuelles spécifiques à la session. Pour de plus amples informations, veuillez consulter Configuration des attributs de session pour votre bot Lex V2. L'objet est formaté comme suit :
{
string
:string
, ... }
Fournit des indications sur les phrases qu'un client est susceptible d'utiliser pour désigner un emplacement afin d'améliorer la reconnaissance audio. Les valeurs que vous indiquez dans les indices améliorent la reconnaissance audio de ces valeurs par rapport à des mots au son similaire. Le format de l'runtimeHints
objet est le suivant :
{ "slotHints": {
intent name
: {slot name
: { "runtimeHintValues": [ { "phrase":string
}, ... ] }, ... }, ... } }
Le slotHints
champ correspond à un objet dont les champs sont les noms des intentions du bot. Chaque nom d'intention correspond à un objet dont les champs sont les noms des emplacements correspondant à cette intention. Chaque nom d'emplacement correspond à une structure comportant un seul champruntimeHintValues
, qui est une liste d'objets. Chaque objet contient un phrase
champ correspondant à un indice.
Détermine la prochaine action à exécuter par Amazon Lex V2. Le format de l'objet est le suivant :
{ "slotElicitationStyle": "Default | SpellByLetter | SpellByWord", "slotToElicit":
string
, "type": "Close | ConfirmIntent | Delegate | ElicitIntent | ElicitSlot" }
Les champs sont décrits ci-dessous :
-
slotElicitationStyle— Détermine la manière dont Amazon Lex V2 interprète l'entrée audio de l'utilisateur si
dialogAction
c'estElicitSlot
letype
cas. Pour de plus amples informations, veuillez consulter Capture des valeurs des créneaux avec des styles d'orthographe pendant la conversation. Les valeurs suivantes sont possibles :Default
— Amazon Lex V2 interprète l'entrée audio de la manière par défaut pour remplir un créneau.SpellByLetter
— Amazon Lex V2 écoute l'orthographe de la valeur de l'emplacement donnée par l'utilisateur.SpellByWord
— Amazon Lex V2 écoute l'orthographe de la valeur de l'emplacement par l'utilisateur à l'aide de mots associés à chaque lettre (par exemple, « a as in apple »). -
slotToElicit— Définit l'emplacement à obtenir auprès de l'utilisateur si le nom
type
dedialogAction
estElicitSlot
-
type — Définit l'action que le bot doit exécuter. Les valeurs suivantes sont possibles :
Delegate
— Laisse Amazon Lex V2 déterminer l'étape suivante.ElicitIntent
— Invite le client à exprimer son intention.ConfirmIntent
— Confirme les valeurs des créneaux du client et indique si l'intention est prête à être exécutée.ElicitSlot
— Invite le client à fournir une valeur de créneau pour une intention.Close
— Met fin au processus de réalisation des intentions.
Voir Intention pour la structure du intent
champ.
Identifiant unique pour la demande. Ce champ est facultatif pour la réponse Lambda.