Creazione degli intent del flusso di sequenze

Ora che hai l'entità sequenza, puoi creare gli intent per raccogliere dall'utente finale. È consigliabile che almeno tre intent con le seguenti responsabilità:

  1. Un'intenzione principale "Sequence"
    • Rileva gli enunciati per iniziare la raccolta della sequenza.
    • Richiamato da eventi di follow-up per continuare ad acquisire sequenze fino al che l'utente finale dice di avere finito.
  2. Un'intenzione contestuale "Sequenza - Modifica"
    • Cattura le frasi per correggere l'ultima sequenza raccolta.
    • Torna programmaticamente all'intent "Sequence" per raccogliere la sequenza corretta.
  3. Un intent contestuale "Sequenza - Fatto"
    • Rileva gli enunciati che indicano che la sequenza è stata completata.

Nella sezione successiva vedrai come l'webhook collegherà tutti questi elementi, ma prima configuriamo gli intent.

Crea l'intent "Sequenza"

Questo è l'intento principale per la raccolta di sequenze. Configurala nel seguente modo:

  1. Lascia vuoti i contesti di input in modo che gli utenti finali possano attivare questo intent all'inizio della chiamata.
  2. Aggiungi un contesto di output "collecting-sequence". Utilizzeremo questo contesto per attivare le intenzioni di correzione e completamento durante il flusso.
  3. Aggiungi un contesto di output "editing-Sequence" e impostare la durata su 0. Attiveremo questo contesto con una durata dall'intent "Sequenza - Modifica" nella sezione successiva ed è importante cancellarlo qui in modo che il contesto "editing-sequence" sia attivo solo immediatamente dopo l'attivazione dell'intent "Modifica".
  4. Aggiungi un evento "continue-sequence" in modo che l'webhook possa ripetere questo intento per raccogliere tutte le sequenze parziali.

  5. Aggiungi frasi di addestramento in modo che l'utente finale possa attivare questo intent per avviare il flusso. Questo esempio utilizza frasi come "qual è lo stato del mio ordine", "monitora il mio ordine", "dov'è il mio ordine" e così via.

  6. Aggiungi un nome di azione "handle-sequence" in modo che il webhook sappia quando attivarsi. Codificherai l'webhook nella sezione successiva di questo tutorial, dopo aver configurato tutti gli scopi.

  7. Aggiungi un parametro obbligatorio "new_sequence" utilizzando l'entità regexp che hai creato per raccogliere le sequenze parziali nella sezione precedente. Imposta il tipo di entità su "@alfanumerico" e il valore in "$new_ sequence".

  8. Aggiungi il parametro facoltativo "existing_Sequence" con valore "#continue-sequence.existing_sequence" per estrarre la nuova sequenza esistente dall'evento. Puoi lasciare vuoto il tipo di entità.

  9. Aggiungi un parametro facoltativo "previous_Sequence" con valore "#continue- sequence.previous_sequenza" per estrarre la sequenza precedente dall'evento. Puoi lasciare vuoto il tipo di entità.

  10. Attiva la chiamata webhook per questo intent e la chiamata webhook per il riempimento degli slot.

Crea la sequenza "Sequenza - Modifica" intenzione

Questo intent ascolta le espressioni che indicano che la sequenza precedente era capito male da parte dell'agente. Configuralo in questo modo:

  1. Aggiungi un contesto di input "collecting-Sequence" in modo che questo intent sia chiamato quando ci troviamo nel mezzo del flusso di sequenza. Si tratta dello stesso contesto attivato dall'intento "Sequenza".
  2. Aggiungi un contesto di output "editing-sequence" da fare riferimento al nostro webhook di adempimento. Quando questo intento viene attivato, il webhook fa tornare Dialogflow all'intento principale "Sequenza" per raccogliere la sequenza successiva. Il webhook per "Sequenza" di riempimento degli slot dell'intent controllerà se è presente un "modifica-sequenza" contesto per fornire un messaggio empatico "riprova" risposta a per l'utente finale.
  3. Aggiungi frasi di addestramento come "no", "non è corretto" e così via.

  4. Aggiungi il nome dell'azione "handle-sequence". Si tratta della stessa azione dell'intent "Sequenza", quindi possiamo riutilizzare la stessa logica di webhook.

  5. Aggiungi un parametro "new_Sequence" con valore "#collecting- sequence.previous_sequenza" per estrarre la sequenza precedente dal contesto, annullando efficacemente l'ultima frase. Non aggiungiamo "sequenza_esistente" in modo che il webhook sovrascriva sequenza esistente con quella precedente.

  6. Attiva la chiamata webhook per questo intent.

Crea un'intenzione "Sequenza - Fine".

  1. Aggiungi un contesto di input "collecting-sequence"
  2. Aggiungi un contesto di output "collecting-Sequence" e imposta la durata su 0 cancella il contesto. Se la rimuovi, gli intent "Modifica" e "Fine" non si attiveranno di nuovo ora che l'agente ha completato la raccolta della sequenza.
  3. Aggiungi frasi di addestramento come "è tutto", "è fatta" e così via.

  4. Aggiungi un parametro "sequenza" con valore "#collecting- sequence.existing_sequenza" per estrarre sequenza dal contesto.

  5. Attiva la chiamata webhook per questo intent.

Collega gli intent tramite webhook

Ora hai tutto il necessario per programmare la logica per questi intent. Nei prossimi vedremo come programmare il webhook per usare tutti questi contesti, parametri ed eventi per completare il flusso di convalida della sequenza.