Questa guida mostra come utilizzare la console Dialogflow CX per creare e testare un semplice agente di ordinazione di magliette utilizzando i flussi. Quando interagisci con questo agente, puoi chiedere la posizione del negozio, l'orario di apertura o effettuare un ordine di una maglietta.
L'agente completato per questa guida verrà rappresentato graficamente dalla console come segue:

Prima di iniziare
Prima di leggere questa guida, devi:
- Leggi le nozioni di base sui flussi.
- Esegui i passaggi di configurazione.
Crea un agente
Crea un nuovo agente per questa guida:
- Apri la console Dialogflow CX.
- Crea o scegli un progetto.
- Fai clic su Crea agente.
- Seleziona Crea personalizzato.
- Compila il modulo per le impostazioni di base dell'agente:
- Puoi scegliere qualsiasi nome visualizzato.
- Seleziona la tua posizione preferita. Fai clic sul pulsante Modifica se vuoi modificare le impostazioni di geolocalizzazione avanzate.
- Seleziona il fuso orario che preferisci.
- Seleziona la lingua predefinita per l'agente.
- (Facoltativo) Abilita Stackdriver Logging.
- Fai clic su Salva.
Importazione facoltativa dell'agente
Questa guida ti illustra i passaggi per creare un semplice agente per l'ordine di magliette. Se vuoi saltare i passaggi della console, puoi scaricare l'agente e importarlo.
Flusso e intent predefiniti
Per un nuovo agente vengono creati automaticamente il seguente flusso e i seguenti intent. Puoi trovare gli intent facendo clic su Gestisci e poi su Intent. Per trovare il flusso, fai clic su Crea.
| Termine | Definizione |
|---|---|
| Intent di benvenuto predefinito | L'intent di benvenuto predefinito ha frasi di addestramento semplici come "Ciao" o "Buongiorno", che hanno lo scopo di corrispondere all'input utente iniziale dell'utente finale. Puoi modificare questo intent come preferisci. |
| Intent negativo predefinito | L'intent negativo predefinito può essere utilizzato per aggiungere frasi di addestramento a questo intent che fungono da esempi negativi. |
| Default Start Flow | 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 di intent predefinita con l'intent di benvenuto predefinito come requisito di intent. |
Testare il messaggio di risposta di benvenuto predefinito
Il flusso e gli intent predefiniti possono gestire una conversazione di base con un solo messaggio di benvenuto. Per testare il nuovo agente:
- Fai clic sul pulsante Agente di test per aprire il simulatore.
- Inserisci
hellonella voce di testo e premi Invio. - L'agente risponde con un messaggio di benvenuto predefinito.
- Chiudi il simulatore.

I seguenti passaggi sono stati eseguiti dall'agente per questo input utente finale:
- Quando hai fornito l'input, il flusso di avvio predefinito era il flusso attivo e la pagina iniziale del flusso era la pagina attiva. Ogni gestore di stato applicato al flusso attivo era in ambito, quindi l'agente li ha valutati.
- Una delle route valutate ha l'intent di benvenuto predefinito come requisito dell'intent. Il tuo input corrisponde a questo intent, quindi è stato chiamato l'itinerario.
- La route chiamata ha diversi messaggi di risposta di evasione. L'agente ne ha scelto uno a caso e lo ha aggiunto alla coda delle risposte.
- La route chiamata non ha una destinazione di transizione, quindi il flusso e la pagina attivi non sono cambiati.
- L'agente ha risposto con i contenuti della coda delle risposte.
Modificare il messaggio di risposta di benvenuto
Puoi modificare questo messaggio di benvenuto. Per modificare il messaggio di risposta di benvenuto:
- Fai clic sulla scheda Crea.
- Seleziona il Flusso di avvio predefinito nella sezione Flussi.
- Fai clic sul nodo Pagina iniziale nel grafico. Questa è la pagina iniziale del Flusso di avvio predefinito.
- Trova l'intent Default Welcome Intent come requisito dell'intent e fai clic su di esso. Si apre un riquadro per modificare le informazioni sulla route di intent.
- Trova la sezione di evasione e, nella sottosezione delle risposte dell'agente, elimina tutti i messaggi di risposta,
poi aggiungi
Hello, this is a shirt ordering virtual agent. How can I help you?come unica risposta. - Fai clic su Salva.
- Chiudi il riquadro di modifica dell'itinerario.

