Migliorare il riconoscimento vocale con un vocabolario personalizzato - Amazon Lex

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à.

Migliorare il riconoscimento vocale con un vocabolario personalizzato

Puoi fornire ad Amazon Lex V2 ulteriori informazioni su come elaborare le conversazioni audio con un bot creando un vocabolario personalizzato in una lingua specifica. Un vocabolario personalizzato è un elenco di frasi specifiche che desideri che Amazon Lex V2 riconosca nell'ingresso audio. In genere si tratta di nomi propri o parole specifiche del dominio che Amazon Lex V2 non riconosce.

Ad esempio, supponiamo di avere un bot di supporto tecnico. Puoi aggiungere «backup» a un vocabolario personalizzato per aiutare il bot a trascrivere correttamente l'audio come «backup», anche quando l'audio suona come «fai le valigie». Un vocabolario personalizzato può anche aiutare a riconoscere parole rare nell'audio, come «solvibilità» per i servizi finanziari o sostantivi propri come «Cognito» o «Monitron».

Nozioni di base sul vocabolario personalizzato

  • Un vocabolario personalizzato funziona sulla trascrizione dell'input audio in un bot. È necessario fornire enunciati di esempio per riconoscere un intento o un valore di slot.

  • Un vocabolario personalizzato è unico per una lingua specifica. È necessario configurare vocabolari personalizzati in modo indipendente per ogni lingua. I vocabolari personalizzati sono supportati solo per le lingue inglese (Regno Unito) e inglese (Stati Uniti).

  • Sono disponibili vocabolari personalizzati con integrazioni di contact center supportate da Amazon Lex V2. La finestra di test nella console Amazon Lex V2 supporta vocabolari personalizzati per tutti i bot Amazon Lex V2 creati a partire dal 31 luglio 2022. Se riscontri problemi con i vocabolari personalizzati nella finestra di test, ricostruisci il bot e riprova.

Amazon Lex V2 utilizza vocabolari personalizzati per suscitare sia gli intenti che gli slot. Lo stesso file di vocabolario personalizzato viene utilizzato per intenti e slot. Puoi disattivare selettivamente la funzionalità del vocabolario personalizzato per uno slot quando aggiungi un tipo di slot.

Suscitare un intento: puoi creare un vocabolario personalizzato per suscitare un intento. Queste frasi vengono utilizzate per la trascrizione quando il bot determina l'intento dell'utente. Ad esempio, se hai configurato la frase «backup» nel tuo vocabolario personalizzato, Amazon Lex V2 trascrive l'input dell'utente in «puoi fare il backup delle mie foto?» —anche quando l'audio suona come «puoi impacchettare le mie foto». È possibile specificare il grado di incremento per ogni frase configurando un peso di 0, 1, 2 o 3. Puoi anche specificare una rappresentazione alternativa per la frase nell'output finale dal discorso al testo aggiungendo un displayAs campo.

Le frasi del vocabolario personalizzate utilizzate per migliorare la trascrizione durante l'evocazione dell'intento non influiscono sulle trascrizioni durante l'attivazione degli slot. Per ulteriori informazioni sulla creazione di un vocabolario personalizzato per suscitare intenti, vedere. Creazione di un vocabolario personalizzato per suscitare intenti e slot

Ottenere slot personalizzati: puoi utilizzare un vocabolario personalizzato per migliorare il riconoscimento degli slot per le conversazioni audio. Per migliorare la capacità del tuo bot Amazon Lex V2 di riconoscere i valori degli slot, crea uno slot personalizzato e aggiungi i valori degli slot allo slot personalizzato, quindi scegli Usa i valori degli slot come vocabolario personalizzato. Esempi di valori di slot includono nomi di prodotti, cataloghi o nomi propri. Non dovresti usare parole o frasi comuni come «sì» e «no» nei vocabolari personalizzati.

Dopo aver aggiunto i valori degli slot, questi valori vengono utilizzati per migliorare il riconoscimento degli slot quando il bot aspetta un input per lo slot personalizzato. Questi valori non vengono utilizzati per la trascrizione quando si suscita un intento. Per ulteriori informazioni, consulta Aggiungere tipi di slot.

