Tipi di entità
Importante
LUIS verrà ritirato il 1 ottobre 2025 e a partire dal 1 aprile 2023 non è più possibile creare nuove risorse LUIS. È consigliabile eseguire la migrazione delle applicazioni LUIS a comprensione del linguaggio di conversazione (CLU) per trarre vantaggio dal supporto continuo del prodotto e dalle funzionalità multilingua.
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 | - | Niente da estrarre. |
Voglio ordinare una pizza piccola | ordinarePizza | "piccola" | L'entità 'Size' viene estratta come 'small'. |
Spegnere la luce della camera da letto | spegnere | "camera da letto" | L'entità "Stanza" viene estratta come "camera da letto". |
Controlla il saldo nel conto di risparmio che termina con 4406 | controllaSaldo | "risparmio", "4406" | L'entità 'accountType' viene estratta come 'risparmio' e l'entità 'accountNumber' viene estratta come '4406'. |
Buy 3 tickets to New York | compraBiglietti | "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 per un'altra entità o finalità. Per altre informazioni sulle entità come funzionalità, vedere Entità come funzionalità.
Tipi di entità
Per creare un'entità, è necessario assegnare un nome e un tipo. Esistono diversi tipi di entità in LUIS.
Entità elenco
Un'entità elenco rappresenta un set chiuso e fisso 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 sull'apprendimento automatico, ovvero LUIS non individua altri valori per le entità elenco. LUIS contrassegna eventuali corrispondenze a un elemento in qualsiasi elenco come un'entità nella risposta.
La corrispondenza delle entità dell'elenco fa distinzione tra maiuscole e minuscole e deve essere una corrispondenza esatta. I valori normalizzati vengono usati anche quando corrispondono all'entità elenco. Ad esempio:
Valore normalizzato | Sinonimi |
---|---|
Piccola | 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à di espressione regolare
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 |
---|---|---|
Flight Number | flight [A-Z]{2} [0-9]{4} |
flight AS 1234 |
Numero della carta di credito | [0-9]{16} |
5478789865437632 |
Per altre informazioni, vedere l'articolo di riferimento sulle entità di espressione regolare.
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. Si esegue il training preliminare del comportamento delle entità predefinite. Non è possibile applicare modifiche a questo comportamento.
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
L'entità Pattern.any è un segnaposto di lunghezza variabile usato solo nell'espressione del modello del criterio per contrassegnare l'inizio e la fine dell'entità. Segue una regola o un modello specifico e viene usato soprattutto per le frasi con una 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 Great Gatsby |
Per altre informazioni, vedere l'articolo di riferimento sulle entità pattern.Any.
Entità basata su apprendimento automatico (ML)
L'entità basata su apprendimento automatico 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 apprendimento automatico e richiede l'etichettatura per essere 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. | 'libro' |
Posso prendere queste scarpe per favore? | 'scarpe' |
Aggiungi quegli shorts al mio carrello. | 'shorts' |
Per altre informazioni, vedere Entità basate su apprendimento automatico.
Entità ML con struttura
Un'entità ML può essere composta da sottoentità più piccole, ognuna delle quali può avere le proprie funzionalità ML. Ad esempio, un'entità Indirizzo potrebbe avere la struttura seguente:
- Indirizzo: 4567 Main Street, NY, 98052, Stati Uniti
- Numero edificio: 4567
- Nome della via: Main Street
- Stato: NY
- Codice postale: 98052
- Paese: Stati Uniti
Compilazione di entità ML efficaci
Per creare entità basate su apprendimento automatico in modo efficace, seguire queste procedure consigliate:
- Se si dispone di un'entità basata su apprendimento automatico con sottoentità, assicurarsi che le diverse entità e le varianti dell'entità e delle sottoentità vengano presentate nelle espressioni etichettate. Le espressioni di esempio con etichetta devono includere tutti i moduli validi e includere entità visualizzate e assenti e riordinate all'interno dell'espressione.
- Evitare l'overfitting delle 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 funzionerebbe in modo adeguato sui nuovi tipi di esempi. Al contrario, è necessario 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à. Sono incluse anche le espressioni fornite nella finalità Nessuna che include questa entità. In caso contrario, il modello non sarà in grado di determinare in modo efficace le sequenze.
Entità come caratteristiche
Un'altra funzione importante delle entità consiste nell'usarle come caratteristiche o tratti distintivi per altre finalità o entità in modo che il sistema osservi e impari attraverso di esse.
Entità come caratteristica per le finalità
È possibile usare le entità come segnale per una finalità. Ad esempio, la presenza di una determinata entità nell'espressione può distinguere la finalità in cui rientra.
Espressione di esempio | Entità | Finalità |
---|---|---|
Prenotami un volo per New York. | Città | Prenota volo |
Prenotami la sala riunioni principale. | Club | Prenota sala |
Entità come caratteristica per le entità
È anche possibile usare le entità come indicatore della presenza di altre entità. Un esempio comune è l'uso di un'entità predefinita come caratteristica per un'altra entità ML. Se si sta creando un sistema di prenotazione dei voli e la 'espressione è simile a "Prenotami un volo dal Cairo a Seattle", probabilmente si avranno Città di origine e Città di destinazione come entità ML. È consigliabile usare l'entità GeographyV2 predefinita come caratteristica per entrambe le entità.
Per altre informazioni, vedere l'articolo di riferimento sulle entità GeographyV2.
È anche possibile usare le entità come caratteristiche necessarie per altre entità. Ciò consente di risolvere le entità estratte. Ad esempio, se si sta creando un'applicazione per l'ordine di pizza e si dispone di un'entità ML Dimensione, è possibile creare un'entità elenco ElencoDimensione e usarla come caratteristica necessaria per l'entità Dimensione. L'applicazione restituirà il valore normalizzato come entità estratta dall'espressione.
Per altre informazioni, vedere caratteristiche ed entità predefinite per maggiori dettagli sulla risoluzione delle entità predefinite disponibili nella propria cultura.
Dati da entità
La maggior parte dei chatbot 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 nell'array entità della risposta dall'endpoint
Procedure consigliate per le entità
Usare entità basate su apprendimento automatico
Le entità ML sono personalizzate per l'app e richiedono che l'etichettatura sia corretta. Se non si usano entità basate su apprendimento automatico, è possibile usare le entità errate.
Le entità ML possono usare altre entità come caratteristiche. Queste altre entità possono essere entità personalizzate, ad esempio entità di espressione regolare o entità elenco, oppure è possibile usare entità predefinite come caratteristiche.
Informazioni sulle entità basate su apprendimento automatico effettive.