Intent

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

Un intent contiene i seguenti dati:

Termine Definizione
Nome visualizzato Nome visualizzato nella console per l'intent.
Etichette Etichette che aiutano a classificare gli intent. Ad esempio, intento generico.
Frasi di addestramento Frasi di addestramento sono frasi di esempio di ciò che gli utenti finali potrebbero digitare o dire, note come input dell'utente finale. Quando l'input utente finale assomiglia a una di queste frasi, Dialogflow CX corrisponde all'intent. Non devi definire ogni possibile esempio, perché il machine learning integrato di Dialogflow CX espande l'elenco con altre frasi simili.
Parametri Definisci le frasi di addestramento da utilizzare parametri per estrarre valori da parti specifiche dell'input utente finale.
Pattern DTMF Consulta DTMF per le integrazioni di telefonia.

Corrispondenza di intent

Quando un utente finale inserisce un input (testo, voce o pressione di tasti del telefono), Dialogflow CX lo confronta con le frasi di addestramento degli intent per trovare la corrispondenza migliore. Questo processo è chiamato corrispondenza dell'intent. La corrispondenza delle intenzioni può verificarsi solo per le intenzioni associate a una route di intent (un gestore di stato con un requisito di intent) nell'ambito.

L'input di pressione dei tasti viene abbinato in base ai pattern DTMF. Quando cerca un intent corrispondente al testo, tuttavia, Dialogflow CX assegna un punteggio alle potenziali corrispondenze con un livello di confidenza del rilevamento dell'intent, noto anche come punteggio di confidenza. Questi valori vanno da 0,0 (completamente incerto) a 1,0 (completamente certo). Una volta assegnato un punteggio agli intent, ci sono due possibili risultati:

Frasi di addestramento

Le frasi di addestramento sono frasi di esempio di ciò che gli utenti finali potrebbero digitare o dire, chiamate input dell'utente finale. Per ogni intento, crei molte frasi di addestramento. Quando l'input di un utente finale assomiglia a una di queste frasi, Dialogflow CX corrisponde all'intent.

Ad esempio, la frase di addestramento "Voglio una pizza" addestra l'agente a riconoscere l'input utente finale simile a questa frase, come "Prendi una pizza" o "Ordina una pizza".

Non devi definire ogni esempio possibile, perché il machine learning integrato di Dialogflow CX espande l'elenco con altre frasi simili. Devi creare almeno 10-20 frasi di addestramento (a seconda della complessità dell'intent), in modo che l'agente possa riconoscere una serie di input dell'utente finale. Ad esempio, se vuoi che l'intent riconosca l'input di un utente finale sul suo colore preferito, potresti definire le seguenti frasi di addestramento:

  • "Mi piace il rosso"
  • "Il mio colore preferito è il giallo"
  • "black"
  • "Il blu è il mio preferito"

Generare e tradurre automaticamente le frasi di addestramento

Hai la possibilità di utilizzare la generazione di AI per generare automaticamente le frasi di addestramento anziché inserirle manualmente. Per utilizzare questa funzionalità:

  1. Vai alla scheda Gestisci e fai clic su Intent. Scegli un intent esistente o fai clic su + Crea per crearne uno nuovo.
  2. Assicurati di inserire uno scopo per l'intent nel campo Descrizione, ad esempio "Questo intent viene attivato quando un utente chiede informazioni sullo stato del suo ordine". Il generatore di AI utilizza questo campo per generare frasi di addestramento più accurate.
  3. Fai clic sul pulsante di opzione __ frasi appena generate con l'AI. Il valore predefinito è 3. La generazione di più di 15 frasi di addestramento alla volta può causare errori.
  4. Fai clic su + Aggiungi. L'AI genererà il numero specificato di frasi di addestramento e le inserirà nella tabella. Assicurati di esaminare tutte le frasi di addestramento generate per verificarne l'accuratezza.

Per informazioni sull'utilizzo di questa funzionalità per generare e tradurre automaticamente i dati per le lingue non predefinite, consulta la documentazione sugli agenti multilingue.

Annotare le frasi di addestramento

Controlli il modo in cui i dati degli utenti finali vengono estratti annotando parti delle frasi di addestramento e configurando i parametri 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".

