Dela via


Entitetstyper

Viktigt!

LUIS dras tillbaka den 1 oktober 2025 och från och med den 1 april 2023 kommer du inte att kunna skapa nya LUIS-resurser. Vi rekommenderar att du migrerar dina LUIS-program till förståelse för konversationsspråk för att dra nytta av fortsatt produktsupport och flerspråkiga funktioner.

En entitet är ett objekt eller ett element som är relevant för användarens avsikt. Entiteter definierar data som kan extraheras från yttrandet och är nödvändiga för att slutföra en användares nödvändiga åtgärd. Till exempel:

Yttrande Avsikt förutsagd Entiteter som extraherats Förklaring
Hej hur mår du? Hälsning - Inget att extrahera.
Jag vill beställa en liten pizza orderPizza "liten" Entiteten "Storlek" extraheras som "liten".
Släck sovrumslampa Avfarten "sovrum" Entiteten "Rum" extraheras som "sovrum".
Kontrollera saldot på mitt sparkonto som slutar på 4406 checkBalance "besparingar", "4406" Entiteten "accountType" extraheras som "besparingar" och "accountNumber"-entiteten extraheras som "4406".
Köp 3 biljetter till New York buyTickets "3", "New York" Entiteten "ticketsCount" extraheras som "3" och "Mål"-entiteten extraheras som "New York".

Entiteter är valfria men rekommenderas. Du behöver inte skapa entiteter för varje koncept i din app, bara när:

  • Klientprogrammet behöver data, eller
  • Entiteten fungerar som ett tips eller en signal till en annan entitet eller avsikt. Om du vill veta mer om entiteter som funktioner går du till Entiteter som funktioner.

Entitetstyper

Om du vill skapa en entitet måste du ge den ett namn och en typ. Det finns flera typer av entiteter i LUIS.

Lista entitet

En listentitet representerar en fast, stängd uppsättning relaterade ord tillsammans med deras synonymer. Du kan använda listentiteter för att identifiera flera synonymer eller varianter och extrahera en normaliserad utdata för dem. Använd alternativet rekommendera för att se förslag på nya ord baserat på den aktuella listan.

En listentitet är inte maskininlärd, vilket innebär att LUIS inte identifierar fler värden för listentiteter. LUIS markerar alla matchningar till ett objekt i en lista som en entitet i svaret.

Matchande listentiteter är både skiftlägeskänsliga och måste vara en exakt matchning. Normaliserade värden används också när du matchar listentiteten. Till exempel:

Normaliserat värde Synonymer
Litet sm, sml, , tinysmallest
Medium md, mdm, regular, , , averagemiddle
Stort lg, , lrgbig

Mer information finns i referensartikeln för entiteter i listan.

Regex-entitet

En entitet med reguljära uttryck extraherar en entitet baserat på ett mönster för reguljära uttryck som du anger. Den ignorerar fall och ignorerar kulturell variant. Reguljära uttrycksentiteter passar bäst för strukturerad text eller en fördefinierad sekvens med alfanumeriska värden som förväntas i ett visst format. Till exempel:

Enhet Regular expression Exempel
Flightnummer flight [A-Z]{2} [0-9]{4} flight AS 1234
Kreditkortsnummer [0-9]{16} 5478789865437632

Mer information finns i referensartikeln för regex-entiteter.

Förbyggda entiteter

LUIS innehåller en uppsättning fördefinierade entiteter för att identifiera vanliga typer av information, till exempel datum, tider, tal, mått och valuta. Det fördefinierade entitetsstödet varierar beroende på luis-appens kultur. En fullständig lista över de fördefinierade entiteter som LUIS stöder, inklusive stöd efter kultur, finns i den fördefinierade entitetsreferensen.

När en fördefinierad entitet ingår i ditt program inkluderas dess förutsägelser i det publicerade programmet. Beteendet för fördefinierade entiteter är förtränat och kan inte ändras.

Fördefinierad entitet Exempelvärde
PersonName James, Bill, Tom
DatetimeV2 2019-05-02, , May 2nd8am on May 2nd 2019

Mer information finns i referensartikeln för fördefinierade entiteter.

Pattern.Any entity

Ett mönster. En entitet är en platshållare med variabel längd som endast används i ett mönsters mallyttrande för att markera var entiteten börjar och slutar. Den följer en specifik regel eller mönster och används bäst för meningar med fast lexikal struktur. Till exempel:

Exempel på yttrande Mönster Enhet
Kan jag få en hamburgare, tack? Can I have a {meal} [please][?] burgare
Kan jag få en pizza? Can I have a {meal} [please][?] pizza
Var hittar jag Den store Gatsby? Where can I find {bookName}? Den stora Gatsby

Mer information finns i referensartikeln Pattern.Any entiteter.

Maskininlärd entitet (ML)