Testa il messaggio di risposta di benvenuto aggiornato
Per testare la risposta aggiornata:
- Fai clic sul pulsante Agente di test per aprire il simulatore.
- Inserisci
hellonella voce di testo e premi Invio. - L'agente risponde con il tuo nuovo messaggio.
- 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. Finora hai solo una pagina, quindi l'agente non è molto utile. In questa sezione, crei un'altra pagina che gestisce le domande sulla posizione del negozio.
Crea l'intent di località
Un intent classifica l'intenzione di un utente finale per un turno di conversazione. Per creare un intent che venga corrisposto quando l'input dell'utente finale richiede la posizione del negozio:
- Seleziona la scheda Gestisci.
- Fai clic su Intenti.
- Fai clic su Crea.
- Inserisci
store.locationcome nome visualizzato dell'intent. - Inserisci le seguenti frasi di addestramento:
Where is the store?DirectionsTell me the addressWhere 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?
- Fai clic su Salva.

Crea la pagina della sede
Ora crea la nuova pagina. Puoi aggiungere a questa pagina un fulfillment di intent che viene chiamato 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:
- Fai clic sulla scheda Crea.
- Seleziona il Flusso di avvio predefinito nella sezione Flussi.
- Fai clic sul pulsante add Aggiungi nella sezione Pagine. Viene visualizzata una voce di testo per il nome visualizzato della pagina.
- Inserisci
Store Locationper il nome visualizzato della pagina e premi Invio. - Fai clic sul pulsante more_vert delle opzioni accanto al nome visualizzato della pagina.
- Seleziona Modifica per aprire il riquadro di modifica della pagina.
- Trova Fulfillment delle voci e fai clic su Modifica fulfillment.
- Fai clic su + Aggiungi risposta di dialogo per inserire
Our store is located at 1007 Mountain Drive, Gotham City, NJ.nel campo Dialogo dell'agente della sezione Risposte dell'agente. - Fai clic su Salva.
- Chiudi il riquadro di modifica della pagina.

Aggiungere un percorso di intent di località al flusso
Ora devi creare un percorso che abbia la pagina della sede del negozio come target di transizione. Quando viene chiamata questa route, la sessione passa alla pagina della sede del 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, l'utente finale può chiedere l'indirizzo del negozio e verrà chiamato questo percorso.
Per creare questo percorso:
- Fai clic sulla scheda Crea.
- Seleziona il Flusso di avvio predefinito nella sezione Flussi.
- Fai clic sul nodo Pagina iniziale nel grafico. Questa è la pagina iniziale del Flusso di avvio predefinito.
- Aggiungi il seguente percorso di intent:
- Intent:
store.location - Pagina di transizione:
Store Location
- Intent:
- Fai clic su Salva.
- Chiudi il riquadro di modifica dell'intent.