Devi annotare tutte le parti delle frasi di addestramento che devono essere estratte come parametri. In caso contrario, Dialogflow non estrarrà i valori.

Quando crei un agente con la console, la maggior parte delle annotazioni viene creata automaticamente quando aggiungi frasi di addestramento che contengono parti che possono essere abbinate a un tipo di entità esistente. Queste parti sono evidenziate nella console. Puoi modificare queste annotazioni e questi parametri in base alle tue esigenze.

Per annotare manualmente una frase di addestramento con la console:

  1. Seleziona la parte della frase di addestramento che vuoi annotare.
  2. Seleziona dall'elenco il tipo di entità che preferisci.
  3. Un parametro viene creato per te nella tabella dei parametri riportata di seguito.

Quando crei un agente con l'API, devi annotare manualmente le parti delle frasi di addestramento. Visualizza il tipo TrainingPhrase utilizzato dal tipo Intent.

Seleziona un protocollo e una versione per il riferimento all'intent:

Protocollo V3 V3beta1
REST Risorsa intent Risorsa intent
RPC Interfaccia intent Interfaccia intent
C++ IntentsClient Non disponibile
C# IntentsClient Non disponibile
Go IntentsClient Non disponibile
Java IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP Non disponibile Non disponibile
Python IntentsClient IntentsClient
Ruby Non disponibile Non disponibile

Entità implicite create dalle frasi di addestramento

La maggior parte delle entità personalizzate viene definita in modo esplicito creando tipi di entità e aggiungendo voci di entità. Tuttavia, le entità personalizzate possono contenere anche valori impliciti. Ciò si verifica quando annoti il testo di una frase di addestramento, dove il testo annotato non è un valore definito dal tipo di entità selezionato. Il testo annotato diventa un valore di riferimento dell'entità per la voce dell'entità aggiunta implicitamente. Se il tipo di entità è un'entità mappa, il testo diventa anche un sinonimo della voce dell'entità.

Intent di benvenuto predefinito

Quando crei un agente, viene creato un intent di benvenuto predefinito. Per alcune lingue, l'intent 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.

Quando utilizzi l'API, puoi fare riferimento a questo intent con il seguente ID intent:

00000000-0000-0000-0000-000000000000

Se l'agente avvia la conversazione, puoi attivare questo intent utilizzando l'API. Utilizza il valore projects/<PROJECT_ID>/locations/<LOCATION_ID>/agents/<AGENT_ID>/intents/00000000-0000-0000-0000-000000000000 nel campo QueryInput.intent.intent quando chiami il metodo detectIntent o streamingDetectIntent.

Intent negativo predefinito

Quando crei un agente, viene creato un intent negativo predefinito. Puoi aggiungere a questo intent frasi di addestramento che fungono da esempi negativi. Potrebbero verificarsi casi in cui l'input utente finale assomiglia leggermente alle frasi di addestramento negli intent normali, ma non vuoi che questi input corrispondano a intent normali.

Ad esempio, un agente di prenotazione di camere potrebbe avere una frase di addestramento come "Vorrei prenotare una stanza". Se l'utente finale vuole acquistare un libro sulle stanze, potrebbe dire "Vorrei acquistare un libro sulle stanze". Per assicurarti che l'input utente finale non corrisponda al tuo intento, puoi aggiungere la frase come esempio negativo.

Inoltre, devi aggiungere possibili frasi che non rientrano nell'ambito dell'agente, in modo che non corrispondano ad alcun intent. Tuttavia, evita di aggiungere una quantità molto elevata di queste frasi. Ad esempio, se definisci 10.000 frasi di intent negativi predefiniti, ciò influisce negativamente sulla corrispondenza degli intent normale.

Devi rivedere regolarmente queste frasi, in quanto alcune di queste potrebbero essere state originariamente fuori dall'ambito dell'agente, ma sono state successivamente aggiunte agli intent.

L'intent negativo predefinito ha un impatto su tutta la corrispondenza degli intent. Le frasi che aggiungi potrebbero migliorare la corrispondenza per un intento, ma peggiorarla per un altro. Ad esempio, potresti aggiungere "chiamate internazionali" all'intent negativo predefinito per evitare la corrispondenza con un intent di viaggio internazionale. Tuttavia, in questo modo la frase non corrisponderà a un intento di chiamata internazionale.