Procedure consigliate per creare un vocabolario personalizzato

Suscitare un intento

  • I vocabolari personalizzati funzionano in modo ottimale se utilizzati finalizzandoli a parole o locuzioni specifiche. Aggiungi parole a un vocabolario personalizzato solo se non sono immediatamente riconosciute da Amazon Lex V2.

  • Decidi quanto peso dare a una parola in base alla frequenza con cui la parola non viene riconosciuta nella trascrizione e alla rarità della parola nell'input. Le parole difficili da pronunciare richiedono un peso maggiore.

  • Utilizza un set di test rappresentativo per determinare se un peso è appropriato. Puoi raccogliere un set di test audio attivando la registrazione audio nei registri delle conversazioni.

  • Evita di usare parole brevi come «on», «it», «to», «yes», «no» in un vocabolario personalizzato.

Ottenere uno slot personalizzato

  • Aggiungi i valori al tipo di slot personalizzato che prevedi venga riconosciuto. Aggiungi tutti i possibili valori di slot per il tipo di slot personalizzato, indipendentemente da quanto sia comune o raro il valore dello slot.

  • Attivate l'opzione solo quando il tipo di slot personalizzato contiene un elenco di valori o entità del catalogo, come nomi di prodotti o fondi comuni di investimento.

  • Disabilita l'opzione se il tipo di slot viene utilizzato per acquisire frasi generiche come «sì», «no», «non lo so», «forse» o parole generiche come «uno», «due», «tre».

  • Limita il numero di valori e sinonimi degli slot a 500 o meno per ottenere prestazioni ottimali.

Inserisci acronimi o altre parole le cui lettere devono essere pronunciate singolarmente come lettere singole separate da un punto e uno spazio. Non utilizzare singole lettere a meno che non facciano parte di una frase, come «J. P. Morgan» o «A. W. S.» È possibile utilizzare lettere maiuscole o minuscole per definire un acronimo.

Creazione di un vocabolario personalizzato per suscitare intenti e slot

Puoi usare la console Amazon Lex V2 per creare e gestire un vocabolario personalizzato oppure puoi utilizzare le operazioni dell'API Amazon Lex V2. Esistono 2 modi per creare un vocabolario personalizzato tramite la console:

Importa vocabolario personalizzato nella console:
  1. Apri la console Amazon Lex V2 all'indirizzo https://console.aws.amazon.com/lexv2/home

  2. Dall'elenco dei bot, scegli il bot a cui desideri aggiungere il vocabolario personalizzato.

  3. Nella pagina dei dettagli del bot, dalla sezione Aggiungi lingue, scegli Visualizza lingue.

  4. Dall'elenco delle lingue, scegli la lingua a cui desideri aggiungere il vocabolario personalizzato.

Crea un nuovo vocabolario personalizzato direttamente dalla console:
  1. Fai clic su Crea nella sezione Vocabolario personalizzato della pagina dei dettagli della lingua. Si aprirà una finestra di modifica in cui non è presente alcun vocabolario personalizzato.

  2. Aggiungi gli input per frase e peso come richiesto. DisplayAs Puoi inoltre apportare modifiche in linea agli elementi aggiunti aggiornando i relativi campi o eliminandoli dall'elenco.

  3. Fai clic su Salva. Nota: il nuovo vocabolario personalizzato viene salvato nel tuo bot solo dopo aver fatto clic su Salva.

  4. Puoi continuare ad apportare modifiche in linea in questa pagina e fare clic su Salva quando hai finito.

  5. Questa pagina consente anche di importare, esportare ed eliminare un file di vocabolario personalizzato dal menu a discesa in alto a destra.

Usa l'ListCustomVocabularyItemsAPI per visualizzare le voci del vocabolario personalizzate:
  1. Usa l'ListCustomVocabularyItemsoperazione per visualizzare le voci del vocabolario personalizzate. Il corpo della richiesta sarà simile al seguente:

    { "maxResults": number, "nextToken": "string" }
  2. Tieni presente che maxResults e nextToken sono campi opzionali per il corpo della richiesta.

  3. La risposta dell'ListCustomVocabularyItemsoperazione è la seguente:

    { "botId": "string", "botVersion": "string", "localeId": "string", "customVocabularyItems": [ { "itemId": "string", "phrase": "string", "weight": number, "displayAs": "string" } ] }
