Opzioni relative alle entità

Esistono diverse opzioni di entità che modificano il comportamento della corrispondenza delle entità e dell'estrazione dei dati. Queste opzioni sono preconfigurate per le entità di sistema, pertanto non puoi modificarle per le entità di sistema. Tuttavia, puoi modificarli in base alle tue entità personalizzate. Puoi creare diversi tipi di entità, a seconda delle opzioni selezionate:

Esistono altre opzioni che non determinano il tipo di entità, ma influiscono sul comportamento della corrispondenza delle entità:

Questo documento descrive ciascuna di queste opzioni.

Dove trovare questi dati

Quando crei un agente, è più comune utilizzare la console Dialogflow CX (visita la documentazione, apri la console). Le istruzioni riportate di seguito riguardano l'utilizzo della console. Per accedere ai dati delle opzioni delle entità:

  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 Tipi di entità.
  6. Consulta le seguenti opzioni per le entità esistenti (alcune potrebbero essere visibili solo dopo aver espanso Opzioni avanzate):
    • Solo entità (senza sinonimi)
    • Entità Regexp
    • Aggiungere automaticamente entità
    • Corrispondenza parziale
    • Oscurare nel log
    • Esclusioni di entità

Se stai creando un agente utilizzando l'API anziché la console, consulta il tipo EntityType. I nomi dei campi dell'API sono simili a quelli della console. Le istruzioni riportate di seguito evidenziano eventuali differenze importanti tra la console e l'API.

Seleziona un protocollo e una versione per il riferimento EntityType:

Protocollo V3 V3beta1
REST Risorsa EntityType Risorsa EntityType
RPC Interfaccia EntityType Interfaccia EntityType
C++ EntityTypesClient Non disponibile
C# EntityTypesClient Non disponibile
Vai EntityTypesClient Non disponibile
Java EntityTypesClient EntityTypesClient
Node.js EntityTypesClient EntityTypesClient
PHP Non disponibile Non disponibile
Python EntityTypesClient EntityTypesClient
Ruby Non disponibile Non disponibile

Entità mappa

Le entità mappa forniscono una mappa dai valori di riferimento ai sinonimi per ciascun valore di riferimento. Ogni voce dell'entità mappa contiene un singolo valore di riferimento e un elenco di sinonimi. Se vuoi, puoi anche impostare un pattern DTMF per ogni entità.

Ad esempio, ciascuna delle seguenti righe è una voce dell'entità per un tipo di entità size:

Entità Sinonimi Pattern DTMF
S S, piccolo, minuscolo, poco
M M, medio, nella media
L L, grande, enorme, grande

Tieni presente che il valore di riferimento è incluso nell'elenco di sinonimi per ogni voce dell'entità sopra. Affinché un valore di riferimento venga associato, deve essere incluso come sinonimo. Quando inserisci inizialmente un valore di riferimento con la console, viene aggiunto automaticamente come sinonimo.

Se uno dei sinonimi corrisponde a una parte di input utente finale, il valore di riferimento associato viene estratto per la corrispondenza e utilizzato per risolvere il valore del parametro associato.

È consentito omettere il valore di riferimento dall'elenco dei sinonimi. Ciò significa semplicemente che non corrisponde a una parte di input utente finale, ma viene utilizzato come valore estratto quando viene trovato un match con uno dei suoi sinonimi. Questo è auspicabile quando utilizzi stringhe speciali per i valori di riferimento che non vengono digitati o pronunciati dagli utenti finali.

Molte entità di sistema sono entità mappa. Ad esempio, l'entità di sistema @sys.date corrisponde a input di date comuni come "1° gennaio 2015" o "1° gennaio 2015". Entrambi gli input sono mappati a un valore di riferimento in formato ISO-8601: "2015-01-01T12:00:00-03:00".

Per creare un'entità mappa:

  • Nella console, deseleziona l'opzione Entità regexp e l'opzione Solo entità.
  • Utilizzando l'API, imposta il campo EntityType.kind su KIND_MAP.

(Anteprima) Utilizza la generazione di IA per generare automaticamente i sinonimi

Anziché inserire i sinonimi manualmente, puoi utilizzare un generatore di AI per generare automaticamente i sinonimi per il valore di riferimento. A tale scopo, seleziona la casella di controllo Genera automaticamente X sinonimi per entità quando crei un nuovo valore di riferimento. Il valore predefinito è 3 sinonimi. La generazione di più di 15 sinonimi alla volta può comportare errori. Come best practice, assicurati di compilare il campo Descrizione del tipo di entità per generare sinonimi più accurati per il valore di riferimento.

Per informazioni sull'utilizzo di questa funzionalità per generare e tradurre automaticamente i dati per le lingue diverse da quella predefinita, consulta la documentazione relativa agli agenti multilingue.

Entità elenco

Le entità elenco forniscono un elenco di voci di entità con un solo valore. Non hanno valori di riferimento e sinonimi. Ad esempio, ciascuna delle seguenti righe è una voce dell'entità per un tipo di entità material:

Valore
tessuto
legno
metallo

Se un valore corrisponde a una parte di input utente finale, il valore viene estratto per la corrispondenza e utilizzato per risolvere il valore del parametro associato.

Molte entità di sistema sono entità di elenco. Ad esempio, l'entità di sistema @sys.color corrisponde agli input di colore comuni come "rosso" o "blu". Quando viene trovata una corrispondenza per un colore, il valore estratto non viene mappato a nessun valore di riferimento. Ad esempio, le sfumature di rosso, come "scarlatto" o "cremisi", non vengono mappate a "rosso" e vengono estratte come i valori originali "scarlatto" e "cremisi".