Quando utilizzi l'API, puoi fare riferimento a questo intent con il seguente ID intent:

00000000-0000-0000-0000-000000000001

Annulla intent

Durante una conversazione, l'utente finale potrebbe voler annullare l'argomento di conversazione corrente. Ad esempio, la pagina attualmente attiva potrebbe chiedere una data per un nuovo appuntamento, ma l'utente finale ha deciso di non creare un nuovo appuntamento. L'utente finale può dire qualcosa come "annulla" o "non voglio un nuovo appuntamento". Per gestire questa situazione, puoi creare uno o più intent di annullamento per il tuo agente. Puoi assegnare a questi intent di annullamento il nome che preferisci, ma è consuetudine includere "annulla" nel nome. Devi associare questi intent di annullamento a route di intent che rientrano nell'ambito in punti pertinenti della conversazione. Queste route di intent devono passare a una pagina appropriata per gestire l'annullamento.

Le frasi di addestramento per gli intent di annullamento devono gestire sia i tentativi generici che quelli specifici per argomento di annullamento. Ad esempio:

  • Annulla
  • Interrompi
  • Ho cambiato idea
  • Ignora
  • Torna indietro
  • Indietro
  • Non voglio un nuovo appuntamento
  • Annulla nuovo appuntamento
  • Elimina nuovo appuntamento

Crea un intent

Per creare un intent:

Console

  1. Apri la console Dialogflow CX.
  2. Scegli il tuo progetto Google Cloud.
  3. Seleziona il tuo agente.
  4. Seleziona la scheda Gestisci.
  5. Fai clic su Intenti.
  6. Fai clic su +Crea.
  7. Inserisci i dati sugli intent.
  8. Fai clic su Salva.

API

Consulta il metodo create per il tipo Intent.

Seleziona un protocollo e una versione per il riferimento all'intent:

Protocollo V3 V3beta1
REST Risorsa intent Risorsa intent
RPC Interfaccia intent Interfaccia intent
C++ IntentsClient Non disponibile
C# IntentsClient Non disponibile
Go IntentsClient Non disponibile
Java IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP Non disponibile Non disponibile
Python IntentsClient IntentsClient
Ruby Non disponibile Non disponibile

Eliminare un intent

Per eliminare un intent:

Console

  1. Apri la console Dialogflow CX.
  2. Scegli il tuo progetto Google Cloud.
  3. Seleziona il tuo agente.
  4. Seleziona la scheda Gestisci.
  5. Fai clic su Intenti.
  6. Passa il mouse sopra l'intent che vuoi eliminare.
  7. Fai clic sul pulsante Elimina .

API

Consulta il metodo delete per il tipo Intent.

Seleziona un protocollo e una versione per il riferimento all'intent:

Protocollo V3 V3beta1
REST Risorsa intent Risorsa intent
RPC Interfaccia intent Interfaccia intent
C++ IntentsClient Non disponibile
C# IntentsClient Non disponibile
Go IntentsClient Non disponibile
Java IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP Non disponibile Non disponibile
Python IntentsClient IntentsClient
Ruby Non disponibile Non disponibile

Accedere ai dati sull'intento

Per accedere ai dati sull'intent:

Console

  1. Apri la console Dialogflow CX.
  2. Scegli il tuo progetto Google Cloud.
  3. Seleziona il tuo agente.
  4. Seleziona la scheda Gestisci.
  5. Fai clic su Intenti.
  6. Fai clic sull'intent a cui vuoi accedere.
  7. Visualizza o aggiorna i dati sugli intent.
  8. Fai clic su Salva per salvare le modifiche.

API

Consulta i metodi get e patch/update per il tipo Intent.

Seleziona un protocollo e una versione per il riferimento all'intent:

Protocollo V3 V3beta1
REST Risorsa intent Risorsa intent
RPC Interfaccia intent Interfaccia intent
C++ IntentsClient Non disponibile
C# IntentsClient Non disponibile
Go IntentsClient Non disponibile
Java IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP Non disponibile Non disponibile
Python IntentsClient IntentsClient
Ruby Non disponibile Non disponibile

Suggerimenti per gli intent

Dialogflow analizza automaticamente le occorrenze di mancata corrispondenza durante le conversazioni e può suggerire nuovi intent o consigliare frasi di addestramento aggiuntive per gli intent esistenti. L'accettazione di questi suggerimenti può contribuire a evitare future mancate corrispondenze.

Quando utilizzi i suggerimenti, puoi regolare le dimensioni del cluster. Valori più piccoli delle dimensioni del cluster suggeriscono più intent con meno frasi di addestramento per intento. Valori più grandi delle dimensioni del cluster suggeriscono un numero inferiore di intent con più frasi di addestramento per intento.

Per accettare i suggerimenti di intenti:

Console

  1. Apri la console Dialogflow CX.
  2. Scegli il tuo progetto Google Cloud.
  3. Seleziona il tuo agente.
  4. Seleziona la scheda Gestisci.
  5. Fai clic su Intenti.
  6. Fai clic sulla scheda Suggerimenti.
  7. Regola la dimensione del cluster in base alle tue esigenze.
  8. Seleziona un suggerimento.
  9. Seleziona le frasi di addestramento che preferisci.
  10. Per l'intent di destinazione, aggiungi le frasi di addestramento a un intent esistente o a uno nuovo.
  11. Fai clic su Salva o Crea nuovo per salvare le modifiche. Quando accetti i suggerimenti per gli intent, l'intent rimane nell'elenco dei suggerimenti.

Intent suddivisi

Puoi dividere un intent in due intent utilizzando la console. L'interfaccia ti consente di selezionare le frasi di addestramento da un intent di origine e spostarle in un nuovo intent:

Console

  1. Apri la console Dialogflow CX.
  2. Scegli il tuo progetto.
  3. Seleziona il tuo agente.
  4. Seleziona la scheda Gestisci.
  5. Fai clic su Intenti.
  6. Seleziona l'intent che vuoi dividere.
  7. Fai clic su Dividi.
  8. Seleziona gli intent dall'intent di origine.
  9. Fai clic su Sposta a destra.
  10. Fornisci altri dettagli per l'intent di destinazione.
  11. Fai clic su Dividi.

Confrontare e unire gli intent

Puoi confrontare o unire due intent in un unico intent utilizzando la console:

Console

  1. Apri la console Dialogflow CX.
  2. Scegli il tuo progetto.
  3. Seleziona il tuo agente.
  4. Seleziona la scheda Gestisci.
  5. Fai clic su Intenti.
  6. Seleziona i due intent che vuoi confrontare o unire.
  7. Fai clic su Confronta.
  8. Le frasi di addestramento vengono mostrate una accanto all'altra per il confronto.
  9. Per unire le due intenzioni, fai clic su Unisci.

Esportare e importare intent

Puoi esportare e importare intent per la condivisione tra agenti.

Una delle opzioni di formato di esportazione è CSV, che ha le seguenti colonne:

  • Nome visualizzato dell'intent
  • Lingua
  • Frase

Ogni voce contiene il nome visualizzato, la lingua e la prima frase di addestramento oppure solo una frase di addestramento per l'intent dichiarato in precedenza. Dialogflow codifica le annotazioni nelle frasi di addestramento esportate, in modo che vengano ripristinate durante l'importazione. Il formato di questa codifica è:

(annotated part)[entity, parameter]

Ad esempio:

Intent Display Name,Language,Phrase
Shirt Selection,en,I want a (green)[@sys.color, color] shirt
,,I would like a (yellow)[@sys.color, color] shirt
Store Hours,en,When are you open?
,,What are your hours?

Quando importi intent, potrebbero verificarsi conflitti di unione se il nome visualizzato di un intent nell'agente esistente corrisponde a quello di un intent importato. Puoi controllare il comportamento di unione quando i nomi visualizzati degli intent corrispondono selezionando una delle seguenti opzioni:

  • Sostituisci intent esistenti: un intent importato sovrascrive qualsiasi intent con lo stesso nome nell'agente esistente.
  • Rinomina e importa come nuovi intent: L'intent importato viene rinominato aggiungendo "_1" al nome visualizzato.
  • Unisci alle finalità esistenti: Le frasi di addestramento di un intent importato vengono aggiunte all'intent esistente. Se esistono le stesse frasi di addestramento, non verranno duplicate.
  • Mantieni intent originali: L'intent esistente rimane invariato e l'intent in conflitto viene ignorato. Vengono importate le intenzioni non in conflitto.

