IBM Cloud Docs
Aggiunta di un nodo con slot ad un dialogo

Aggiunta di un nodo con slot ad un dialogo

In questa esercitazione, aggiungi slot a un nodo di dialogo per raccogliere più parti di informazioni da un utente all'interno di un singolo nodo. Il nodo che si crea raccoglie le informazioni necessarie per effettuare una prenotazione del ristorante.

Obiettivi di apprendimento

Al termine dell'esercitazione, è possibile apprendere come:

  • Definire gli intenti e le entità di cui necessita il tuo dialogo
  • Aggiungere gli slot ad un nodo di dialogo
  • Verificare il nodo con gli slot

Durata

Il completamento di questa esercitazione richiede circa 30 minuti.

Prerequisito

Prima di iniziare, completa l'Esercitazione introduttiva. Utilizzi il dialogo che hai creato e aggiungi nodi al dialogo semplice che hai creato come parte dell'esercitazione introduttiva.

Aggiungi intenti ed esempi

Aggiungi un intento, che è lo scopo o l'obiettivo espresso nell'input dell'utente. Aggiungi un intento #reservation che riconosce l'input utente che indica che l'utente desidera effettuare una prenotazione del ristorante.

  1. Nella pagina Intenti, fai clic su Crea intento.

  2. Aggiungi il seguente nome intento e poi fai clic su Crea intento:

    reservation
    

    L'intento #reservation viene aggiunto. Un prefisso di segno numerico (#) viene aggiunto al nome dell'intento per etichettarlo come intento. Questa convenzione di denominazione consente a te e agli altri utenti di riconoscere l'intento come un intento. Non ha ancora espressioni utente di esempio associate ad esso.

  3. Nel campo Aggiungi esempi utente, immetti la seguente espressione e quindi fai clic su Aggiungi esempio:

    i'd like to make a reservation
    
  4. Aggiungi questi ulteriori esempi per aiutare il tuo assistente a riconoscere l'intento #reservation.

    I want to reserve a table for dinner
    Can 3 of us get a table for lunch?
    do you have openings for next Wednesday at 7?
    Is there availability for 4 on Tuesday night?
    i'd like to come in for brunch tomorrow
    can i reserve a table?
    
  5. Fai clic sulla freccia Chiudi Chiudi freccia per completare l'aggiunta dell'intento #reservation e delle sue espressioni di esempio.

Aggiungi entità

Una definizione di entità comprende una serie di valori di entità che rappresentano il vocabolario spesso utilizzato nel contesto di un intento. Definendo le entità, puoi aiutare il tuo assistente a identificare i riferimenti nell'input utente che sono correlati agli intenti a cui sei interessato. In questo passo, si abilitano entità di sistema che possono riconoscere riferimenti a ora, data e numeri.

  1. Abilita le entità di sistema che possono riconoscere riferimenti a data, ora e numeri nell'input utente. Fare clic su Entità di sistema, quindi attivare queste entità:

    • @sys-time
    • @sys-date
    • @sys-number

Hai abilitato le entità di sistema @sys-date, @sys-time e @sys-number. Ora puoi utilizzarle nel tuo dialogo.

Aggiungi un nodo di dialogo con slot

Un nodo di dialogo rappresenta il punto di inizio di un thread del dialogo tra il tuo assistente e l'utente. Contiene una condizione che deve essere soddisfatta affinché il nodo venga elaborato dal tuo assistente. Come minimo, contiene anche una risposta. Ad esempio, una condizione del nodo può cercare l'intento #hello nell'input utente e rispondere con, Hi. How can I help you? Questo esempio è la forma più semplice di un nodo di dialogo, uno che contiene una singola condizione e una singola risposta. Puoi definire dialoghi più complessi aggiungendo risposte condizionali a un singolo nodo, aggiungendo nodi figlio che prolungano lo scambio con l'utente e molto altro. (Se desideri reperire ulteriori informazioni sui dialoghi complessi, puoi completare l'esercitazione Creazione di un dialogo complesso.)

Il nodo che aggiungi in questo passo è un nodo che contiene slot. Gli slot forniscono un formato strutturato tramite il quale puoi richiedere e salvare più informazioni provenienti da un utente all'interno di un singolo nodo. Sono maggiormente utili quando hai in mente una specifica attività e hai bisogno di parti chiave di informazioni provenienti dall'utente prima di poterla eseguire. Per ulteriori informazioni, vedi Raccolta di informazioni con gli slot.

Il nodo che si aggiunge raccoglie le informazioni richieste per effettuare una prenotazione in un ristorante.

  1. Fare clic su Finestra di dialogo per aprire la finestra di dialogo.

  2. Fare clic sull'icona opzioni Node Node opzioni sul nodo Benvenuti, quindi selezionare Aggiungi nodo sotto.

  3. Inizia a immettere #reservation nel campo Se l'assistente riconosce e selezionalo dall'elenco. Questo nodo viene utilizzato se l'input utente corrisponde all'intento #reservation.

  4. Fare clic su Personalizza, impostare il commutatore Slot su Attivo, quindi fare clic su Applica.

    Mostra la finestra di dialogo di personalizzazione in cui si attivano gli slot.
    Nuovo dialogo con nodi integrati

  5. Nella sezione Allora cerca, aggiungi i seguenti slot:

    Dettagli slot
    Controlla Salvalo con nome Se non presente, chiedi
    @sys-date $date What day would you like to come in?
    @sys-time $time Che ora vuoi per la prenotazione?
    @sys-number $guests How many people will be dining?
  6. In Assistant risponde, immettere la risposta di testo OK. I am making you a reservation for $guests on $date at $time.

    Mostra l'aspetto di ogni slot e della risposta nello strumento quando viene compilato come specificato.
    Slot e risposta

  7. Fare clic sull'icona Chiudi Chiudi per chiudere la vista di modifica del nodo.

Verifica la finestra di dialogo

  1. Fai clic su Try it.

  2. Immetti i want to make a reservation.

    L'assistente riconosce l'intento #reservation e risponde con la richiesta per il primo slot What day would you like to come in?.

  3. Immetti Friday.

    L'assistente riconosce il valore e lo utilizza per riempire la variabile di contesto $date per il primo slot. Mostra quindi la richiesta per il successivo slot What time do you want the reservation to be made for?.

  4. Immetti 5pm.

    L'assistente riconosce il valore e lo utilizza per riempire la variabile di contesto $time per il secondo slot. Mostra quindi la richiesta per il successivo slot, How many people will be dining?.

  5. Immetti 6.

    L'assistente riconosce il valore e lo utilizza per riempire la variabile di contesto $guests per il terzo slot. Ora che tutti gli slot sono pieni, mostra la risposta del nodo, OK. I am making you a reservation for 6 on 2021-04-09 at 17:00:00.

    Mostra una finestra di dialogo di verifica nel riquadro Provalo che riempie correttamente gli slot del nodo.
    Node

    Ha funzionato! È stato creato un nodo con slot.

Riepilogo

Hai creato un nodo con slot che possono catturare le informazioni necessarie per prenotare un tavolo in un ristorante.

Passi successivi

Migliora l'esperienza degli utenti che interagiscono con il nodo. Completa l'esercitazione successiva, Miglioramento di un nodo con slot. Descrive semplici miglioramenti, ad esempio come riformattare i valori di data (2021-04-09) e ora (17:00:00) restituiti dal sistema. Tratta anche attività più complesse come ad esempio quali operazioni eseguire se l'utente non fornisce il tipo di valore previsto dal tuo dialogo per uno slot.