Tipi di entità

Importante

LUIS verrà ritirato il 1° ottobre 2025 e a partire dal 1° aprile 2023 non sarà possibile creare nuove risorse LUIS. È consigliabile eseguire la migrazione delle applicazioni LUIS alla comprensione del linguaggio conversazionale per trarre vantaggio dal supporto continuo del prodotto e dalle funzionalità multilingue.

Un'entità è un elemento rilevante per la finalità dell'utente. Le entità definiscono i dati che possono essere estratti dall'espressione e sono essenziali per completare l'azione richiesta da un utente. Ad esempio:

Espressione Finalità stimata Entità estratte Spiegazione
Ciao come stai? Greeting (Messaggio introduttivo) - Niente da estrarre.
Voglio ordinare una piccola pizza orderPizza 'small' L'entità 'Size' viene estratta come "small".
Spegnere la luce della camera da letto Bivio 'camera da letto' L'entità 'Room' viene estratta come 'camera da letto'.
Controllare il saldo nel conto di risparmio che termina nel 4406 checkBalance 'risparmio', '4406' L'entità 'accountType' viene estratta come 'risparmio' e l'entità 'accountNumber' viene estratta come '4406'.
Buy 3 tickets to New York buyTickets '3', 'New York' L'entità 'ticketsCount' viene estratta come '3' e l'entità 'Destination' viene estratta come 'New York'.

Le entità sono facoltative, ma consigliate. Non è necessario creare entità per ogni concetto nell'app, solo quando:

  • L'applicazione client richiede i dati o
  • L'entità funge da hint o segnale a un'altra entità o finalità. Per altre informazioni sulle entità come funzionalità, passare a Entità come funzionalità.

Tipi di entità

Per creare un'entità, è necessario assegnargli un nome e un tipo. Esistono diversi tipi di entità in LUIS.

Entità elenco

Un'entità elenco rappresenta un set fisso e chiuso di parole correlate insieme ai relativi sinonimi. È possibile usare le entità elenco per riconoscere più sinonimi o varianti ed estrarre un output normalizzato. Usare l'opzione consigliata per visualizzare i suggerimenti per le nuove parole in base all'elenco corrente.

Un'entità elenco non è basata su machine learning, ovvero LUIS non individua altri valori per le entità dell'elenco. LUIS contrassegna eventuali corrispondenze a un elemento in qualsiasi elenco come un'entità nella risposta.

Le entità elenco corrispondenti fa distinzione tra maiuscole e minuscole e deve essere una corrispondenza esatta. I valori normalizzati vengono usati anche per la corrispondenza dell'entità elenco. Ad esempio:

Valore normalizzato Sinonimi
Small sm, sml, tiny, smallest
Medio md, mdm, regular, average, middle
Grande lg, lrg, big

Per altre informazioni, vedere l'articolo di riferimento sulle entità elenco .

Entità Regex

Un entità di espressione regolare estrae un'entità in base a un criterio di espressione regolare fornito dall'utente. Maiuscole e minuscole vengono ignorate così come la variante relativa alla lingua. Le entità di espressione regolare sono ideali per il testo strutturato o una sequenza predefinita di valori alfanumerici previsti in un determinato formato. Ad esempio:

Entità Espressione regolare‏ Esempio
Numero volo flight [A-Z]{2} [0-9]{4} flight AS 1234
Numero di carta di credito [0-9]{16} 5478789865437632

Per altre informazioni, vedere l'articolo di riferimento sulle entità regex .

Entità predefinite

LUIS include un insieme di entità predefinite per il riconoscimento di tipi comuni di informazioni, ad esempio date, ore, numeri, misurazioni e valuta. Il supporto dell'entità predefinita varia a seconda delle impostazioni cultura dell'app LUIS. Per un elenco completo delle entità predefinite supportate da LUIS, incluso il supporto per le impostazioni cultura, consultare il riferimento all'entità predefinita.

Quando si include un'entità predefinita nell'applicazione, le relative stime vengono incluse nell'applicazione pubblicata. Il comportamento delle entità predefinite è sottoposto a training preliminare e non può essere modificato.

Entità predefinita Valore di esempio
PersonName James, Bill, Tom
DatetimeV2 2019-05-02, May 2nd, 8am on May 2nd 2019

Per altre informazioni, vedere l'articolo di riferimento sulle entità predefinite .

Entità Pattern.Any

Un modello. Qualsiasi entità è un segnaposto a lunghezza variabile usato solo nell'espressione modello di un modello per contrassegnare dove inizia e termina l'entità. Segue una regola o un modello specifico e viene usato meglio per le frasi con struttura lessicale fissa. Ad esempio:

Espressione di esempio Modello Entità
Posso avere un hamburger per favore? Can I have a {meal} [please][?] Hamburger
Posso avere una pizza? Can I have a {meal} [please][?] pizza
Dove posso trovare Il Grande Gatsby? Where can I find {bookName}? Il Grande Gatsby