Per esportare gli intent:

Console

  1. Apri la console Dialogflow CX.
  2. Scegli il tuo progetto Google Cloud.
  3. Seleziona il tuo agente.
  4. Seleziona la scheda Gestisci.
  5. Fai clic su Intenti.
  6. Seleziona ogni intent che vuoi esportare.
  7. Fai clic su Esporta intent selezionati.
  8. Seleziona il formato e la destinazione che preferisci.
  9. Fai clic su Invia.

Per importare gli intent:

Console

  1. Apri la console Dialogflow CX.
  2. Scegli il tuo progetto Google Cloud.
  3. Seleziona il tuo agente.
  4. Seleziona la scheda Gestisci.
  5. Fai clic su Intenti.
  6. Fai clic su Importa.
  7. Seleziona la fonte.
  8. In caso di conflitti, viene visualizzata una finestra di dialogo che consente di selezionare il comportamento di unione.
  9. Fai clic su Invia.

Esportare e importare frasi di addestramento

Puoi esportare e importare le frasi di addestramento per un intent esistente.

Il formato del file per l'importazione è CSV senza intestazione di colonna e con una sola colonna. Ad esempio:

"I want a pony"
"I need a pony"
"I must have a pony"

Quando importi le frasi di addestramento, puoi scegliere una delle seguenti modalità di importazione:

  • Importa come nuove frasi di addestramento: le frasi nei file vengono aggiunte all'elenco delle frasi esistenti.
  • Sostituisci le frasi di addestramento esistenti: le frasi di addestramento esistenti vengono eliminate e vengono aggiunte le frasi di addestramento dei file.

Per impostazione predefinita, le frasi di addestramento importate vengono annotate automaticamente. Puoi disattivare questo comportamento selezionando Salta l'annotazione automatica.

Per esportare le frasi di addestramento per un intento:

Console

  1. Apri la console Dialogflow CX.
  2. Scegli il tuo progetto Google Cloud.
  3. Seleziona il tuo agente.
  4. Seleziona la scheda Gestisci.
  5. Fai clic su Intenti.
  6. Seleziona un intento.
  7. Scorri verso il basso fino alla sezione Frasi di addestramento.
  8. Seleziona le frasi di addestramento che vuoi esportare.
  9. Fai clic su Esporta.

Per importare frasi di addestramento per un intento:

Console

  1. Apri la console Dialogflow CX.
  2. Scegli il tuo progetto Google Cloud.
  3. Seleziona il tuo agente.
  4. Seleziona la scheda Gestisci.
  5. Fai clic su Intenti.
  6. Seleziona un intento.
  7. Scorri verso il basso fino alla sezione Frasi di addestramento.
  8. Se vuoi, seleziona Salta annotazione automatica.
  9. Fai clic sul pulsante di importazione appena sopra l'elenco delle frasi di addestramento.
  10. Seleziona un file e una modalità di importazione.
  11. Fai clic su Invia.

Quando progetti agenti, a volte è utile pensare agli intent come intent principali o intent supplementari.

Un intent principale identifica lo scopo principale dell'utente finale per interagire con un agente. Un intent supplementare identifica le domande successive di un utente finale correlate all'intent principale. Queste domande successive possono fornire un contesto aggiuntivo per le esigenze dell'utente finale o possono essere domande di follow-up che aiutano l'utente finale a chiarire o comprendere meglio qualcosa.

Un intent principale è in genere uno dei primi intent abbinati in una conversazione, mentre le ulteriori domande dell'utente finale corrispondono a intent supplementari. Ad esempio:

Dialogo Spiegazione
Utente finale: attiva il nuovo smartphone
Agente: certo, posso aiutarti. Quali sono le ultime 4 cifre del numero di telefono che vuoi attivare?
L'intenzione principale corrisponde
Utente finale: 1234
Agente: Vuoi attivare lo smartphone ora?
È impostato un parametro
Utente finale: tutti i miei messaggi verranno trasferiti sul nuovo smartphone?
Agente: ...
L'intento supplementare corrisponde