Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Strutture comuni in una AWS Lambda funzione per
All'interno della risposta Lambda, ci sono diverse strutture che si ripetono. I dettagli su queste strutture comuni sono forniti in questa sezione.
Intento
"intent": { "confirmationState": "Confirmed | Denied | None", "name":
string
, "slots": { // see Slot 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 } }
Il intent
campo è mappato su un oggetto con i seguenti campi:
Indica se l'utente ha confermato gli slot per l'intento e l'intento è pronto per l'adempimento. I valori possibili sono i seguenti:
Confirmed
— L'utente conferma che i valori degli slot sono corretti.
Denied
— L'utente indica che i valori dello slot non sono corretti.
None
— L'utente non ha ancora raggiunto la fase di conferma.
Il nome dell'intento.
Informazioni sugli slot necessari per soddisfare l'intento. Vedi Slot per i dettagli sulla struttura.
Indica lo stato di adempimento dell'intento. I valori possibili sono i seguenti:
Failed
— Il bot non è riuscito a soddisfare l'intento.
Fulfilled
— Il bot ha completato l'adempimento dell'intento.
FulfillmentInProgress
— Il bot è nel bel mezzo del raggiungimento dell'intento.
InProgress
— Il bot sta cercando di ottenere i valori dello slot necessari per soddisfare l'intento.
ReadyForFulfillment
— Il bot ha ottenuto tutti i valori dello slot per l'intento ed è pronto a soddisfare l'intento.
Waiting
— Il bot è in attesa di una risposta dall'utente (limitata alle conversazioni in streaming).
Contiene informazioni sui risultati della query di ricerca di Kendra. Questo campo viene visualizzato solo se l'intento è un. KendraSearchIntent
Per ulteriori informazioni, consulta la sintassi della risposta nella chiamata all'API Query per Kendra.
Slot
Il slots
campo esiste all'interno di una intent
struttura ed è mappato su una struttura le cui chiavi sono i nomi degli slot relativi a tale scopo. Se lo slot non è uno slot multivalore (vedi Utilizzo di più valori in uno slot per maggiori dettagli), viene mappato su una struttura con il seguente formato. Nota che lo è. shape
Scalar
{
slot name
: { "shape": "Scalar", "value": { "originalValue":string
, "interpretedValue":string
, "resolvedValues": [string
, ... ] } } }
Se lo slot è uno slot multivalore, l'oggetto a cui è mappato contiene un altro campo chiamatovalues
, che è mappato su un elenco di strutture, ciascuna contenente informazioni su uno slot che costituisce lo slot multivalore. Il formato di ogni oggetto nell'elenco corrisponde a quello dell'oggetto a cui è mappato uno slot normale. Nota che lo shape
èList
, ma lo values
è Scalar
lo slot shape
dei componenti sottostanti.
{
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
, ... ] } }, ... ] }
I campi dell'oggetto slot sono descritti di seguito:
La forma dello slot. Questo valore è List
se ci sono più valori nello slot (vedi Utilizzo di più valori in uno slot per maggiori dettagli) e non lo Scalar
è.
Un oggetto contenente informazioni sul valore che l'utente ha fornito per uno slot e sulla sua interpretazione, nel seguente formato:
{ "originalValue":
string
, "interpretedValue":string
, "resolvedValues": [string
, ... ] }
I campi sono descritti di seguito.
-
OriginalValue — La parte della risposta dell'utente all'elicitazione dello slot che determina è rilevante per il valore dello slot.
-
InterpretedValue — Il valore che determina lo slot, in base all'input dell'utente.
-
ResolvedValues: un elenco di valori che determina le possibili risoluzioni per l'input dell'utente.
Un elenco di oggetti contenente informazioni sugli slot che compongono lo slot multivalore. Il formato di ogni oggetto corrisponde a quello di uno slot normale, con i value
campi shape
e descritti sopra. values
appare solo se lo slot è composto da più valori (vedi Utilizzo di più valori in uno slot per maggiori dettagli). Il seguente oggetto JSON mostra due slot componenti:
"values": [ { "shape": "Scalar", "value": { "originalValue": string, "interpretedValue":
string
, "resolvedValues": [string
, ... ] } }, { "shape": "Scalar", "value": { "originalValue": string, "interpretedValue":string
, "resolvedValues": [string
, ... ] } }, ... ]
Stato della sessione
Il sessionState
campo è mappato su un oggetto contenente informazioni sullo stato della conversazione con l'utente. I campi effettivi che appaiono nell'oggetto dipendono dal tipo di azione di dialogo. Vedi Campi obbligatori nella risposta i campi obbligatori in una risposta Lambda. Il formato dell'sessionState
oggetto è il seguente:
"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 Intento for details about the structure }, "originatingRequestId":string
}
I campi sono descritti di seguito.
Un elenco di oggetti contenenti informazioni su un contesto utilizzato da un utente in una sessione. Utilizza i contesti per facilitare e controllare il riconoscimento degli intenti. Per ulteriori informazioni sui contesti, vedere. Impostazione del contesto degli intenti per il tuo bot Lex V2 Ogni oggetto è formattato come segue:
{ "name":
string
, "contextAttributes": {string
:string
}, "timeToLive": { "timeToLiveInSeconds":number
, "turnsToLive":number
} }
I campi sono descritti di seguito.
-
name — Il nome del contesto.
-
contextAttributes — Un oggetto contenente i nomi degli attributi per il contesto e i valori a cui sono mappati.
-
timeToLive— Un oggetto che specifica per quanto tempo il contesto rimane attivo. Questo oggetto può contenere uno o entrambi i seguenti campi:
-
timeToLiveInSeconds— Il numero di secondi in cui il contesto rimane attivo.
-
turnsToLive— Il numero di turni in cui il contesto rimane attivo.
-
Una mappa di key/value coppie che rappresentano informazioni di contesto specifiche della sessione. Per ulteriori informazioni, consulta Impostazione degli attributi di sessione per il tuo bot Lex V2. L'oggetto è formattato come segue:
{
string
:string
, ... }
Fornisce suggerimenti sulle frasi che un cliente probabilmente utilizzerà per uno slot per migliorare il riconoscimento audio. I valori forniti nei suggerimenti aumentano il riconoscimento audio di tali valori rispetto a parole dal suono simile. Il formato dell'runtimeHints
oggetto è il seguente:
{ "slotHints": {
intent name
: {slot name
: { "runtimeHintValues": [ { "phrase":string
}, ... ] }, ... }, ... } }
Il slotHints
campo è mappato su un oggetto i cui campi sono i nomi degli intenti nel bot. Ogni nome di intento è mappato a un oggetto i cui campi sono i nomi degli slot per quell'intento. Ogni nome di slot è mappato a una struttura con un singolo camporuntimeHintValues
, che è un elenco di oggetti. Ogni oggetto contiene un phrase
campo che corrisponde a un suggerimento.
Determina l'azione successiva da intraprendere per Amazon Lex V2. Il formato dell'oggetto è il seguente:
{ "slotElicitationStyle": "Default | SpellByLetter | SpellByWord", "slotToElicit":
string
, "type": "Close | ConfirmIntent | Delegate | ElicitIntent | ElicitSlot" }
I campi sono descritti di seguito.
-
slotElicitationStyle— Determina in che modo Amazon Lex V2 interpreta l'input audio dell'utente, se il valore è
type
.dialogAction
ElicitSlot
Per ulteriori informazioni, consulta Acquisizione dei valori degli slot con stili ortografici durante la conversazione. I valori possibili sono i seguenti:Default
— Amazon Lex V2 interpreta l'ingresso audio nel modo predefinito per soddisfare uno slot.SpellByLetter
— Amazon Lex V2 ascolta l'ortografia del valore dello slot da parte dell'utente.SpellByWord
— Amazon Lex V2 ascolta l'ortografia del valore dello slot da parte dell'utente utilizzando parole associate a ciascuna lettera (ad esempio, «a as in apple»). -
slotToElicit— Definisce lo slot da richiedere all'utente se l'of è.
type
dialogAction
ElicitSlot
-
tipo — Definisce l'azione che il bot deve eseguire. I valori possibili sono i seguenti:
Delegate
— Consente ad Amazon Lex V2 di determinare il passaggio successivo.ElicitIntent
— Richiede al cliente di esprimere un'intenzione.ConfirmIntent
— Conferma i valori degli slot del cliente e se l'intento è pronto per l'adempimento.ElicitSlot
— Richiede al cliente di fornire un valore di slot per un intento.Close
— Termina il processo di adempimento degli intenti.
Vedi Intento la struttura del intent
campo.
Un identificatore univoco per la richiesta. Questo campo è facoltativo per la risposta Lambda.