Usa l'BatchCreateCustomVocabularyItemAPI per creare nuove voci di vocabolario personalizzate:
  1. Se la lingua del tuo bot non ha ancora creato un vocabolario personalizzato, segui i passaggi per utilizzarlo per StartImportcreare un vocabolario personalizzato.

  2. Dopo aver creato il vocabolario personalizzato, usa l'BatchCreateCustomVocabularyItemoperazione per creare nuove voci di vocabolario personalizzate. Il corpo della richiesta sarà simile al seguente:

    { "customVocabularyItemList": [ { "phrase": "string", "weight": number, "displayAs": "string" } ] }
  3. Tieni presente che weight e displayAs sono campi opzionali per il corpo della richiesta.

  4. La risposta del testamento BatchCreateCustomVocabularyItem sarà simile a questa:

    { "botId": "string", "botVersion": "string", "localeId": "string", "errors": [ { "itemId": "string", "errorMessage": "string", "errorCode": "string" } ], "resources": [ { "itemId": "string", "phrase": "string", "weight": number, "displayAs": "string" } ] }
  5. Poiché si tratta di un'operazione batch, la richiesta non avrà esito negativo se uno degli elementi non viene creato. L'elenco degli errori conterrà informazioni sul motivo per cui l'operazione non è riuscita per quella voce specifica. L'elenco delle risorse conterrà tutte le voci che sono state create con successo.

  6. InfattiBatchCreateCustomVocabularyItem, puoi aspettarti di vedere questi tipi di errori:

    • RESOURCE_DOES_NOT_EXIST: Il vocabolario personalizzato non esiste. Segui i passaggi per creare un vocabolario personalizzato prima di avviare questa operazione.

    • DUPLICATE_INPUT: L'elenco degli input contiene frasi duplicate.

    • RESOURCE_ALREADY_EXISTS: La frase indicata per la voce esiste già nel tuo vocabolario personalizzato.

    • INTERNAL_SERVER_FAILURE: Si è verificato un errore nel backend durante l'elaborazione della richiesta. Ciò può indicare un'interruzione del servizio o un altro problema.

Usa l'BatchDeleteCustomVocabularyItemAPI per eliminare le voci di vocabolario personalizzate esistenti:
  1. Se la lingua del tuo bot non ha ancora creato un vocabolario personalizzato, segui i passaggi in Usa il per creare un vocabolario personalizzato StartImportper crearne uno.

  2. Dopo aver creato il vocabolario personalizzato, usa l'BatchDeleteCustomVocabularyItemoperazione per eliminare le voci del vocabolario personalizzato esistenti. Il corpo della richiesta sarà simile al seguente:

    { "customVocabularyItemList": [ { "itemId": "string" } ] }
  3. La risposta del testamento BatchDeleteCustomVocabularyItem sarà simile a questa:

    { "botId": "string", "botVersion": "string", "localeId": "string", "errors": [ { "itemId": "string", "errorMessage": "string", "errorCode": "string" } ], "resources": [ { "itemId": "string", "phrase": "string", "weight": number, "displayAs": "string" } ] }
  4. Poiché si tratta di un'operazione batch, la richiesta non avrà esito negativo se uno degli elementi non viene eliminato. L'elenco degli errori conterrà informazioni sul motivo per cui l'operazione non è riuscita per quella voce specifica. L'elenco delle risorse conterrà tutte le voci che sono state eliminate con successo.

  5. InfattiBatchDeleteCustomVocabularyItem, puoi aspettarti di vedere questi tipi di errori:

    • RESOURCE_DOES_NOT_EXIST: la voce del vocabolario personalizzata che stai cercando di eliminare non esiste.

    • INTERNAL_SERVER_FAILURE: Si è verificato un errore nel backend durante l'elaborazione della richiesta. Ciò può indicare un'interruzione del servizio o un altro problema.

