Avviso di fine del supporto: il 15 settembre 2025 AWS interromperà il supporto per Amazon Lex V1. Dopo il 15 settembre 2025, non potrai più accedere alla console Amazon Lex V1 o alle risorse Amazon Lex V1. Se utilizzi Amazon Lex V2, consulta invece la guida Amazon Lex V2.
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à.
PutBot
Crea un bot conversazionale Amazon Lex o sostituisce un bot esistente. Quando crei o aggiorni un bot, ti viene richiesto solo di specificare un nome, una lingua e se il bot è rivolto a bambini di età inferiore ai 13 anni. Puoi usarlo per aggiungere intenti in un secondo momento o per rimuovere intenti da un bot esistente. Quando crei un bot con le informazioni minime, il bot viene creato o aggiornato ma Amazon Lex restituisce la rispostaFAILED. Puoi creare il bot dopo aver aggiunto uno o più intenti. Per ulteriori informazioni sui bot Amazon Lex, consultaAmazon Lex: come funziona.
Se specifichi il nome di un bot esistente, i campi della richiesta sostituiscono i valori esistenti nella $LATEST versione del bot. Amazon Lex rimuove tutti i campi per i quali non vengono forniti valori nella richiesta, ad eccezione dei privacySettings campi idleTTLInSeconds e, che sono impostati sui valori predefiniti. Se non specifichi valori per i campi obbligatori, Amazon Lex genera un'eccezione.
Questa operazione richiede le autorizzazioni per l'operazione lex:PutBot. Per ulteriori informazioni, consulta Identity and Access Management per Amazon Lex.
Sintassi della richiesta
PUT /bots/name/versions/$LATEST HTTP/1.1
Content-type: application/json
{
"abortStatement": {
"messages": [
{
"content": "string",
"contentType": "string",
"groupNumber": number
}
],
"responseCard": "string"
},
"checksum": "string",
"childDirected": boolean,
"clarificationPrompt": {
"maxAttempts": number,
"messages": [
{
"content": "string",
"contentType": "string",
"groupNumber": number
}
],
"responseCard": "string"
},
"createVersion": boolean,
"description": "string",
"detectSentiment": boolean,
"enableModelImprovements": boolean,
"idleSessionTTLInSeconds": number,
"intents": [
{
"intentName": "string",
"intentVersion": "string"
}
],
"locale": "string",
"nluIntentConfidenceThreshold": number,
"processBehavior": "string",
"tags": [
{
"key": "string",
"value": "string"
}
],
"voiceId": "string"
}
Parametri della richiesta URI
La richiesta utilizza i seguenti parametri URI.
- name
-
Il nome del bot. Il nome non fa distinzione tra maiuscole e minuscole.
Vincoli di lunghezza: lunghezza minima di 2. La lunghezza massima è 50 caratteri.
Modello:
^([A-Za-z]_?)+$Campo obbligatorio: sì
Corpo della richiesta
La richiesta accetta i seguenti dati in formato JSON.
- abortStatement
-
Quando Amazon Lex non è in grado di comprendere l'input dell'utente nel contesto, tenta di richiamare le informazioni alcune volte. Successivamente, Amazon Lex invia il messaggio definito
abortStatementall'utente e quindi annulla la conversazione. Per impostare il numero di tentativi, utilizza ilvalueElicitationPromptcampo per il tipo di slot.Ad esempio, in un bot per ordinare pizze, Amazon Lex potrebbe chiedere a un utente «Che tipo di crosta preferisci?» Se la risposta dell'utente non è una delle risposte previste (ad esempio, «crosta sottile», «piatto profondo», ecc.), Amazon Lex tenta di ottenere una risposta corretta ancora qualche volta.
Ad esempio, in un'applicazione per ordinare pizze,
OrderPizzapotrebbe essere uno degli intenti. Questo intento potrebbe richiedere lo slot.CrustTypeIlvalueElicitationPromptcampo viene specificato quando si crea loCrustTypeslot.Se è stato definito un intento di fallback, l'istruzione cancel non verrà inviata all'utente, ma verrà utilizzato l'intento di fallback. Per ulteriori informazioni, consulta AMAZON. FallbackIntent.
Tipo: oggetto Statement
Campo obbligatorio: no
- checksum
-
Identifica una revisione specifica della
$LATESTversione.Quando crei un nuovo bot, lascia il
checksumcampo vuoto. Se si specifica un checksum si ottiene un'BadRequestExceptioneccezione.Quando vuoi aggiornare un bot, imposta il
checksumcampo sul checksum della revisione più recente della versione.$LATESTSe non specifichi ilchecksumcampo o se il checksum non corrisponde alla$LATESTversione, ottieni un'eccezione.PreconditionFailedExceptionTipo: string
Campo obbligatorio: no
- childDirected
-
Per ogni bot Amazon Lex creato con Amazon Lex Model Building Service, devi specificare se l'uso di Amazon Lex è correlato a un sito Web, programma o altra applicazione indirizzato o destinato, in tutto o in parte, a bambini di età inferiore ai 13 anni e soggetto al Children's Online Privacy Protection Act (COPPA) specificando
trueofalsenelchildDirectedcampo. SpecificandotruenelchildDirectedcampo, confermi che l'uso di Amazon Lex è correlato a un sito Web, programma o altra applicazione indirizzato o destinato, in tutto o in parte, a bambini di età inferiore ai 13 anni e soggetto al COPPA. SpecificandofalsenelchildDirectedcampo, confermi che l'uso di Amazon Lex non è correlato a un sito Web, programma o altra applicazione indirizzato o destinato, in tutto o in parte, a bambini di età inferiore ai 13 anni e soggetti al COPPA. Non puoi specificare un valore predefinito per ilchildDirectedcampo che non riflette accuratamente se l'uso di Amazon Lex è correlato a un sito Web, programma o altra applicazione indirizzata o destinata, in tutto o in parte, a bambini di età inferiore ai 13 anni e soggetta al COPPA.Se l'uso di Amazon Lex si riferisce a un sito Web, programma o altra applicazione rivolta, in tutto o in parte, a bambini di età inferiore ai 13 anni, devi ottenere il consenso genitoriale verificabile richiesto ai sensi del COPPA. Per informazioni sull'uso di Amazon Lex in relazione a siti Web, programmi o altre applicazioni rivolti o destinati, in tutto o in parte, a bambini di età inferiore ai 13 anni, consulta le domande frequenti su Amazon Lex.
Tipo: Booleano
Campo obbligatorio: sì
- clarificationPrompt
-
Quando Amazon Lex non comprende l'intenzione dell'utente, utilizza questo messaggio per ottenere chiarimenti. Per specificare quante volte Amazon Lex deve ripetere la richiesta di chiarimento, utilizza il
maxAttemptscampo. Se Amazon Lex continua a non capire, invia il messaggio nelabortStatementcampo.Quando crei una richiesta di chiarimento, assicurati che suggerisca la risposta corretta dell'utente. Ad esempio, per un bot che ordina pizza e bevande, potresti creare questo messaggio di chiarimento: «Cosa vorresti fare? Puoi dire 'Ordina una pizza' o 'Ordina un drink. '»
Se hai definito un intento di riserva, questo verrà invocato se la richiesta di chiarimento viene ripetuta il numero di volte definito nel campo.
maxAttemptsPer ulteriori informazioni, consulta AMAZON. FallbackIntent.Se non definisci una richiesta di chiarimento, in fase di esecuzione Amazon Lex restituirà un'eccezione 400 Bad Request in tre casi:
-
Richiesta di follow-up: quando l'utente risponde a una richiesta di follow-up ma non ne fornisce l'intenzione. Ad esempio, in risposta a una richiesta di follow-up che dice «Vuoi qualcos'altro oggi?» l'utente dice «Sì». Amazon Lex restituirà un'eccezione 400 Bad Request perché non dispone di un messaggio di chiarimento da inviare all'utente per determinare l'intento.
-
Funzione Lambda: quando si utilizza una funzione Lambda, si restituisce un tipo di dialogo.
ElicitIntentPoiché Amazon Lex non dispone di una richiesta di chiarimento per ottenere un'intenzione dall'utente, restituisce un'eccezione 400 Bad Request. -
PutSession operazione: quando si utilizza l'
PutSessionoperazione, si invia unElicitIntenttipo di dialogo. Poiché Amazon Lex non dispone di una richiesta di chiarimento per ottenere un'intenzione dall'utente, restituisce un'eccezione 400 Bad Request.
Tipo: oggetto Prompt
Campo obbligatorio: no
-
- createVersion
-
Se impostato su, viene creata
trueuna nuova versione numerata del bot. È lo stesso che chiamare l'CreateBotVersionoperazione. Se non si specificacreateVersion, l'impostazione predefinita èfalse.Tipo: Booleano
Campo obbligatorio: no
- description
-
Una descrizione del bot.
Tipo: stringa
Limitazioni di lunghezza: lunghezza minima di 0. Lunghezza massima di 200.
Campo obbligatorio: no
- detectSentiment
-
Se impostato su
trueutente, gli enunciati vengono inviati ad Amazon Comprehend per l'analisi del sentiment. Se non lo specifichidetectSentiment, l'impostazione predefinita è.falseTipo: Booleano
Campo obbligatorio: no
- enableModelImprovements
-
Impostato
trueper consentire l'accesso ai miglioramenti della comprensione del linguaggio naturale.Quando si imposta il
enableModelImprovementsparametro su,trueè possibile utilizzarlo per configurare inluIntentConfidenceThresholdpunteggi di confidenza. Per ulteriori informazioni, vedere Confidence Scores.È possibile impostare il
enableModelImprovementsparametro solo in determinate regioni. Se imposti il parametro sutrue, il bot ha accesso a miglioramenti della precisione.Le regioni in cui è possibile impostare il
enableModelImprovementsparametrofalseper la localizzazione en-US sono:-
Stati Uniti orientali (Virginia settentrionale) (us-east-1)
-
Stati Uniti occidentali (Oregon) (us-west-2)
-
Asia Pacifico (Sydney) (ap-southeast-2)
-
UE (Irlanda): eu-west-1
In altre regioni e impostazioni locali, il
enableModelImprovementsparametro è impostato su come impostazione predefinitatrue. In queste regioni e impostazioni locali, l'impostazione del parametro tofalsegenera un'eccezione.ValidationExceptionTipo: Booleano
Campo obbligatorio: no
-
- idleSessionTTLInSeconds
-
Il tempo massimo, in secondi, durante il quale Amazon Lex conserva i dati raccolti in una conversazione.
Una sessione di interazione con l'utente rimane attiva per il periodo di tempo specificato. Se durante questo periodo non si verifica alcuna conversazione, la sessione scade e Amazon Lex elimina tutti i dati forniti prima del timeout.
Ad esempio, supponiamo che un utente scelga l' OrderPizza intento, ma venga distratto a metà dell'ordine. Se l'utente non completa l'ordine entro il tempo specificato, Amazon Lex elimina le informazioni sullo slot raccolte e l'utente deve ricominciare da capo.
Se non includi l'
idleSessionTTLInSecondselemento in una richiesta diPutBotoperazione, Amazon Lex utilizza il valore predefinito. Questo vale anche se la richiesta sostituisce un bot esistente.Il valore predefinito è 300 secondi (5 minuti).
Tipo: integer
Intervallo valido: valore minimo pari a 60. Valore massimo pari a 86400.
Campo obbligatorio: no
- intents
-
Un array di oggetti
Intent. Ogni intento rappresenta un comando che un utente può esprimere. Ad esempio, un bot per ordinare pizze potrebbe supportare un OrderPizza intento. Per ulteriori informazioni, consulta Amazon Lex: come funziona.Tipo: matrice di oggetti Intent
Campo obbligatorio: no
- locale
-
Specifica il locale di destinazione per il bot. Qualsiasi intento utilizzato nel bot deve essere compatibile con le impostazioni locali del bot.
Il valore predefinito è
en-US.Tipo: stringa
Valori validi:
de-DE | en-AU | en-GB | en-IN | en-US | es-419 | es-ES | es-US | fr-FR | fr-CA | it-IT | ja-JP | ko-KRCampo obbligatorio: sì
- nluIntentConfidenceThreshold
-
Determina la soglia in cui Amazon Lex inserirà o entrambi quando restituisce intenti alternativi in una PostTextrisposta PostContento.
AMAZON.FallbackIntentAMAZON.KendraSearchIntentAMAZON.FallbackIntenteAMAZON.KendraSearchIntentvengono inseriti solo se sono configurati per il bot.È necessario impostare il
enableModelImprovementsparametro pertrueutilizzare i punteggi di confidenza nelle seguenti regioni.-
Stati Uniti orientali (Virginia settentrionale) (us-east-1)
-
Stati Uniti occidentali (Oregon) (us-west-2)
-
Asia Pacifico (Sydney) (ap-southeast-2)
-
UE (Irlanda): eu-west-1
In altre regioni, il
enableModelImprovementsparametro è impostato cometrueimpostazione predefinita.Ad esempio, supponiamo che un bot sia configurato con la soglia di confidenza di 0,80 e il.
AMAZON.FallbackIntentAmazon Lex restituisce tre intenti alternativi con i seguenti punteggi di confidenza: intentA (0,70), IntentB (0,60), IntentC (0,50). La risposta dell'operazione sarebbe:PostText-
AMAZON. FallbackIntent
-
a Tenta
-
Intento B
-
Intento C
Tipo: double
Intervallo valido: valore minimo di 0. Valore massimo di 1.
Campo obbligatorio: no
-
- processBehavior
-
Se imposti l'
processBehaviorelemento suBUILD, Amazon Lex crea il bot in modo che possa essere eseguito. Se imposti l'elementoSAVEsu Amazon Lex, il bot viene salvato, ma non lo crea.Se non specifichi questo valore, il valore predefinito è
BUILD.Tipo: stringa
Valori validi:
SAVE | BUILDCampo obbligatorio: no
-
Un elenco di tag da aggiungere al bot. È possibile aggiungere tag solo quando si crea un bot, non è possibile utilizzare l'
PutBotoperazione per aggiornare i tag su un bot. Per aggiornare i tag, utilizza l'operazioneTagResource.Tipo: matrice di oggetti Tag
Membri dell'array: numero minimo di 0 elementi. Numero massimo di 200 elementi.
Campo obbligatorio: no
- voiceId
-
L'ID vocale Amazon Polly che desideri venga utilizzato da Amazon Lex per le interazioni vocali con l'utente. Le impostazioni locali configurate per la voce devono corrispondere alle impostazioni locali del bot. Per ulteriori informazioni, consulta Voices in Amazon Polly nella Amazon Polly Developer Guide.
Tipo: string
Campo obbligatorio: no
Sintassi della risposta
HTTP/1.1 200
Content-type: application/json
{
"abortStatement": {
"messages": [
{
"content": "string",
"contentType": "string",
"groupNumber": number
}
],
"responseCard": "string"
},
"checksum": "string",
"childDirected": boolean,
"clarificationPrompt": {
"maxAttempts": number,
"messages": [
{
"content": "string",
"contentType": "string",
"groupNumber": number
}
],
"responseCard": "string"
},
"createdDate": number,
"createVersion": boolean,
"description": "string",
"detectSentiment": boolean,
"enableModelImprovements": boolean,
"failureReason": "string",
"idleSessionTTLInSeconds": number,
"intents": [
{
"intentName": "string",
"intentVersion": "string"
}
],
"lastUpdatedDate": number,
"locale": "string",
"name": "string",
"nluIntentConfidenceThreshold": number,
"status": "string",
"tags": [
{
"key": "string",
"value": "string"
}
],
"version": "string",
"voiceId": "string"
}
Elementi di risposta
Se l'operazione riesce, il servizio restituisce una risposta HTTP 200.
I dati seguenti vengono restituiti in formato JSON mediante il servizio.
- abortStatement
-
Il messaggio che Amazon Lex utilizza per annullare una conversazione. Per ulteriori informazioni, consulta PutBot.
Tipo: oggetto Statement
- checksum
-
Checksum del bot che hai creato.
Tipo: stringa
- childDirected
-
Per ogni bot Amazon Lex creato con Amazon Lex Model Building Service, devi specificare se l'uso di Amazon Lex è correlato a un sito Web, programma o altra applicazione indirizzato o destinato, in tutto o in parte, a bambini di età inferiore ai 13 anni e soggetto al Children's Online Privacy Protection Act (COPPA) specificando
trueofalsenelchildDirectedcampo. SpecificandotruenelchildDirectedcampo, confermi che l'uso di Amazon Lex è correlato a un sito Web, programma o altra applicazione indirizzato o destinato, in tutto o in parte, a bambini di età inferiore ai 13 anni e soggetto al COPPA. SpecificandofalsenelchildDirectedcampo, confermi che l'uso di Amazon Lex non è correlato a un sito Web, programma o altra applicazione indirizzato o destinato, in tutto o in parte, a bambini di età inferiore ai 13 anni e soggetti al COPPA. Non puoi specificare un valore predefinito per ilchildDirectedcampo che non riflette accuratamente se l'uso di Amazon Lex è correlato a un sito Web, programma o altra applicazione indirizzata o destinata, in tutto o in parte, a bambini di età inferiore ai 13 anni e soggetta al COPPA.Se l'uso di Amazon Lex si riferisce a un sito Web, programma o altra applicazione rivolta, in tutto o in parte, a bambini di età inferiore ai 13 anni, devi ottenere il consenso genitoriale verificabile richiesto ai sensi del COPPA. Per informazioni sull'uso di Amazon Lex in relazione a siti Web, programmi o altre applicazioni rivolti o destinati, in tutto o in parte, a bambini di età inferiore ai 13 anni, consulta le domande frequenti su Amazon Lex.
Tipo: Booleano
- clarificationPrompt
-
I prompt che Amazon Lex utilizza quando non comprende le intenzioni dell'utente. Per ulteriori informazioni, consulta PutBot.
Tipo: oggetto Prompt
- createdDate
-
La data di creazione del bot.
Tipo: Timestamp
- createVersion
-
Truese è stata creata una nuova versione del bot. Se ilcreateVersioncampo non è stato specificato nella richiesta, ilcreateVersioncampo è impostato su false nella risposta.Tipo: Booleano
- description
-
Una descrizione del bot.
Tipo: stringa
Limitazioni di lunghezza: lunghezza minima di 0. Lunghezza massima di 200.
- detectSentiment
-
truese il bot è configurato per inviare le espressioni degli utenti ad Amazon Comprehend per l'analisi del sentiment. Se ildetectSentimentcampo non è stato specificato nella richiesta, sidetectSentimenttrovafalsenella risposta.Tipo: Booleano
- enableModelImprovements
-
Indica se il bot utilizza miglioramenti di precisione.
trueindica che il bot sta utilizzando i miglioramenti, altrimentifalse.Tipo: Booleano
- failureReason
-
In caso
statusFAILEDaffermativo, Amazon Lex fornisce il motivo per cui non è riuscita a creare il bot.Tipo: stringa
- idleSessionTTLInSeconds
-
Il periodo massimo di conservazione dei dati raccolti in una conversazione da parte di Amazon Lex. Per ulteriori informazioni, consulta PutBot.
Tipo: integer
Intervallo valido: valore minimo pari a 60. Valore massimo pari a 86400.
- intents
-
Un array di oggetti
Intent. Per ulteriori informazioni, consulta PutBot.Tipo: matrice di oggetti Intent
- lastUpdatedDate
-
La data in cui il bot è stato aggiornato. Quando crei una risorsa, la data di creazione e la data dell'ultimo aggiornamento coincidono.
Tipo: Timestamp
- locale
-
Il locale di destinazione per il bot.
Tipo: stringa
Valori validi:
de-DE | en-AU | en-GB | en-IN | en-US | es-419 | es-ES | es-US | fr-FR | fr-CA | it-IT | ja-JP | ko-KR - name
-
Il nome del bot.
Tipo: stringa
Vincoli di lunghezza: lunghezza minima di 2. La lunghezza massima è 50 caratteri.
Modello:
^([A-Za-z]_?)+$ - nluIntentConfidenceThreshold
-
Il punteggio che determina dove Amazon Lex inserisce o entrambi quando restituisce intenti alternativi in una risposta PostContento PostText.
AMAZON.FallbackIntentAMAZON.KendraSearchIntentAMAZON.FallbackIntentviene inserito se il punteggio di confidenza a tutti gli effetti è inferiore a questo valore.AMAZON.KendraSearchIntentviene inserito solo se è configurato per il bot.Tipo: double
Intervallo valido: valore minimo di 0. Valore massimo di 1.
- status
-
Quando invii una richiesta per creare un bot con
processBehaviorset toBUILD, Amazon Lex imposta l'elemento distatusrisposta suBUILDING.READY_BASIC_TESTINGNello stato, puoi testare il bot con input utente che corrispondono esattamente alle espressioni configurate per gli intenti e i valori del bot nei tipi di slot.Se Amazon Lex non è in grado di creare il bot, Amazon Lex decide
statusdi farloFAILED. Amazon Lex restituisce il motivo dell'errore nell'elemento difailureReasonrisposta.Quando lo
processBehaviorimpostiSAVE, Amazon Lex imposta il codice di stato suNOT BUILT.Quando il bot è nello
READYstato, puoi testarlo e pubblicarlo.Tipo: stringa
Valori validi:
BUILDING | READY | READY_BASIC_TESTING | FAILED | NOT_BUILT -
Un elenco di tag associati al bot.
Tipo: matrice di oggetti Tag
Membri dell'array: numero minimo di 0 elementi. Numero massimo di 200 elementi.
- version
-
La versione del bot. Per un nuovo bot, la versione è sempre
$LATEST.Tipo: stringa
Limitazioni di lunghezza: lunghezza minima pari a 1. La lunghezza massima è 64 caratteri.
Modello:
\$LATEST|[0-9]+ - voiceId
-
L'ID vocale Amazon Polly utilizzato da Amazon Lex per l'interazione vocale con l'utente. Per ulteriori informazioni, consulta PutBot.
Tipo: stringa
Errori
- BadRequestException
-
La richiesta non è ben formulata. Ad esempio, un valore non è valido o manca un campo obbligatorio. Controlla i valori del campo e riprova.
Codice di stato HTTP: 400
- ConflictException
-
Si è verificato un conflitto nell'elaborazione della richiesta. Riprova la richiesta.
Codice di stato HTTP: 409
- InternalFailureException
-
Si è verificato un errore interno di Amazon Lex. Riprova la richiesta.
Codice di stato HTTP: 500
- LimitExceededException
-
La richiesta ha superato il limite. Riprova la richiesta.
Codice di stato HTTP: 429
- PreconditionFailedException
-
Il checksum della risorsa che stai cercando di modificare non corrisponde al checksum della richiesta. Controlla il checksum della risorsa e riprova.
Codice di stato HTTP: 412
Vedi anche
Per ulteriori informazioni sull'utilizzo di questa API in una delle lingue specifiche AWS SDKs, consulta quanto segue: