Creare un agente utilizzando i flussi

Questa guida mostra come utilizzare la console Dialogflow CX per creare e testare un agente di ordinazione di magliette utilizzando i flussi. Quando interagisci con questo agente, chiedi l'indirizzo del negozio, l'orario di apertura o ordina una maglietta.

Il seguente diagramma mostra l'agente completato per questa guida:

Screenshot del grafico degli agenti

Prima di iniziare

Completa le seguenti attività prima di leggere questa guida:

Crea un agente

Crea un agente per questa guida:

  1. Apri la console Dialogflow CX.
  2. Crea o scegli un progetto.
  3. Fai clic su Crea agente.
  4. Seleziona Crea personalizzato.
  5. Compila il modulo per le impostazioni di base dell'agente:
    1. Inserisci un nome visualizzato.
    2. Seleziona una posizione. Fai clic sul pulsante Modifica se vuoi modificare le impostazioni di geolocalizzazione avanzate.
    3. Seleziona un fuso orario
    4. Seleziona la lingua predefinita.
    5. (Facoltativo) Abilita Cloud Logging.
  6. Fai clic su Salva.

Importazione facoltativa dell'agente

Questa guida ti illustra i passaggi per creare un agente per l'ordine di magliette.

Per saltare i passaggi della console, scarica l'agente e importalo.

Flusso e intent predefiniti

Per un nuovo agente vengono creati automaticamente il seguente flusso e le seguenti finalità.

Puoi trovare gli intent facendo clic su Gestisci e poi su Intent, mentre puoi trovare il flusso facendo clic su Crea.

X Elemento
Intent di benvenuto predefinito L'intent di benvenuto predefinito ha frasi di addestramento come "Ciao" o "Buongiorno" che hanno lo scopo di corrispondere all'input utente iniziale dell'utente finale. Puoi modificare questo intent in base alle tue esigenze.
Intent negativo predefinito L'intent negativo predefinito può essere utilizzato per aggiungere frasi di addestramento a questo intent che fungono da esempi negativi.
Flusso di avvio predefinito Il flusso di avvio predefinito può essere utilizzato come unico flusso. È l'unico flusso che verrà utilizzato in questa guida. Per gli agenti più complessi, puoi aggiungere altri flussi. Questo flusso ha una route intent predefinita con l'intent di benvenuto predefinito come requisito dell'intent.

Testare il messaggio di risposta di benvenuto predefinito

Il flusso e gli intent predefiniti possono gestire una conversazione di base con solo un messaggio di benvenuto.

Per testare il nuovo agente:

  1. Fai clic sul pulsante Agente di test per aprire il simulatore.
  2. Inserisci hello nel campo di testo e premi Invio.
  3. L'agente risponde con un messaggio di benvenuto predefinito.
  4. Chiudi il simulatore.

Screenshot del simulatore

L'agente esegue i seguenti passaggi per questo input utente finale:

  1. Quando fornisci un input, l'agente valuta i gestori di stato nell'ambito del Flusso di avvio predefinito attivo e della pagina iniziale del flusso.
  2. L'agente identifica un percorso che corrisponde all'intent di benvenuto predefinito e lo esegue.
  3. L'agente seleziona uno dei messaggi di risposta di evasione in modo casuale e lo aggiunge alla coda di risposta.
  4. Poiché la route non ha una destinazione di transizione, il flusso e la pagina attivi rimangono invariati.
  5. L'agente ti invia i contenuti della coda di risposte.

Modificare il messaggio di risposta di benvenuto

Per modificare il messaggio di risposta di benvenuto:

  1. Fai clic sulla scheda Crea.
  2. Seleziona Flusso di avvio predefinito nella sezione Flussi.
  3. Fai clic sul nodo Pagina iniziale nel grafico.
  4. Trova l'intent Default Welcome Intent come requisito dell'intent e fai clic per aprire il riquadro di modifica dell'intent.
  5. Nella sezione Fulfillment, nella sottosezione Risposte dell'agente, elimina tutti i messaggi di risposta esistenti.
  6. Aggiungi Hello, this is a shirt ordering virtual agent. How can I help you? come unica risposta.
  7. Fai clic su Salva.
  8. Chiudi il riquadro di modifica dell'itinerario.

Screenshot della risposta dell'agente

Testa il messaggio di risposta di benvenuto aggiornato

Per testare la risposta aggiornata:

  1. Fai clic sul pulsante Agente di test per aprire il simulatore.
  2. Inserisci hello nel campo di testo e premi Invio.
  3. L'agente risponde con il tuo nuovo messaggio.
  4. Chiudi il simulatore.

Pagina della sede del negozio

Una conversazione (sessione) di Dialogflow CX può essere descritta e visualizzata come una macchina a stati. Gli stati di una sessione CX sono rappresentati dalle pagine. Poiché hai una sola pagina, l'agente non è molto utile. In questa sezione, crea un'altra pagina che gestisca le domande sulla posizione del negozio.

Crea l'intent località di interesse

Un intent classifica l'intenzione di un utente finale per un turno di conversazione.

Per creare un intent che viene abbinato quando l'input dell'utente finale richiede la posizione del negozio:

  1. Seleziona la scheda Gestisci.
  2. Fai clic su Intent.
  3. Fai clic su Crea.
  4. Inserisci store.location per il nome visualizzato dell'intent.
  5. Inserisci le seguenti frasi di addestramento:
    • Where is the store?
    • Directions
    • Tell me the address
    • Where do I pick up my order?
    • How do I get there?
    • Where is the store located?
    • What street are you on?
    • What is your address?
    • How do I get to your store?
    • Where are you located?
  6. Fai clic su Salva.

screenshot dell'intent

Crea la pagina della sede

Crea una nuova pagina. Puoi aggiungere un completamento della voce a questa pagina che viene eseguito ogni volta che la pagina diventa attiva. Questo completamento della voce deve avere un messaggio di risposta che fornisca la posizione del negozio.

Per creare la pagina della sede del negozio:

  1. Fai clic sulla scheda Crea.
  2. Seleziona Flusso di avvio predefinito nella sezione Flussi.
  3. Fai clic sul pulsante Aggiungi nella sezione Pagine. Viene visualizzata una voce di testo per il nome visualizzato della pagina.
  4. Inserisci Store Location come nome visualizzato della pagina e premi Invio.
  5. Fai clic sul pulsante more_vert accanto al nome visualizzato della pagina.
  6. Seleziona Modifica per aprire il riquadro di modifica della pagina.
  7. Trova Fulfillment della voce e fai clic su Modifica fulfillment.
  8. Fai clic su + Aggiungi risposta al dialogo per inserire Our store is located at 1007 Mountain Drive, Gotham City, NJ. nel campo Dialogo con l'agente della sezione Risposte dell'agente.
  9. Fai clic su Salva.
  10. Chiudi il riquadro di modifica della pagina.

screenshot della pagina

Aggiungere un percorso di località di interesse al flusso

Ora crea una route che abbia la pagina Sede del negozio come destinazione di transizione. Quando viene chiamato questo percorso, la sessione passa alla pagina Posizione negozio. Questa route viene applicata al flusso di avvio predefinito, quindi è inclusa nell'ambito finché il flusso è attivo.

Per un agente a flusso singolo, ciò significa che l'intent è sempre incluso nell'ambito. In qualsiasi momento della conversazione, un utente finale può chiedere l'indirizzo del negozio e verrà chiamato questo percorso.

Per creare l'itinerario:

  1. Fai clic sulla scheda Crea.
  2. Seleziona Flusso di avvio predefinito nella sezione Flussi.
  3. Fai clic sul nodo Pagina iniziale nel grafico. Questa è la pagina iniziale del flusso di avvio predefinito.
  4. Aggiungi il seguente percorso di intent:
    • Intenzione: store.location
    • Pagina di transizione: Store Location
  5. Fai clic su Salva.
  6. Chiudi il riquadro di modifica dell'itinerario dell'intent.

screenshot dell'intent route

Dopo aver chiuso il riquadro di modifica, nel grafico viene visualizzato un nodo per la nuova pagina. La freccia dal nodo Inizio al nodo Località negozio mostra come la sessione passa da un nodo all'altro.

Testare la pagina della sede del negozio

Per testare la pagina:

  1. Fai clic sul pulsante Agente di test per aprire il simulatore.
  2. Inserisci What is the store location? e premi il tasto Invio.
  3. L'agente fornisce l'indirizzo.
  4. Chiudi il simulatore.

L'agente esegue i seguenti passaggi per questo input utente finale:

  1. Quando fornisci un input, l'agente valuta i gestori di stato nell'ambito del Flusso di avvio predefinito attivo e della pagina iniziale del flusso.
  2. L'agente identifica un percorso che corrisponde all'intent store.location e lo esegue.
  3. Poiché l'intent non ha messaggi di risposta di evasione, l'agente non aggiunge nulla alla coda di risposte.
  4. L'agente trasferisce la sessione alla pagina Posizione negozio.
  5. L'agente aggiunge il messaggio di risposta all'evasione della voce dalla pagina Posizione negozio alla coda di risposte.
  6. L'agente ti invia i contenuti della coda di risposte.

Pagina dell'orario di apertura del negozio utilizzando la creazione in linea

In questa sezione, crei una pagina Orario di apertura che gestisce le domande degli utenti finali sull'orario di apertura. In precedenza, creavi pagine e intent dalle schede Crea e Gestisci. Questa sezione mostra un modo più rapido per creare questi componenti con la creazione in linea.

Per creare in linea un percorso intent, un intent e una pagina:

  1. Fai clic sul nodo Pagina iniziale nel grafico.
  2. Accanto a Itinerari, fai clic su Aggiungi. Viene visualizzato il riquadro di modifica dell'intent.
  3. Nella sezione Intent, seleziona Nuovo intent. Viene visualizzato il riquadro di modifica dell'intent.
  4. Crea un intent store.hours con le seguenti frasi di addestramento:

    • What are your store hours?
    • What time do you close?
  5. Fai clic su Salva. Il riquadro di modifica dell'intent si chiude.

  6. Vai alla sezione Transizione nel riquadro di modifica del percorso.

  7. Per la transizione Pagina, seleziona Nuova pagina.

  8. Inserisci Store Hours nella voce di testo visualizzata.

  9. Fai clic su Salva. La nuova pagina viene visualizzata nel grafico perché ora esiste una transizione che porta a questa pagina.

  10. Chiudi il riquadro di modifica dell'itinerario.

  11. Aggiungi un'evasione della voce che fornisca l'orario di apertura del negozio, come hai fatto per Sede del negozio.

  12. Chiudi tutti i riquadri di modifica aperti.

Pagina dell'articolo dell'ordine

Successivamente, crea una pagina che utilizzi i parametri del modulo. Quando richiedi un nuovo ordine di magliette, la sessione passa a questa pagina, che raccoglie le dimensioni e il colore dell'ordine.

Creare un tipo di entità personalizzato per la taglia della maglietta

I tipi di entità controllano la modalità di estrazione dei dati dall&#39input utentee finale. Dialogflow CX fornisce entità di sistema predefinite che corrispondono a tipi di dati comuni, come date, orari, colori e indirizzi email. Puoi anche creare entità personalizzate per dati specifici.

Per questo agente, puoi utilizzare un'entità di sistema per il colore della maglietta, ma devi creare un'entità personalizzata per la taglia della maglietta.

Il tipo di entità dimensione deve avere le seguenti voci di entità:

Entità Sinonimi
Piccolo piccolo, minuscolo
Media medio, normale, media
Grande grande, grosso, gigante

Per creare l'entità:

  1. Seleziona la scheda Gestisci.
  2. Fai clic su Tipi di entità.
  3. Fai clic su Crea.
  4. Imposta il nome visualizzato su size.
  5. Aggiungi le voci delle entità elencate nella tabella.
  6. Fai clic su Salva.

Creare un intent di ordine con parametri dell'intent

Hai bisogno di un intent che venga corrisposto quando l'utente finale richiede un nuovo ordine di magliette. Questo intent deve anche acquisire facoltativamente il colore o la taglia della maglietta scelta se l'utente finale fornisce queste informazioni inizialmente.

I parametri vengono utilizzati per acquisire e fare riferimento ai valori forniti dall'utente finale durante una sessione. Ogni parametro ha un nome visualizzato e un tipo di entità. A differenza dell'input non elaborato dell'utente finale, i parametri sono dati strutturati che puoi utilizzare per eseguire la logica o generare risposte.

Controlli il modo in cui i dati degli utenti finali vengono estratti con la corrispondenza degli intent annotando parti delle frasi di addestramento e configurando i parametri di intent associati.

Ad esempio, considera una frase di addestramento come "Che tempo farà domani a Tokyo?" Puoi annotare "domani" con un parametro date e "Tokyo" con un parametro location. Quando annoti parti di una frase di addestramento, Dialogflow CX riconosce che queste parti sono solo esempi di valori effettivi che possono essere forniti dagli utenti finali in fase di runtime.

Per un input utente finale come "Che tempo farà venerdì a Sydney?", Dialogflow CX può estrarre il parametro date da "Venerdì" e il parametro location da "Sydney".

Per annotare una frase di addestramento nella console:

  1. Evidenzia la parte della frase di addestramento che vuoi annotare.
  2. Seleziona il tipo di entità necessario dall'elenco.
  3. Dialogflow crea un parametro nella seguente tabella dei parametri.

Crea un intent denominato order.new seguendo questi passaggi:

  1. Per ogni frase che contiene un colore, annota il colore con un parametro color e il tipo di entità di sistema @sys.color.
  2. Per ogni frase che contiene una taglia di maglietta, annota la taglia con un parametro size e il tipo di entità personalizzata @size che hai creato in precedenza.

Le frasi di addestramento e i parametri dovrebbero essere simili ai seguenti:

Screenshot dell'intent

Creare una pagina di ordine

Crea una nuova pagina dell'ordine:

  • Nome visualizzato: New Order
  • Entry fulfillment: Ok, let's start a new order.

Aggiungere un modulo alla pagina dell'ordine

Per ogni pagina, puoi definire un modulo, ovvero un elenco di parametri da raccogliere dall'utente finale per la pagina. L'agente interagisce con l'utente finale per più turni di conversazione, finché non ha raccolto tutti i parametri del modulo richiesti, chiamati anche parametri della pagina. Per ogni parametro del modulo, fornisci anche prompt che l'agente utilizza per richiedere le informazioni all'utente finale. Questa procedura è chiamata compilazione del modulo.

Quando un utente finale fornisce i parametri di intent per una corrispondenza di intent, i parametri di intent diventano parametri di sessione. Quando una pagina diventa attiva inizialmente, tutti i parametri del modulo vengono precompilati con tutti i parametri di sessione che hanno lo stesso nome. Pertanto, se l'utente finale fornisce le dimensioni o il colore quando viene corrisposta l'intent order.new, questi valori vengono compilati automaticamente per il modulo.

Definisci due parametri del modulo obbligatori per la pagina Nuovo ordine:

Obbligatorio Nome visualizzato Tipo di entità È un elenco Prompt
color @sys.color Che colore vorresti?
dimensioni @size Di che taglia vuoi la maglietta?

Per aggiungere questo modulo:

  1. Fai clic sulla pagina Nuovo ordine nel grafico.
  2. Fai clic sul pulsante di aggiunta Parametri per aprire il riquadro di modifica dei parametri.
  3. Aggiungi i parametri come descritto nella tabella sopra.
  4. Fai clic su Salva.
  5. Chiudi il riquadro di modifica dei parametri.

Aggiungere una route di intent di ordine al flusso

Aggiungi un percorso al Flusso di avvio predefinito che porta alla pagina Nuovo ordine quando l'utente finale vuole effettuare un nuovo ordine:

  • Intent: order.new
  • Pagina di destinazione della transizione: Nuovo ordine

Pagina di conferma

La pagina finale conferma l'ordine e termina la sessione.

Crea la pagina di conferma

Crea una pagina di conferma con una risposta che utilizza i parametri di sessione per confermare l'ordine:

  • Nome visualizzato: Order Confirmation
  • Completamento della voce: You can pick up your order for a $session.params.size, $session.params.color shirt in 7 to 10 business days. Goodbye.

Aggiungere route di condizione alla pagina dell'ordine

