Sdílet prostřednictvím


Typy entit

Důležité

Služba LUIS bude vyřazena 1. října 2025 a od 1. dubna 2023 nebudete moct vytvářet nové prostředky LUIS. Doporučujeme migrovat aplikace LUIS do porozumění konverzačnímu jazyku, abyste mohli využívat další podporu produktů a vícejazyčné funkce.

Entita je položka nebo prvek, který je relevantní pro záměr uživatele. Entity definují data, která je možné extrahovat z promluvy, a je nezbytné k dokončení požadované akce uživatele. Příklad:

Výrok Záměr predikovaný Extrahované entity Vysvětlení
Ahoj, jak se máš? Pozdrav - Nic k extrahování.
Chci objednat malou pizzu orderPizza "malý" Entita Size se extrahuje jako malá.
Vypnutí světla ložnice nechutnost "ložnice" Entita Room se extrahuje jako ložnice.
Zůstatek na mém účtu spoření končící na 4406 Kontrolníbalance Úspory, 4406 Entita accountType se extrahuje jako "savings" a entita accountNumber se extrahuje jako 4406.
Koupit vstupenky na 3 do New Yorku buyTickets '3', 'New York' Entita ticketsCount se extrahuje jako 3 a entita Destination se extrahuje jako New York.

Entity jsou volitelné, ale doporučuje se. Entity nemusíte vytvářet pro všechny koncepty v aplikaci, jenom když:

  • Klientská aplikace potřebuje data nebo
  • Entita funguje jako nápověda nebo signál pro jinou entitu nebo záměr. Další informace o entitách jako funkce najdete v tématu Entity jako funkce.

Typy entit

Pokud chcete vytvořit entitu, musíte jí dát název a typ. Ve službě LUIS existuje několik typů entit.

Entita seznamu

Entita seznamu představuje pevnou uzavřenou sadu souvisejících slov spolu s jejich synonymy. Pomocí entit seznamu můžete rozpoznat více synonym nebo variant a extrahovat pro ně normalizovaný výstup. Pomocí možnosti Doporučit zobrazíte návrhy nových slov na základě aktuálního seznamu.

Entita seznamu není strojově naučená, což znamená, že služba LUIS nezjistuje více hodnot pro entity seznamu. Služba LUIS označí jakoukoli shodu s položkou v libovolném seznamu jako entitu v odpovědi.

Odpovídající entity seznamu rozlišují malá a velká písmena a musí se přesně shodovat. Normalizované hodnoty se používají také při porovnávání entity seznamu. Příklad:

Normalizovaná hodnota Synonyma
Malá sm, sml, , tinysmallest
Střední md, mdm, regular, , averagemiddle
Velká lg, , lrgbig

Další informace najdete v referenčním článku o entitách seznamu.

Entita Regex

Entita regulárního výrazu extrahuje entitu na základě vzoru regulárního výrazu, který zadáte. Ignoruje případ a ignoruje kulturní variantu. Entity regulárních výrazů jsou nejvhodnější pro strukturovaný text nebo předdefinovanou sekvenci alfanumerických hodnot, které se očekávají v určitém formátu. Příklad:

Entity Regulární výraz Příklad
Flight Number (Číslo letu) flight [A-Z]{2} [0-9]{4} flight AS 1234
Číslo platební karty [0-9]{16} 5478789865437632

Další informace najdete v referenčním článku o entitách regulárních výrazů.

Předem připravené entity

Luis obsahuje sadu předem připravených entit pro rozpoznávání běžných typů informací, jako jsou kalendářní data, časy, čísla, měření a měna. Předem připravená podpora entit se liší podle jazykové verze aplikace LUIS. Úplný seznam předem připravených entit, které služba LUIS podporuje, včetně podpory podle jazykové verze, najdete v předem připraveném odkazu na entity.

Pokud je do vaší aplikace zahrnutá předem připravená entita, její předpovědi se zahrnou do publikované aplikace. Chování předem připravených entit je předem natrénované a nedá se upravit.

Předem připravená entita Příklad hodnoty
Jméno osoby James, Bill, Tom
DatetimeV2 2019-05-02, , May 2nd8am on May 2nd 2019

Další informace najdete v článku s referenčními informacemi o předem připravených entitách.

Entita Pattern.Any

Vzor. Každá entita je zástupný symbol pro proměnnou délku používaný pouze v šabloně šablony vzoru k označení místa, kde entita začíná a končí. Řídí se konkrétním pravidlem nebo vzorem a nejlépe se používá pro věty s pevnou lexikální strukturou. Příklad:

Ukázková promluva Vzor Entity
Můžu si dát burger? Can I have a {meal} [please][?] hamburger
Můžu si nechat pizzu? Can I have a {meal} [please][?] pizza
Kde najdu The Great Gatsby? Where can I find {bookName}? Velký Gatsby

Další informace najdete v referenčním článku o entitách Pattern.Any.