Quando chiudi il riquadro di modifica, nota che la nuova pagina ha un nodo nel grafico. La freccia dal nodo Inizia al nodo Posizione negozio indica come la sessione può passare da un nodo all'altro.
Testare la pagina della sede del negozio
Per testare la pagina:
- Fai clic sul pulsante Agente di test per aprire il simulatore.
- Inserisci
What is the store location?e premi Invio. - L'agente fornisce l'indirizzo.
- Chiudi il simulatore.
L'agente ha eseguito i seguenti passaggi per l'input utente finale:
- Quando hai fornito l'input, il flusso di avvio predefinito era il flusso attivo e la pagina iniziale del flusso era la pagina attiva. Ogni gestore di stato applicato al flusso attivo era in ambito, quindi l'agente li ha valutati.
- Uno dei percorsi valutati ha store.location come requisito di intent. Il tuo input corrisponde a questo intent, quindi è stato chiamato l'itinerario.
- La route chiamata non ha messaggi di risposta di fulfillment, quindi non ha aggiunto nulla alla coda di risposte.
- Il percorso chiamato ha una destinazione di transizione, quindi la pagina attiva è cambiata nella pagina Posizione negozio.
- La pagina Sede del negozio contiene un'evasione di inserimento, quindi il messaggio di risposta per l'evasione è stato aggiunto alla coda di risposta (l'indirizzo).
- L'agente ha risposto con i contenuti della coda delle risposte.
Pagina degli orari del negozio utilizzando la creazione in linea
In questa sezione, crei una pagina Orari del negozio che gestisce le domande degli utenti finali sugli orari del negozio. Nelle sezioni precedenti, hai creato pagine e intent dalle schede Crea e Gestisci. Questa sezione mostra un modo più rapido per creare questi tipi con la creazione in linea.
Per creare in linea un percorso intent, un intent e una pagina:
- Fai clic sul nodo Pagina iniziale nel grafico.
- Accanto a Itinerari, fai clic su add Aggiungi. Viene visualizzato il riquadro di modifica dell'intent.
- Nella sezione Intent, seleziona Nuovo intent. Viene visualizzato il riquadro di modifica dell'intent.
Crea un intent
store.hourscon le seguenti frasi di addestramento:What are your store hours?What time do you close?
Fai clic su Salva per salvare l'intent. Il riquadro di modifica dell'intent si chiude.
Scorri verso il basso fino alla sezione Transizione nel riquadro di modifica dell'itinerario.
Per la transizione Pagina, seleziona Nuova pagina.
Inserisci
Store Hoursnella voce di testo visualizzata.Fai clic su Salva. La nuova pagina viene visualizzata nel grafico, perché ora esiste una transizione che la collega.
Chiudi il riquadro di modifica dell'itinerario.
Aggiungi un fulfillment dell'inserimento che fornisca l'orario di apertura del negozio, in modo simile ai passaggi eseguiti per la sede del negozio.
Chiudi tutti i riquadri di modifica aperti.
Pagina dell'articolo dell'ordine
Successivamente, creerai una pagina che utilizza parametri del modulo. Quando l'utente finale richiede un nuovo ordine di magliette, la sessione passerà a questa pagina. Quando è attiva, questa pagina raccoglie una taglia e un colore per l'ordine della maglietta.
Creare un tipo di entità personalizzato per la taglia della maglietta
I tipi di entità vengono utilizzati per controllare come vengono estratti i dati dall'input utente finale. Dialogflow CX fornisce entità di sistema predefinite che possono corrispondere a molti tipi comuni di dati. Ad esempio, esistono entità di sistema per la corrispondenza di date, ore, colori, indirizzi email e così via. Puoi anche creare entità personalizzate per la corrispondenza dei dati personalizzati.
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 |
|---|---|
| small | piccolo, minuscolo |
| media | media, normale, media |
| grande | grande, enorme, gigante |
Per creare questa entità:
- Seleziona la scheda Gestisci.
- Fai clic su Tipi di entità.
- Fai clic su +Crea.
- Imposta il nome visualizzato su
size. - Aggiungi le voci di entità elencate nella tabella sopra.
- 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 dovrebbe anche acquisire facoltativamente il colore e/o la taglia della maglietta desiderati forniti dall'utente finale nel caso in cui fornisca queste informazioni in anticipo.
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 grezzo dell'utente finale, i parametri sono dati strutturati che possono essere facilmente utilizzati per eseguire una 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
"Quali sono le previsioni per domani a Tokyo?"
Devi 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 verranno forniti dagli utenti finali in fase di runtime.
Per un input utente finale come
"Che previsioni meteo ci sono venerdì a Sydney?",
Dialogflow CX estrarrebbe il parametro date da "Venerdì"
e il parametro location da "Sydney".
Per annotare una frase di addestramento con la console:
- Seleziona la parte della frase di addestramento che vuoi annotare.
- Seleziona dall'elenco il tipo di entità che preferisci.
- Un parametro viene creato per te nella tabella dei parametri riportata di seguito.
Crea un intento simile ai passaggi che hai seguito sopra.
Assegna a questo intent il nome order.new.
Per ogni frase che contiene un colore,
annotare il colore con un parametro color
e il tipo di entità di sistema @sys.color.
Per ogni frase che contiene una taglia di camicia,
annotare la taglia con un parametro size
e il tipo di entità personalizzata @size creato nei passaggi precedenti.
Le frasi di addestramento e i parametri dovrebbero essere simili ai seguenti:

Creare una pagina di ordine
Crea la nuova pagina dell'ordine seguendo passaggi simili a quelli precedenti:
- Nome visualizzato:
New Order - Completamento della voce:
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 che devono essere raccolti 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, noti anche come 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 per la prima volta, tutti i parametri del modulo vengono precompilati con eventuali parametri di sessione con lo stesso nome. Pertanto, se l'utente finale fornisce taglia o colore quando viene trovata una corrispondenza con l'intent order.new, questi valori verranno compilati automaticamente nel modulo.
Per la nuova pagina dell'ordine, devi definire due parametri del modulo obbligatori:
| Obbligatorio | Nome visualizzato | Tipo di entità | È un elenco | Prompt |
|---|---|---|---|---|
| color | @sys.color | Che colore vorresti? | ||
| dimensioni | @size | Di che taglia vuoi? |
Per aggiungere questo modulo:
- Fai clic sulla pagina Nuovo ordine nel grafico.
- Fai clic sul pulsante Parametri aggiungi add. Viene visualizzato il riquadro di modifica dei parametri.
- Aggiungi i parametri come descritto nella tabella sopra.
- Fai clic su Salva.
- Chiudi il riquadro di modifica dei parametri.
Aggiungere una route di intent di ordine al flusso
In modo simile ai passaggi che hai seguito sopra, aggiungi un percorso al flusso di avvio predefinito. Questo percorso deve essere chiamato quando l'utente finale vuole effettuare un nuovo ordine:
- Intent: order.new
- Pagina di destinazione della transizione: Nuovo ordine
Pagina di conferma
L'ultima pagina confermerà l'ordine e terminerà 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 percorsi di condizione alla pagina dell'ordine
Puoi anche utilizzare condizioni per determinare se viene chiamata una route. Le condizioni vengono comunemente utilizzate per verificare se un modulo è completo o sono configurate per essere sempre chiamate durante la valutazione.
Per impostare le condizioni nella console, consulta la documentazione Imposta condizioni.
Aggiungi il seguente percorso alla pagina dell'ordine, che verrà chiamato quando il modulo della pagina dell'ordine viene compilato. Nota come questo percorso della condizione utilizza i riferimenti ai parametri nella risposta all'utente finale e come la sessione passa alla pagina Conferma ordine.
- Condizione:
$page.params.status = "FINAL" - Agent Says:
You have selected a $session.params.size, $session.params.color shirt. - Pagina di transizione:
Order Confirmation
Aggiungi il seguente percorso alla pagina dell'ordine, che verrà chiamato per ogni turno conversazionale in cui la pagina è attiva e il percorso della condizione viene valutato. Quando la condizione precedente viene valutata e chiamata, la pagina diventa inattiva, quindi questo percorso di condizione true non viene valutato:
- Condizione:
true - Agent Says:
I'd like to collect a bit more information from you.
Crea un percorso di condizione per terminare la sessione
Aggiungi il seguente percorso di condizione alla pagina Conferma ordine per terminare la sessione una volta che la pagina è diventata attiva e l'evasione della voce è stata elaborata:
- Condizione:
true - Target di transizione: Pagina:
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? |
|
|
Utente finale: voglio comprare una maglietta blu Agente: ok, iniziamo un nuovo ordine. Agente:vorrei raccogliere qualche informazione in più. Agente:di che taglia la vuoi? |
|
|
Utente finale: taglia Agente: hai selezionato una maglietta blu di taglia grande. Agente:puoi ritirare il tuo ordine per una maglietta blu grande entro 7-10 giorni lavorativi. Arrivederci. |
|
Messa in produzione
Prima di eseguire l'agente in produzione, assicurati di implementare le best practice per la produzione.