Puoi utilizzare le condizioni per determinare se viene chiamato un percorso. Le condizioni vengono comunemente utilizzate per verificare se un modulo è completo oppure sono configurate per essere sempre chiamate durante la valutazione.

Per impostare le condizioni nella console, consulta la documentazione Imposta le condizioni.

Aggiungi il seguente percorso alla pagina dell'ordine, che viene chiamato quando viene compilato il modulo della pagina dell'ordine. Questo percorso della condizione utilizza i riferimenti ai parametri nella risposta all'utente finale e la sessione passa alla pagina Conferma ordine.

  • Condizione: $page.params.status = "FINAL"
  • Messaggio dell'agente: You have selected a $session.params.size, $session.params.color shirt.
  • Pagina di transizione: Order Confirmation

Aggiungi il seguente percorso alla pagina dell'ordine. Questo percorso viene eseguito per ogni turno conversazionale mentre la pagina è attiva e il percorso della condizione viene valutato. Quando la condizione menzionata in precedenza viene valutata e chiamata, la pagina diventa inattiva, quindi questo percorso di condizione true non viene valutato:

  • Condizione: true
  • Messaggio dell'agente: I'd like to collect a bit more information from you.

Crea un percorso di condizione per terminare la sessione

Aggiungi il seguente percorso della condizione alla pagina Conferma dell'ordine per terminare la sessione dopo che la pagina diventa attiva e l'inserimento della voce viene elaborato:

  • Condizione: true
  • Pagina di destinazione della transizione: End Session

Testa l'agente completato

Prova l'agente con il seguente dialogo:

Dialogo Spiegazione
Utente finale:ciao
Agente:ciao, sono un agente virtuale per l'ordine di magliette. Come posso aiutarti?
  1. Viene chiamato il percorso Intent di benvenuto predefinito nel Flusso di avvio predefinito.
  2. L'intent di evasione per questo gestore di stati ("Hello, this...") viene aggiunto alla coda delle risposte.
  3. L'agente invia la coda di risposte all'utente finale.
Utente finale: voglio comprare una maglietta blu
Agente: ok, iniziamo un nuovo ordine.
Agente:vorrei raccogliere qualche informazione in più.
Agente:di che taglia lo vuoi?
  1. Viene valutato l'intent order.new nel flusso di avvio predefinito.
  2. L'intent order.new viene corrisposto e il parametro intent color è impostato su "blue".
  3. La sessione passa alla pagina Nuovo ordine, e il parametro di intent colore diventa un parametro di sessione.
  4. La pagina Nuovo ordine ha un'evasione della voce ("Ok, iniziamo…"), quindi viene aggiunto alla coda delle risposte.
  5. Il parametro di sessione color viene utilizzato per compilare il parametro del modulo con lo stesso nome.
  6. Il percorso della condizione true nella pagina Nuovo ordine viene valutato e chiamato. Ha un messaggio di risposta ("Vorrei raccogliere…"), quindi viene aggiunto alla coda delle risposte.
  7. Il modulo della pagina non è compilato, quindi l'agente utilizza la richiesta di taglia ("Quale taglia...") e lo aggiunge alla coda delle risposte.
  8. L'agente invia la coda di risposte all'utente finale.
Utente finale: large
Agente: hai selezionato una maglietta blu di taglia large.
Agente: puoi ritirare il tuo ordine di una maglietta blu grande entro 7-10 giorni lavorativi. Arrivederci.
  1. L'input utente finale compila il parametro size richiesto dall'agente nel turno di conversazione precedente.
  2. Il percorso di completamento del modulo nella pagina Nuovo ordine viene valutato e chiamato. Ha un completamento ("Hai selezionato…"), che viene aggiunto alla coda di risposte con i riferimenti ai parametri risolti in valori effettivi forniti dall'utente finale.
  3. La sessione passa alla pagina Conferma dell'ordine.
  4. La pagina Conferma ordine ha un fulfillment di ingresso ("Puoi ritirare…"), che viene aggiunto alla coda di risposte.
  5. L'agente invia la coda di risposte all'utente finale.
  6. La sessione passa a Termina sessione.

Prepararsi per la produzione

Prima di eseguire l'agente in produzione, implementa le best practice per la produzione.