Un intent classifica le intenzioni 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 le intenzioni. Ad esempio: head intent. |
Frasi di addestramento | Frasi di addestramento sono frasi di esempio che descrivono gli utenti finali che potrebbero digitare o dire noto come input dell'utente finale. Quando l'input dell'utente finale assomiglia a una di queste frasi, agenti di conversazione (Dialogflow CX) trova una corrispondenza con l'intent. Non devi definire ogni possibile esempio, perché il machine learning integrato degli agenti conversazionali (Dialogflow CX) amplia il tuo elenco con altre frasi simili. |
Parametri | Sei tu a definire le frasi di addestramento da usare parametri per estrarre valori da parti specifiche dell'input dell'utente finale. |
Pattern DTMF | Consulta DTMF per le integrazioni della telefonia. |
Corrispondenza di intent
Quando un utente finale inserisce un input (testo, voce o pressione di un tasto del telefono), Gli agenti conversazionali (Dialogflow CX) confrontano l'input con le frasi di addestramento per intent per trovare la corrispondenza migliore. Questo processo è chiamato corrispondenza dell'intenzione. La corrispondenza dell'intenzione può avvenire solo per le intenzioni associate a un percorso dell'intenzione (un gestore dello stato con un requisito di intenzione) in ambito.
L'immissione della pressione dei tasti corrisponde a Pattern DTMF. Durante la ricerca di una corrispondenza intent to text, tuttavia, gli agenti conversazionali (Dialogflow CX) assegnano un punteggio alle potenziali corrispondenze con un intent il grado di affidabilità del rilevamento, noto anche come punteggio di affidabilità. Questi valori vanno da 0,0 (completamente incerto) a 1,0 (completamente certo). Una volta assegnati i punteggi agli intent, sono possibili due risultati:
- Se l'intenzione di ottenere il punteggio più alto ha un punteggio di confidenza maggiore o uguale al soglia di classificazione viene restituita come corrispondenza.
- Se nessun'intenzione soddisfa la soglia, verrà invocato un evento di mancata corrispondenza.
Frasi di addestramento
Le frasi di addestramento sono frasi di esempio di ciò che gli utenti finali potrebbero digitare o dire, chiamate input degli utenti finali. Per ogni intento, crei molte frasi di addestramento. Quando un input utente finale assomiglia a una di queste frasi, Gli agenti conversazionali (Dialogflow CX) corrispondono all'intent.
Ad esempio, la frase di addestramento "Voglio una pizza" insegna all'agente a riconoscere l'input dell'utente finale simile a quella frase, ad esempio "Fammi una pizza" o "Ordina una pizza".
Non è necessario definire ogni possibile esempio, poiché il machine learning integrato degli agenti conversazionali (Dialogflow CX) espande l'elenco con altri, frasi simili. Devi creare almeno 10-20 frasi di addestramento (a seconda della complessità dell'intenzione), in modo che l'agente possa riconoscere una serie di input degli utenti finali. Ad esempio, se vuoi che il tuo intent riconosca l'input di un utente finale. sul loro colore preferito, puoi definire le seguenti frasi di addestramento:
- "Mi piace il rosso"
- "Il mio colore preferito è il giallo"
- "black"
- "Il blu è il mio preferito"
- …
Annotare le frasi di addestramento
Puoi controllare il modo in cui i dati degli utenti finali vengono estratti tramite annotazioni delle tue frasi di addestramento e configurare le parti associate parametri.
Ad esempio, considera una frase di addestramento come
"Quali sono le previsioni per domani per Tokyo?"
Devi annotare "domani" con un parametro date
e "Tokyo" con un parametro location
.
Quando annota parti di una frase di addestramento,
Gli agenti conversazionali (Dialogflow CX) riconosce che queste parti sono solo esempi
dei valori effettivi che verranno forniti
dagli utenti finali in fase di runtime.
Per un input utente finale come
"Quali sono le previsioni per venerdì a Sydney?",
Gli agenti conversazionali (Dialogflow CX) estraerebbero il parametro date
da "Friday"
e il parametro location
di "Sydney".
Devi annotare tutte le parti della frase di addestramento che devono essere estratti 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 contenenti parti che possono essere abbinate a un tipo di entità. Queste parti sono evidenziate nella console. Se necessario, puoi modificare queste annotazioni e questi parametri.
Per annotare manualmente 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 ti interessa.
- Viene creato un parametro nella tabella dei parametri di seguito.
Quando crei un agente con l'API, devi annotare manualmente le parti della frase di addestramento.
Visualizza il tipo TrainingPhrase
utilizzato dal tipo Intent
.
Seleziona un protocollo e una versione per il riferimento per intent:
Protocollo | V3 | V3beta1 |
---|---|---|
REST | Risorsa intent | Risorsa per intent |
RPC | Interfaccia per intent | Interfaccia per intent |
C++ | IntentsClient | Non disponibile |
C# | IntentsClient | Non disponibile |
Vai | 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 esplicitamente tramite la creazione di tipi di entità e l'aggiunta di voci di entità. Tuttavia, le entità personalizzate possono contenere anche valori impliciti. Questo accade quando annota il testo di una frase di addestramento, In cui 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 di entità aggiunta implicitamente. Se il tipo di entità è un'entità mappa, il testo diventa anche un sinonimo per la voce dell'entità.
Intento di benvenuto predefinito
Quando crei un agente, viene creato un intent di benvenuto predefinito. Per alcune lingue, l'intent contiene semplici frasi di addestramento come "Hi" o "Ciao" che corrispondano all'input iniziale dell'utente finale. Puoi modificare questa intenzione 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 questa intenzione 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
.
Intento negativo predefinito
Quando crei un agente, viene creato per te un intent negativo predefinito. A questo intent puoi aggiungere frasi di addestramento che fungono da esempi negativi. Potrebbero verificarsi casi in cui input utente finale ha una leggera somiglianza con le frasi di addestramento con intenti normali, ma non vuoi che questi input corrispondano a nessun intent normale.
Ad esempio, un agente di prenotazione di una sala potrebbe usare una frase di addestramento come "Vorrei prenotare una stanza". Se l'utente finale vuole acquistare un libro sulle stanze, potrebbero dire "Vorrei comprare un libro sulle camere". Per assicurarti che l'input utente finale non corrisponda alle tue intenzioni, puoi aggiungere questa frase come parola chiave a corrispondenza inversa.
Inoltre, devi aggiungere possibili frasi che non rientrano nell'ambito dell'agente, in modo che non corrispondano a nessun intent. Tuttavia, evita di aggiungerne una quantità molto elevata. Ad esempio, se definisci 10.000 frasi di intenti negativi predefiniti, questo influisce negativamente sulla normale corrispondenza dell'intent.
Ti consigliamo di esaminare regolarmente queste frasi, poiché alcune potrebbero non essere state inizialmente coperte dall'agente, ma sono state successivamente aggiunte agli intent.
L'intenzione negativa predefinita influisce su tutte le corrispondenze per intent. Le frasi che aggiungi potrebbero rappresentare un vantaggio per la corrispondenza per un singolo intento ma la combinazione di danni su un altro. Ad esempio: potresti aggiungere "chiamate internazionali" all'intento negativo predefinito per evitare di far corrispondere un'intenzione di viaggio internazionale. Tuttavia, in questo modo impedirai anche alla frase di corrispondere a un intento di chiamata internazionale.
Quando utilizzi l'API, puoi fare riferimento a questo intento con il seguente ID:
00000000-0000-0000-0000-000000000001
Annulla intent
Durante una conversazione, l'utente finale potrebbe voler annullare l'argomento della 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 potrebbe dire, ad esempio, "annulla" o "Non voglio un nuovo appuntamento". Per gestire questa situazione, puoi creare uno o più intent di annullamento per l'agente. Puoi assegnare a questi intent di annullamento il nome che preferisci, ma è consuetudine includere "annulla" nel nome. Devi associare questi intent di annullamento alle route degli intent che rientrano nell'ambito dei punti pertinenti della conversazione. Questi percorsi di intent devono passare a una pagina appropriata per gestire l'annullamento.
Le frasi di addestramento per le intenzioni di annullamento devono gestire sia i tentativi di annullamento generici sia quelli specifici per argomento. Ad esempio:
- Annulla
- Interrompi
- ho cambiato idea
- Ignora
- Torna indietro
- Indietro
- Non voglio un nuovo appuntamento
- Annulla nuovo appuntamento
- Eliminare il nuovo appuntamento
Crea un intent
Per creare un intent:
Console
- Apri la console di Dialogflow CX.
- Scegli il tuo progetto Google Cloud.
- Seleziona l'agente.
- Seleziona la scheda Gestisci.
- Fai clic su Intent.
- Fai clic su +Crea.
- Inserisci i dati sull'intenzione.
- Fai clic su Salva.
API
Consulta il metodo create
per il tipo Intent
.
Seleziona un protocollo e una versione per il riferimento per intent:
Protocollo | V3 | V3beta1 |
---|---|---|
REST | Risorsa intent | Risorsa intent |
RPC | Interfaccia Intent | Interfaccia per intent |
C++ | IntentsClient | Non disponibile |
C# | IntentsClient | Non disponibile |
Vai | 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'intenzione
Per eliminare un'intenzione:
Console
- Apri la console di Dialogflow CX.
- Scegli il tuo progetto Google Cloud.
- Seleziona l'agente.
- Seleziona la scheda Gestisci.
- Fai clic su Intent.
- Passa il mouse sopra l'intent da eliminare.
- Fai clic sul pulsante Elimina delete.
API
Consulta il metodo delete
per il tipo Intent
.
Seleziona un protocollo e una versione per il riferimento per intent:
Protocollo | V3 | V3beta1 |
---|---|---|
REST | Risorsa intent | Risorsa per intent |
RPC | Interfaccia per intent | Interfaccia Intent |
C++ | IntentsClient | Non disponibile |
C# | IntentsClient | Non disponibile |
Vai | 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 sulle intenzioni
Per accedere ai dati sull'intent:
Console
- Apri la console Dialogflow CX.
- Scegli il tuo progetto Google Cloud.
- Seleziona l'agente.
- Seleziona la scheda Gestisci.
- Fai clic su Intent.
- Fai clic sull'intent a cui vuoi accedere.
- Visualizza o aggiorna i dati sull'intent.
- Fai clic su Salva per salvare le modifiche.
API
Visualizza 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 per intent | Risorsa intent |
RPC | Interfaccia per intent | Interfaccia Intent |
C++ | IntentsClient | Non disponibile |
C# | IntentsClient | Non disponibile |
Vai | IntentsClient | Non disponibile |
Java | IntentsClient | IntentsClient |
Node.js | IntentsClient | IntentsClient |
PHP | Non disponibile | Non disponibile |
Python | IntentsClient | IntentsClient |
Ruby | Non disponibile | Non disponibile |
Suggerimenti di intent
Dialogflow analizza automaticamente le occorrenze senza corrispondenza durante le conversazioni e può suggerire nuovi intent o suggerire frasi di addestramento aggiuntive intent esistenti. Accettare questi suggerimenti può aiutare a evitare future occorrenze senza corrispondenze.
Quando usi i suggerimenti, puoi modificare la dimensione del cluster. Valori più piccoli delle dimensioni del cluster suggeriscono più intent con meno frasi di addestramento per intent. Valori più elevati della dimensione del cluster suggeriscono meno intenti con più frasi di addestramento per intento.
Per accettare suggerimenti di intent:
Console
- Apri la console di Dialogflow CX.
- Scegli il tuo progetto Google Cloud.
- Seleziona l'agente.
- Seleziona la scheda Gestisci.
- Fai clic su Intent.
- Fai clic sulla scheda Suggerimenti.
- Modifica la Dimensione cluster in base alle tue esigenze.
- Seleziona un suggerimento.
- Seleziona le frasi di addestramento che preferisci.
- Per l'intenzione target, aggiungi le frasi di addestramento a un'intenzione esistente o a una nuova.
- Fai clic su Salva o Crea nuovo per salvare le modifiche. Quando accetti suggerimenti di intent, l'intent rimane nell'elenco dei suggerimenti.
Suddividi intent
Puoi suddividere un'intenzione in due utilizzando la console. L'interfaccia ti consente di selezionare frasi di addestramento da un'intenzione di origine e spostarle in una nuova intenzione:
Console
- Apri la console Dialogflow CX.
- Scegli il progetto.
- Seleziona il tuo agente.
- Seleziona la scheda Gestisci.
- Fai clic su Intent.
- Seleziona l'intenzione che vuoi suddividere.
- Fai clic su Dividi.
- Seleziona gli intent dall'intent di origine.
- Fai clic su Sposta a destra.
- Fornisci altri dettagli per l'intent target.
- Fai clic su Dividi.
Confrontare e unire intent
Puoi confrontare o unire due intent con un singolo intent utilizzando la console:
Console
- Apri la console Dialogflow CX.
- Scegli il progetto.
- Seleziona il tuo agente.
- Seleziona la scheda Gestisci.
- Fai clic su Intent.
- Seleziona i due intent che vuoi confrontare o unire.
- Fai clic su Confronta.
- Le frasi di addestramento vengono mostrate una accanto all'altra per il confronto.
- Per unire i due intent, fai clic su Unisci.
Esporta e importa intent
Puoi esportare e importare le intenzioni per la condivisione tra gli agenti.
Una delle opzioni di formato di esportazione è CSV, che ha le seguenti colonne:
- Nome visualizzato dell'intento
- Lingua
- Frase
Ogni voce contiene il nome visualizzato, la lingua e la prima frase di addestramento; o semplicemente una frase di addestramento per l'intent dichiarato in precedenza. Dialogflow codifica le annotazioni nelle frasi di addestramento esportate, in modo che le annotazioni 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 gli intent, potrebbero verificarsi conflitti di unione quando il nome visualizzato di un intent nell'agente esistente corrisponde a quello di un intent importato. Puoi controllare il comportamento dell'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.
- Rinominare e importare come nuovi intent: L'intent importato viene rinominato aggiungendo "_1" al nome visualizzato.
- Unisci con le intenzioni esistenti: le frasi di addestramento di un'intenzione importata vengono aggiunte all'intenzione esistente. Se esistono le stesse frasi di addestramento, non verranno duplicate.
- Mantieni le intenzioni originali: l'intenzione esistente rimane invariata e quella in conflitto viene ignorata. Vengono importati gli intent non in conflitto.
Per esportare gli intent:
Console
- Apri la console di Dialogflow CX.
- Scegli il tuo progetto Google Cloud.
- Seleziona l'agente.
- Seleziona la scheda Gestisci.
- Fai clic su Intent.
- Seleziona ogni intent che vuoi esportare.
- Fai clic su Esporta intent selezionati.
- Seleziona il formato e la destinazione che preferisci.
- Fai clic su Invia.
Per importare intent:
Console
- Apri la console Dialogflow CX.
- Scegli il tuo progetto Google Cloud.
- Seleziona l'agente.
- Seleziona la scheda Gestisci.
- Fai clic su Intent.
- Fai clic su Importa.
- Seleziona l'origine.
- In caso di conflitti, viene mostrata una finestra di dialogo che consente di selezionare il comportamento di unione.
- Fai clic su Invia.
Esporta e importa frasi di addestramento
Puoi esportare e importare frasi di addestramento per un intent esistente.
Il formato file per l'importazione è CSV senza intestazione di colonna e con una singola 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 di frasi esistenti.
- Sostituisci le frasi di addestramento esistenti: le frasi di addestramento esistenti vengono eliminate e vengono aggiunte quelle dei file.
Per impostazione predefinita, le frasi di addestramento importate vengono annotate automaticamente. Puoi disattivare questo comportamento selezionando Ignora annotazione automatica.
Per esportare le frasi di addestramento per un intento:
Console
- Apri la console di Dialogflow CX.
- Scegli il tuo progetto Google Cloud.
- Seleziona l'agente.
- Seleziona la scheda Gestisci.
- Fai clic su Intent.
- Seleziona un intent.
- Scorri verso il basso fino alla sezione Frasi di addestramento.
- Seleziona le frasi di allenamento che vuoi esportare.
- Fai clic su Esporta.
Per importare le frasi di addestramento per un intento:
Console
- Apri la console di Dialogflow CX.
- Scegli il tuo progetto Google Cloud.
- Seleziona l'agente.
- Seleziona la scheda Gestisci.
- Fai clic su Intent.
- Seleziona un intent.
- Scorri verso il basso fino alla sezione Frasi di addestramento.
- Se vuoi, seleziona Salta l'annotazione automatica.
- Fai clic sul pulsante di importazione appena sopra l'elenco delle frasi di addestramento.
- Seleziona un file e la modalità di importazione.
- Fai clic su Invia.
Intent principali e supplementari
Quando progetti gli agenti, talvolta è utile considerare gli intenti come intenti principali o intenti supplementari.
Un intent principale identifica lo scopo principale dell'utente finale per interagire con un agente. Un'intenzione supplementare identifica le domande successive di un utente finale correlate all'intenzione principale. Queste domande successive possono fornire ulteriore contesto per le esigenze dell'utente finale, o domande di follow-up che aiutano l'utente finale a chiarire o comprendere meglio qualcosa.
Un'intenzione principale è in genere una delle prime intenzioni associate in una conversazione e le altre domande dell'utente finale corrispondono alle intenzioni supplementari. Ad esempio:
Dialogo | Spiegazione |
---|---|
Utente finale: attivare il nuovo telefono 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 telefono? Agente: ... |
Viene abbinata l'intenzione supplementare |