Entita strojového učení (ML)

Strojově naučená entita používá kontext k extrakci entit na základě označených příkladů. Je to upřednostňovaná entita pro vytváření aplikací LUIS. Spoléhá na algoritmy strojového učení a vyžaduje, aby byly popisky přizpůsobené vaší aplikaci. Pomocí entity ML identifikujte data, která nejsou vždy dobře naformátovaná, ale mají stejný význam.

Ukázková promluva Extrahovaná entita produktu
Chci koupit knihu. "kniha"
Můžu dostat ty boty prosím? Boty
Přidejte ty šortky do mého košíku. "šortky"

Další informace najdete v tématu Entity strojového učení .

Entita ML se strukturou

Entita ML se může skládat z menších dílčích entit, z nichž každá může mít své vlastní vlastnosti. Entita Adresa může mít například následující strukturu:

  • Adresa: 4567 Main Street, NY, 98052, USA
    • Číslo budovy: 4567
    • Název ulice: Hlavní ulice
    • Stát: NY
    • PSČ: 98052
    • Země: USA

Vytváření efektivních entit ML

Pokud chcete efektivně vytvářet strojově naučené entity, postupujte podle těchto osvědčených postupů:

  • Pokud máte strojově naučenou entitu s dílčími entitami, ujistěte se, že se v označených promluvách zobrazují různé objednávky a varianty entit a dílčích entit. Ukázkové promluvy s popiskem by měly obsahovat všechny platné formuláře a zahrnout entity, které se zobrazují a chybí, a také by se měly změnit pořadí v rámci promluvy.
  • Vyhněte se přeurčení entit na pevnou sadu. K přeurčení dochází v případě, že se model dobře nezobecní a jedná se o běžný problém v modelech strojového učení. To znamená, že aplikace nebude fungovat na nových typech příkladů adekvátně. Dále byste měli lišit popisované ukázkové promluvy, aby aplikace mohla generalizovat mimo omezené příklady, které zadáte.
  • Popisování by mělo být v rámci záměrů konzistentní. To zahrnuje i promluvy, které zadáte v záměru None (Žádný ), který zahrnuje tuto entitu. V opačném případě model nebude moct efektivně určit sekvence.

Entity jako funkce

Další důležitou funkcíentitýchch prvků je použít jako funkce nebo rozlišovat vlastnosti pro jiné záměry nebo entity, aby je váš systém sledoval a učil se prostřednictvím nich.

Entity jako funkce pro záměry

Entity můžete použít jako signál pro záměr. Například přítomnost určité entity v promluvě může rozlišit, do jakého záměru spadá.

Ukázková promluva Entity Záměr
Rezervujte mi let do New Yorku. City Rezervovat let
Zarezervujte mi hlavní konferenční místnost. Místnost Rezervovat pokoj

Entity jako funkce pro entity

Entity můžete také použít jako indikátor přítomnosti jiných entit. Běžným příkladem je použití předem připravené entity jako funkce pro jinou entitu ML. Pokud vytváříte rezervační systém letů a vaše promluva vypadá jako "Rezervovat mi let z Káhiry do Seattlu", pravděpodobně budete mít entity Origin City a Destination City jako ML. Osvědčeným postupem je použít předem připravenou entitu GeographyV2 jako funkci pro obě entity.

Další informace najdete v referenčním článku entity GeographyV2.

Entity můžete použít také jako požadované funkce pro jiné entity. To pomáhá při řešení extrahovaných entit. Pokud například vytváříte aplikaci pro řazení pizzy a máte entitu Size ML, můžete vytvořit entitu seznamu SizeList a použít ji jako požadovanou funkci pro entitu Velikost. Aplikace vrátí normalizovanou hodnotu jako extrahovaná entita z promluvy.

Další informace a předem připravené entity najdete v článku o předem připravených překladech entit dostupných ve vaší jazykové verzi.

Data z entit

Většina chatovacích robotů a aplikací potřebuje více než název záměru. Tato další volitelná data pocházejí z entit zjištěných v promluvě. Každý typ entity vrátí různé informace o shodě.

Jedno slovo nebo fráze v promluvě se může shodovat s více než jednou entitou. V takovém případě se každá odpovídající entita vrátí se svým skóre.

Všechny entity se vrátí v poli entit odpovědi z koncového bodu.

Osvědčené postupy pro entity

Použití entit strojového učení

Entity strojového učení jsou přizpůsobené vaší aplikaci a vyžadují, aby popisky byly úspěšné. Pokud nepoužíváte entity strojového učení, možná používáte nesprávné entity.

Entity strojového učení můžou používat jiné entity jako funkce. Tyto další entity můžou být vlastní entity, jako jsou entity regulárních výrazů nebo entity seznamu, nebo můžete jako funkce použít předem připravené entity.

Seznamte se s efektivními strojově naučenými entitami.

Další kroky