Crea un agente Dialogflow ES

Utilizza la console Dialogflow ES per creare e testare un agente.

Prima di iniziare

Prima di iniziare, completa i seguenti passaggi:

Crea un agente

  1. Vai alla console Dialogflow ES.
  2. Se richiesto, accedi alla console Dialogflow. Per saperne di più, consulta Panoramica della console di Dialogflow.
  3. Nel menu della barra laterale, espandi Agenti di caricamento.
  4. Fai clic su Crea nuovo agente.
  5. Inserisci il nome dell'agente, la lingua predefinita e il fuso orario predefinito.
  6. Inserisci un progetto esistente. Per consentire alla console Dialogflow di creare un progetto, seleziona Crea un nuovo progetto Google.
  7. Fai clic su Crea.

Intent

Gli intent classificano l'intenzione di un utente finale per un turno di conversazione. Per ogni agente, definisci molti intent che insieme gestiscono una conversazione completa.

Intent predefiniti

Quando crei un agente, Dialogflow crea due intent predefiniti per te:

  • Intent di benvenuto predefinito:questo intent viene abbinato quando l'utente finale inizia una conversazione con il tuo agente. Restituisce una risposta che consente all'utente finale di sapere cosa fa il tuo agente o cosa può dire per iniziare una conversazione.
  • Intent di riserva predefinito:questo intent viene abbinato quando l'agente non riesce ad abbinare l'espressione dell'utente finale a nessun altro intent.

Per visualizzare questi intent, vai all'elenco degli intent per il tuo agente:

  1. Vai alla console Dialogflow ES.
  2. Seleziona l'agente che hai creato.
  3. Fai clic su Intent nel menu della barra laterale.

La parte centrale della console Dialogflow mostra l'elenco degli intent per l'agente.

Screenshot dell'elenco degli intent

Testa l'intent di riserva predefinito

Screenshot del simulatore

Il simulatore Dialogflow si trova sul lato destro della console. Con il simulatore, puoi testare il tuo agente parlando o digitando messaggi.

Prova subito l'agente:

  1. Fai clic sul campo Prova subito.
  2. Digita What is your name?
  3. Premi Invio.

La risposta dell'agente viene visualizzata nella sezione Risposta predefinita. Poiché il tuo input non corrisponde a nessun intent, è stato trovato l'intent di fallback predefinito e hai ricevuto una delle risposte predefinite.

Crea un intent

I passaggi di questa sezione creano un intent che risponde alla domanda "Come ti chiami?" Per ogni intent, definisci molte frasi di addestramento. Una frase di addestramento è un esempio di ciò che un utente finale potrebbe digitare o dire al tuo agente, nota anche come espressione dell'utente finale. Definisci frasi di addestramento che aiutino Dialogflow a far corrispondere le espressioni a un intent.

Creare un intent:

  1. Fai clic sul pulsante Aggiungi intento accanto a Intenti nel menu della barra laterale.
  2. Inserisci get-agent-name nel campo Nome intent.
  3. Nella sezione Frasi di addestramento, fai clic su Aggiungi frasi di addestramento.
  4. Inserisci le seguenti frasi di addestramento:

    • What is your name?
    • Do you have a name?
    • Tell me your name

    Screenshot delle frasi di addestramento

  5. Nella sezione Risposte, inserisci quanto segue nella sezione Risposta di testo:

    • My name is Dialogflow!

    Screenshot delle frasi di addestramento

  6. Fai clic sul pulsante Salva e attendi che la finestra di dialogo Addestramento agente indichi che l'addestramento è completato.

Testare l'intent

Screenshot del simulatore

Nel simulatore, digita What's your name? e premi Invio.

L'agente risponde correttamente all'espressione, anche se questa differisce leggermente dalle frasi di addestramento fornite.

Dialogflow utilizza le frasi di addestramento come esempi per un modello di machine learning per abbinare le espressioni degli utenti finali agli intent. Il modello controlla l'espressione rispetto a ogni intent nell'agente, assegna un punteggio a ogni intent e abbina l'intent con il punteggio più alto. Se l'intent con il punteggio più alto ha un punteggio molto basso, viene abbinato l'intent di riserva.

Parametri ed entità