Per altre informazioni, vedere l'articolo di riferimento sulle entità Pattern.Any .

Entità machine learning (ML)

L'entità basata su Machine Learning usa il contesto per estrarre le entità in base agli esempi etichettati. È l'entità preferita per la compilazione di applicazioni LUIS. Si basa su algoritmi di Machine Learning e richiede che l'etichettatura sia adattata correttamente all'applicazione. Usare un'entità ml per identificare i dati che non sono sempre formattati correttamente, ma hanno lo stesso significato.

Espressione di esempio Entità prodotto estratta
Voglio comprare un libro. 'book'
Posso ottenere queste scarpe per favore? 'scarpe'
Aggiungere quei pantaloncini al mio carrello. 'shorts'

Per altre informazioni, vedere Entità apprese dal computer .

Entità ml con struttura

Un'entità ml può essere composta da sottoentità più piccole, ognuna delle quali può avere le proprie proprietà. Ad esempio, un'entità Address potrebbe avere la struttura seguente:

  • Indirizzo: 4567 Main Street, NY, 98052, USA
    • Numero di compilazione: 4567
    • Nome strada: strada principale
    • Stato: NY
    • Codice postale: 98052
    • Paese: USA

Creazione di entità ml efficaci

Per compilare entità apprese in modo efficace, seguire queste procedure consigliate:

  • Se si dispone di un'entità appresa da computer con entità secondarie, assicurarsi che gli ordini e le varianti diverse dell'entità e delle sottoentità vengano presentati nelle espressioni etichettate. Le espressioni di esempio etichettate devono includere tutti i moduli validi e includere entità visualizzate e assenti e riordinate all'interno dell'espressione.
  • Evitare di sovrafittingre le entità a un set fisso. L'overfitting si verifica quando il modello non generalizza bene ed è un problema comune nei modelli di Machine Learning. Ciò implica che l'app non funziona su nuovi tipi di esempi in modo adeguato. A sua volta, è consigliabile variare le espressioni di esempio etichettate in modo che l'app possa generalizzare oltre gli esempi limitati forniti.
  • L'etichettatura deve essere coerente tra le finalità. Ciò include anche espressioni fornite nella finalità None che include questa entità. In caso contrario, il modello non sarà in grado di determinare in modo efficace le sequenze.

Entità come funzionalità

Un'altra funzione importante delle entità consiste nell'usarle come caratteristiche o tratti distinti per un'altra finalità o entità in modo che il sistema osservi e impari attraverso di loro.

Entità come funzionalità per le finalità

È possibile usare le entità come segnale per una finalità. Ad esempio, la presenza di un'entità determinata nell'espressione può distinguere la finalità in cui rientra.

Espressione di esempio Entità Finalità
Prenotami un volo a New York. City Prenotare il volo
Prenotami la sala conferenze principale. Room Riserva camera

Entità come funzionalità per le entità

È anche possibile usare entità come indicatore della presenza di altre entità. Un esempio comune di questo metodo usa un'entità predefinita come funzionalità per un'altra entità ml. Se si sta creando un sistema di prenotazione dei voli e l'espressione sembra "Prenotare un volo da Cairo a Seattle", probabilmente si avrà Origin City e Destination City come entità ML. È consigliabile usare l'entità GeographyV2 predefinita come funzionalità per entrambe le entità.

Per altre informazioni, vedere l'articolo di riferimento sulle entità GeographyV2.

È anche possibile usare le entità come funzionalità necessarie per altre entità. Ciò consente di risolvere le entità estratte. Ad esempio, se si sta creando un'applicazione di ordinamento pizza e si dispone di un'entità Size ML, è possibile creare un'entità elenco SizeList e usarla come funzionalità necessaria per l'entità Size. L'applicazione restituirà il valore normalizzato come entità estratta dall'espressione.

Per altre informazioni, vedere funzionalità e entità predefinite per altre informazioni sulla risoluzione delle entità predefinite disponibili nelle impostazioni cultura.

Dati da entità

La maggior parte dei bot di chat e delle applicazioni richiede più del nome della finalità. Questi dati aggiuntivi e facoltativi provengono da entità trovate nell'espressione. Ogni tipo di entità restituisce informazioni diverse sulla corrispondenza.

Una singola parola o frase dell'espressione può corrispondere a più di un'entità. In questo caso, ogni entità corrispondente viene restituita con il relativo punteggio.

Tutte le entità vengono restituite nella matrice di entità della risposta dall'endpoint

Procedure consigliate per le entità

Usare entità di Machine Learning

Le entità apprese dal computer sono personalizzate per l'app e richiedono l'etichettatura per avere esito positivo. Se non si usano entità apprese dal computer, è possibile usare le entità sbagliate.

Le entità apprese dal computer possono usare altre entità come funzionalità. Queste altre entità possono essere entità personalizzate, ad esempio entità di espressioni regolari o entità di elenco, oppure è possibile usare entità predefinite come funzionalità.

Informazioni sulle entità apprese sui computer efficaci.

Passaggi successivi