Per creare un'entità elenco:

  • Nella console, deseleziona l'opzione Entità regexp e seleziona l'opzione Solo entità.
  • Utilizzando l'API, imposta il campo EntityType.kind su KIND_LIST.

Entità composita

Un'entità composita è un tipo speciale di entità elenco. Le voci delle entità per le entità di elenco in genere contengono parole o frasi semplici, ma possono contenere anche altri tipi di entità. Quando un tipo di entità viene fatto riferimento in un altro tipo di entità, il riferimento viene chiamato alias. Quando un'entità elenco contiene alias di altri tipi di entità, viene chiamata entità composta.

Quando crei un alias, fornisci il nome del tipo di entità a cui fai riferimento e un nome della proprietà a tua scelta. Quando un'entità composita viene associata in fase di esecuzione, il valore estratto viene restituito come oggetto JSON, con i nomi delle proprietà dell'alias utilizzati come nomi delle proprietà JSON. Il formato per inserire un alias è:

@entity-name:property-name

Ad esempio, puoi creare un tipo di entità place corrispondente a una città o a uno stato con le seguenti voci di entità:

Valore
@sys.geo-city:city
@sys.geo-state:state

Se l'input di un utente finale contiene la parte "Nashville", viene eseguito il matching del tipo di entità place. Il valore estratto viene restituito come: {"city": "Nashville"}.

Puoi anche utilizzare più alias di entità in una voce dell'entità. Prendi in considerazione il seguente tipo di entità personalizzata move che contiene alias per un tipo di entità direction e per il tipo di entità di sistema @sys.number:

Tipo di entità della mappa personalizzata per le indicazioni stradali:

Valore di riferimento Sinonimi
avanti avanti
indietro indietro

Sposta il tipo di entità dell'elenco personalizzato:

Valore
@sys.number:steps passi @direction:direction

Se l'entità move viene associata a un input utente finale che contiene "cinque passi indietro", l'entità move verrà associata. Il valore estratto viene restituito come: {"steps": 5, "direction": "back"}.

Molte entità di sistema sono entità composite. Ad esempio, l'entità di sistema @sys.unit-currency viene utilizzata per abbinare gli importi in denaro a un nome di valuta. Corrisponde a input degli utenti finali come "50 euro" o "venti dollari e cinque centesimi". Il valore estratto viene restituito come oggetto JSON come segue: {"amount": 50, "currency": "EUR"}

Entità Regexp

Con le entità regexp, puoi fornire espressioni regolari per la corrispondenza. Per ulteriori informazioni, consulta Entità Regexp.

Per creare un'entità regexp:

  • Nella console, seleziona l'opzione Entità Regexp.
  • Utilizzando l'API, imposta il campo EntityType.kind su KIND_REGEXP.

Espansione automatica (aggiunta automatica di entità)

Puoi attivare l'espansione automatica per un tipo di entità personalizzata. Se questa opzione è attivata, l'agente può riconoscere i valori che non sono stati forniti esplicitamente. Ad esempio, prendiamo in considerazione un tipo di entità elenco della spesa:

Valore
pane
burro
latte
apple
gelato

Se un input utente finale inserisce "Devo comprare delle carote", "carote" verrà associato a questo tipo di entità, anche se non è fornito. L'agente riconosce che "carote" è contestualmente simile ad altri valori.

Quando valuti l'espansione automatica, devi seguire le best practice:

  • L'attivazione dell'espansione automatica non garantisce l'estrazione delle entità. Per un elenco finito, devi fornire l'elenco completo instead of providing a partial list and enabling automated expansion.
  • Se attivi l'espansione automatica in più di un'entità, potrebbero verificarsi conflitti e risultati di classificazione imprevisti.
  • Per garantire una migliore qualità dell'estrazione dei parametri, è fondamentale fornire dati di addestramento diversi che coprono tutti i casi d'uso in cui è possibile trovare una determinata entità nel traffico dell'agente previsto. Se gli esempi non sono sufficienti, l'espansione automatica delle entità potrebbe non funzionare come previsto.

Per attivare l'espansione automatica:

  • Nella console, seleziona l'opzione Aggiungi automaticamente entità.
  • Utilizzando l'API, imposta il campo EntityType.autoExpansionMode su AUTO_EXPANSION_MODE_DEFAULT.

Corrispondenza parziale

Puoi attivare la corrispondenza approssimativa per un'entità personalizzata. Con la corrispondenza approssimativa attivata, l'ordine delle parole in un valore o in un sinonimo non è importante. Per ulteriori informazioni, consulta la sezione Corrispondenza approssimativa.

Per attivare la corrispondenza approssimativa:

  • Nella console, seleziona l'opzione Corrispondenza approssimativa.
  • Utilizzando l'API, imposta il campo EntityType.enableFuzzyExtraction su true.

Oscurare nel log

Se attivi l'oscuramento delle entità, tutti i valori dei parametri estratti in fase di runtime per il tipo di entità verranno oscurati durante la registrazione.

In alternativa, puoi oscurare i singoli parametri.

Esclusioni di entità

Puoi aggiungere esclusioni di entità, ovvero frasi che non devono essere associate. Ad esempio, se hai un tipo di entità di taglia con l'entità gigante (un aggettivo), potresti considerare di aggiungere giganti (un sostantivo) come eccezione.