Entiteten Machine Learned använder kontext för att extrahera entiteter baserat på märkta exempel. Det är den föredragna entiteten för att skapa LUIS-program. Den förlitar sig på maskininlärningsalgoritmer och kräver att etikettering skräddarsys för ditt program. Använd en ML-entitet för att identifiera data som inte alltid är väl formaterade men har samma innebörd.

Exempel på yttrande Extraherad produktentitet
Jag vill köpa en bok. "bok"
Kan jag få de här skorna, tack? "skor"
Lägg till shortsen i min korg. "shorts"

Mer information finns i Maskininlärda entiteter .

ML-entitet med struktur

En ML-entitet kan bestå av mindre underentiteter, som var och en kan ha sina egna egenskaper. En adressentitet kan till exempel ha följande struktur:

  • Adress: 4567 Main Street, NY, 98052, USA
    • Byggnadsnummer: 4567
    • Gatunamn: Huvudgatan
    • Tillstånd: NY
    • Postnummer: 98052
    • Land: USA

Skapa effektiva ML-entiteter

Följ dessa metodtips för att skapa maskininlärda entiteter på ett effektivt sätt:

  • Om du har en datorinlärd entitet med underentiteter kontrollerar du att de olika beställningarna och varianterna av entiteten och underentiteterna visas i de märkta yttrandena. Märkta exempelyttranden bör innehålla alla giltiga formulär och inkludera entiteter som visas och är frånvarande och även ordnas om i yttrandet.
  • Undvik att överanpassa entiteterna till en fast uppsättning. Överanpassning sker när modellen inte generaliseras väl och är ett vanligt problem i maskininlärningsmodeller. Detta innebär att appen inte skulle fungera med nya typer av exempel på ett tillfredsställande sätt. I sin tur bör du variera de märkta exempelyttrandena så att appen kan generalisera utöver de begränsade exempel som du anger.
  • Etiketterna ska vara konsekventa i avsikterna. Detta inkluderar även yttranden som du anger i avsikten Ingen som innehåller den här entiteten. Annars kan modellen inte fastställa sekvenserna effektivt.

Entiteter som funktioner

En annan viktig funktion för entiteter är att använda dem som funktioner eller särskilja egenskaper för andra avsikter eller entiteter så att systemet observerar och lär sig genom dem.

Entiteter som funktioner för avsikter

Du kan använda entiteter som en signal för en avsikt. Till exempel kan förekomsten av en viss entitet i yttrandet skilja vilken avsikt den faller under.

Exempel på yttrande Enhet Avsikt
Boka ett flyg till New York. City Boka flyg
Boka konferensrummet till mig. Rum Reservera rum

Entiteter som funktion för entiteter

Du kan också använda entiteter som en indikator på förekomsten av andra entiteter. Ett vanligt exempel på detta är att använda en fördefinierad entitet som funktion för en annan ML-entitet. Om du skapar ett flygbokningssystem och ditt yttrande ser ut som "Boka mig ett flyg från Kairo till Seattle" kommer du sannolikt att ha Origin City och Destination City som ML-enheter. En bra idé är att använda den fördefinierade GeographyV2-entiteten som en funktion för båda entiteterna.

Mer information finns i referensartikeln GeographyV2-entiteter.

Du kan också använda entiteter som nödvändiga funktioner för andra entiteter. Detta hjälper till vid lösning av extraherade entiteter. Om du till exempel skapar ett pizzabeställningsprogram och har en Storlek ML-entitet kan du skapa entiteten SizeList-lista och använda den som en nödvändig funktion för entiteten Storlek. Ditt program returnerar det normaliserade värdet som den extraherade entiteten från yttrandet.

Se funktioner för mer information och fördefinierade entiteter för att lära dig mer om fördefinierade entiteter som är tillgängliga i din kultur.

Data från entiteter

De flesta chattrobotar och program behöver mer än avsiktsnamnet. Dessa ytterligare, valfria data kommer från entiteter som identifieras i yttrandet. Varje typ av entitet returnerar olika information om matchningen.

Ett ord eller en fras i ett yttrande kan matcha mer än en entitet. I så fall returneras varje matchande entitet med dess poäng.

Alla entiteter returneras i entitetsmatrisen för svaret från slutpunkten

Metodtips för entiteter

Använda maskininlärningsentiteter

Maskininlärda entiteter är skräddarsydda för din app och kräver att etikettering lyckas. Om du inte använder maskininlärda entiteter kanske du använder fel entiteter.

Maskininlärda entiteter kan använda andra entiteter som funktioner. Dessa andra entiteter kan vara anpassade entiteter, till exempel reguljära uttrycksentiteter eller listentiteter, eller så kan du använda fördefinierade entiteter som funktioner.

Lär dig mer om effektiva maskininlärda entiteter.

Nästa steg