Quando un intent viene corrisposto in fase di runtime, Dialogflow fornisce i valori estratti dall'espressione dell'utente finale come parametri. Ogni parametro ha un tipo, chiamato tipo di entità, che determina esattamente come vengono estratti i dati. 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.

Per controllare la modalità di estrazione dei dati durante la creazione di un agente, annota parti delle frasi di addestramento e configura i parametri associati.

Creare parametri

Crea parametri di intent:

  1. Fai clic sul pulsante Più accanto a Intent nel menu della barra laterale.
  2. Assegna un nome all'intent set-language nella parte superiore del modulo dell'intent.
  3. Aggiungi le seguenti frasi di addestramento:
    • I know English
    • I speak French
    • I know how to write in German
  4. Fai clic sul pulsante Salva e attendi che la finestra di dialogo Addestramento agente indichi che l'addestramento è completato.

    Screenshot della frase di addestramento annotata

Dialogflow rileva automaticamente i parametri nelle frasi di addestramento che vengono riconosciuti come entità di sistema. Si tratta di entità fornite da Dialogflow per molti tipi di dati comuni, come località, colore e data.

Dopo aver aggiunto le frasi di addestramento, Dialogflow crea una riga nella tabella Azione e parametri:

Screenshot della frase di addestramento annotata

  • Obbligatorio:non selezionato; questo parametro è facoltativo.
  • Nome parametro:denominato automaticamente language perché è riconosciuto come lingua.
  • Entità:riconosciuta come entità di sistema @sys.language.
  • Valore:l'identificatore utilizzato quando si fa riferimento al valore di questo parametro.
  • Is List (È elenco): non selezionato; questo parametro non è un elenco.

Utilizzare i dati dei parametri in una risposta

Puoi utilizzare il valore di un parametro nelle risposte. Ad esempio, puoi utilizzare il riferimento al parametro $language nelle risposte quando crei un agente. In fase di runtime, l'agente lo sostituisce con la lingua specificata nell'espressione dell'utente finale.

Aggiungi una risposta che utilizza un parametro:

  1. Vai alla sezione Risposte.
  2. Nella sezione Risposta di testo, aggiungi quanto segue: Wow! I didn't know you knew $language.
  3. Fai clic sul pulsante Salva e attendi che la finestra di dialogo Addestramento agente indichi che l'addestramento è completato.

Testare il parametro

Screenshot del simulatore

Nel simulatore, digita I know Russian. Puoi notare che Dialogflow estrae correttamente il parametro language con il valore Russian e Russian è stato inserito correttamente dove è stato utilizzato il riferimento al parametro nella risposta.

Crea le tue entità

Nella maggior parte dei casi, devi raccogliere dati specifici dagli utenti che non vengono forniti dalle entità di sistema. Per gestire questa situazione, puoi creare entità personalizzate.

Crea un'entità personalizzata:

  1. Fai clic sul pulsante Aggiungi entità accanto a Entità nel menu della barra laterale.
  2. Inserisci language-programming come nome dell'entità.
  3. Aggiungi le seguenti voci (righe) di entità:

    Valore di riferimento Sinonimi
    JavaScript JavaScript, js, ECMAScript
    Java Java
    Python Python, py
  4. Fai clic sul pulsante Salva e attendi che la finestra di dialogo Addestramento agente indichi che l'addestramento è completato.

Screenshot dell'utilizzo dell'entità

Dialogflow è in grado di gestire casi semplici come il plurale e l'uso delle maiuscole. Aggiungi tutti i sinonimi possibili per le tue voci. Più sinonimi aggiungi, più l'agente può identificare le tue entità.

Utilizzare la nuova entità

Aggiungi frasi di addestramento all'intent set-language che utilizza la nuova entità:

  1. Fai clic su Intent nel menu della barra laterale.
  2. Fai clic sull'intent set-language.
  3. Aggiungi le seguenti frasi di addestramento:
    • I know javascript
    • I know how to code in Java
  4. Nota che i linguaggi di programmazione in queste frasi di addestramento vengono annotati e aggiunti automaticamente ai parametri nella sezione Azione e parametri.
  5. Nella sezione Risposte, aggiungi la seguente seconda risposta di testo: $language-programming is an excellent programming language.
  6. Fai clic sul pulsante Salva e attendi che la finestra di dialogo Addestramento agente indichi che l'addestramento è completato.

Testare la nuova entità

Screenshot del simulatore