Usa l'BatchUpdateCustomVocabularyItemAPI per aggiornare le voci di vocabolario personalizzate esistenti:
  1. Se la lingua del tuo bot non ha ancora creato un vocabolario personalizzato, segui i passaggi in Usa il per creare un vocabolario personalizzato StartImportper creare un vocabolario personalizzato.

  2. Dopo aver creato il vocabolario personalizzato, usa l'BatchUpdateCustomVocabularyItemoperazione per aggiornare le voci del vocabolario personalizzato esistenti. Il corpo della richiesta sarà simile al seguente:

    { "customVocabularyItemList": [ { "itemId": "string", "phrase": "string", "weight": number, "displayAs": "string" } ] }
  3. Tieni presente che weight e displayAs sono campi opzionali per il corpo della richiesta.

  4. La risposta del testamento BatchUpdateCustomVocabularyItem sarà simile a questa:

    { "botId": "string", "botVersion": "string", "localeId": "string", "errors": [ { "itemId": "string", "errorMessage": "string", "errorCode": "string" } ], "resources": [ { "itemId": "string", "phrase": "string", "weight": number, "displayAs": "string" } ] }
  5. Poiché si tratta di un'operazione batch, la richiesta non avrà esito negativo se uno degli elementi non viene eliminato. L'elenco degli errori conterrà informazioni sul motivo per cui l'operazione non è riuscita per quella voce specifica. L'elenco delle risorse conterrà tutte le voci che sono state aggiornate con successo.

  6. InfattiBatchUpdateCustomVocabularyItem, puoi aspettarti di vedere questi tipi di errori:

    • RESOURCE_DOES_NOT_EXIST: la voce del vocabolario personalizzata che stai cercando di aggiornare non esiste.

    • DUPLICATE_INPUT: l'elenco degli input contiene ItemID duplicati.

    • RESOURCE_ALREADY_EXISTS: La frase indicata per la voce esiste già nel tuo vocabolario personalizzato.

    • INTERNAL_SERVER_FAILURE: Si è verificato un errore nel backend durante l'elaborazione della richiesta. Ciò può indicare un'interruzione del servizio o un altro problema.

Creazione di un file di vocabolario personalizzato

Un file di vocabolario personalizzato è un elenco di valori separato da tabulazioni che contiene la frase da riconoscere, un peso per dare una spinta e un displayAs campo che sostituirà la frase nella trascrizione del discorso. È più probabile che le frasi con un valore di boost più elevato vengano utilizzate quando appaiono nell'ingresso audio.

Il file di vocabolario personalizzato deve avere un nome CustomVocabulary.tsv e deve essere compresso in un file zip prima di poter essere importato. Il file zip deve avere una dimensione inferiore a 300 MB. Il numero massimo di frasi in un vocabolario personalizzato è 500.

  • frase 1—4 parole che devono essere riconosciute. Separa le parole nella frase con spazi. Non puoi inserire frasi duplicate nel file. Il campo della frase è obbligatorio.

  • peso: il grado in cui viene potenziato il riconoscimento della frase. Il valore è un numero intero 0, 1, 2 o 3. Se non specifichi un peso, il valore predefinito è 1. Decidi il peso in base alla frequenza con cui la parola non viene riconosciuta nella trascrizione e alla rarità della parola nell'input. Il peso 0 indica che non verrà applicato alcun potenziamento e la voce verrà utilizzata solo per eseguire sostituzioni utilizzando il displayAs campo.

  • DisplayAs: definisce come vuoi che la tua frase appaia nell'output della trascrizione. Questo è un campo opzionale nel vocabolario personalizzato.

Il file di vocabolario personalizzato deve contenere una riga di intestazione con le intestazioni «phrase», «weight» e «displayAs». Le intestazioni possono essere in qualsiasi ordine, ma devono seguire la nomenclatura precedente.

L'esempio seguente è un file di vocabolario personalizzato. Il carattere di tabulazione richiesto per separare la frase, il peso e il display As è rappresentato dal testo «[TAB]». Se usi questo esempio, sostituisci il testo con un carattere di tabulazione.

phrase[TAB]weight[TAB]displayAs Newcastle[TAB]2 Hobart[TAB]2[TAB]Hobart, Australia U. Dub[TAB]1[TAB]University of Washington, Seattle W. S. U.[TAB]3 Issaquah Kennewick