Nel simulatore, inserisci I know how to code in py. Dialogflow estrae correttamente py per il parametro language-programming, lo identifica come entità Python e inserisce il valore nella risposta.

Contesti

Per controllare il flusso della conversazione, puoi utilizzare i contesti.

Aggiungere un intent di follow-up

Gli intent di follow-up ti consentono di controllare una conversazione senza creare e gestire manualmente i contesti.

Quando crei un intent di follow-up, un contesto di output viene aggiunto all'intent principale e un contesto di input con lo stesso nome viene aggiunto all'intent secondario. Ciò significa che l'intent di follow-up viene abbinato solo quando l'intent principale viene abbinato nel turno conversazionale precedente.

Aggiungi un intent di follow-up personalizzato all'intent set-language:

  1. Seleziona l'intent set-language che hai creato nei passaggi precedenti.
  2. Nella sezione Risposta, aggiorna la risposta di testo:
    • Wow! I didn't know you knew $language. How long have you known $language?
  3. Fai clic sul pulsante Salva e attendi che la finestra di dialogo Addestramento agente indichi che l'addestramento è completato.
  4. Fai clic su Intent nel menu della barra laterale.
  5. Posiziona il cursore sull'intent set-language e fai clic su Aggiungi intent di follow-up.
  6. Fai clic su Personalizzato nell'elenco.
  7. Fai clic sul pulsante Salva e attendi che la finestra di dialogo Addestramento agente indichi che l'addestramento è completato.

Dialogflow assegna automaticamente all'intent secondario il nome set-language - custom.

Screenshot di follow-up

Corrispondenza di intent con intent di follow-up

Gli intent di follow-up vengono abbinati solo dopo l'intent principale. Poiché l'intent set-language - custom viene abbinato solo dopo l'intent set-language, all'utente è stata appena posta la domanda "Da quanto tempo conosci $language?" Aggiungi frasi di addestramento per le probabili risposte degli utenti a questa domanda:

  1. Fai clic su Intent nel menu della barra laterale.
  2. Fai clic sull'intent set-language - custom.
  3. Aggiungi le seguenti frasi di addestramento:
    • 3 years
    • about 4 days
    • for 5 years
  4. Fai clic sul pulsante Salva e attendi che la finestra di dialogo Addestramento agente indichi che l'addestramento è completato.

Testare l'intent di follow-up

Inserisci I know French nel simulatore e poi rispondi alla domanda How long have you known French con about 2 weeks.

Nonostante non ci sia una risposta per la seconda espressione (about 2 weeks), l'espressione viene associata all'intent corretto (set-language - custom) e il parametro di durata viene analizzato correttamente (2 weeks).

Intent e contesti

Esamina l'intent set-language per verificare che set-language-followup sia elencato come contesto di output preceduto dal numero 2. Questo numero è chiamato durata.

Screenshot del contesto dell'output

Dopo la corrispondenza dell'intent set-language, il contesto set-language-followup è attivo e collegato alla conversazione per due turni (durata di 2). Pertanto, quando rispondi a una domanda come How long have you known $language?, il contesto set-language-followup è attivo.

Esamina l'intent set-language - custom per verificare che set-language-followup sia elencato come contesto di input, che è lo stesso del contesto di output dell'intent set-language.

Gli intent con un contesto di input che corrisponde a un contesto attivo hanno la priorità quando Dialogflow corrisponde agli intent.

Contesti e parametri

I contesti memorizzano i valori dei parametri e puoi accedere ai valori dei parametri definiti nell'intent set-language quando il contesto di output è attivo. Nell'intent set-language - custom, hai chiesto solo la durata per cui l'utente conosce la lingua e non la lingua di riferimento.

Per fare riferimento alla lingua nella risposta:

  1. Aggiorna la risposta di testo dell'intent set-language - custom a I can't believe you've known #set-language-followup.language for $duration!
  2. Fai clic sul pulsante Salva e attendi che la finestra di dialogo Addestramento agente indichi che l'addestramento è completato.

Il riferimento #set-language-followup.language è un riferimento al parametro per un contesto attivo.

Testare il parametro di contesto

Inserisci I know French nel simulatore e poi rispondi alla domanda con 1 week. Tieni presente che il valore parametro language viene recuperato dal contesto.

Produzione

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

Passaggi successivi

Prova la guida rapida di Fulfillment.