Záměry

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 na konverzační jazyk, abyste mohli využívat výhod trvalé podpory produktů a možností více jazyků.

Záměr představuje úlohu nebo akci, kterou chce uživatel provést. Jedná se o účel nebo cíl vyjádřený v promluvě uživatele.

Definujte sadu záměrů, které odpovídají akcím, které chtějí uživatelé ve vaší aplikaci provádět. Například aplikace pro cestování by měla několik záměrů:

Záměry aplikací pro cestování Ukázkové promluvy
BookFlight (Rezervovat let) "Rezervujte mi let do Ria příští týden"
"Letět mě do Ria na 24.
"Potřebuji letenku příští neděli do Rio de Janeira"
Pozdrav „Hi“ (Nazdar)
"Hello"
„Good morning“ (Dobré jitro)
Zkontrolovat počasí "Jaké je počasí v Bostonu?"
"Show me the forecast for this weekend" (Zobrazit předpověď pro tento víkend)
Žádné "Get me a cookie recept"
"Vyhráli Lakers?"

Všechny aplikace se dodávají s předdefinovaným záměrem "None", což je záložní záměr.

Předem připravené záměry

Služba LUIS poskytuje předem připravené záměry a jejich promluvy pro každou z předem připravených domén. Záměry je možné přidat bez přidání celé domény. Přidání záměru je proces přidání záměru a jeho promluv do aplikace. Název záměru i seznam promluv je možné upravit.

Vrácení skóre všech záměrů

K jednomu záměru přiřadíte promluvu. Když služba LUIS obdrží promluvu, vrátí ve výchozím nastavení pro danou promluvu hlavní záměr.

Pokud chcete mít skóre pro všechny záměry promluvy, můžete v řetězci dotazu rozhraní API pro predikci zadat příznak.

Verze rozhraní API pro predikce Příznak
V2 verbose=true
V3 show-all-intents=true

Záměr ve srovnání s entitou

Záměr představuje akci, která by měla aplikace provést pro uživatele na základě celé promluvy. Promluva může mít pouze jeden záměr s nejvyšším skóre, ale může mít mnoho entit.

Vytvořte záměr, když záměr uživatele aktivuje akci ve vaší klientské aplikaci, například volání funkce checkweather() z výše uvedené tabulky. Pak vytvořte entity představující parametry potřebné k provedení akce.

Záměr Entita Ukázková promluva
Zkontrolovat počasí { "type": "location", "entity": "Seattle" }
{ "type": "builtin.datetimeV2.date","entity": "tomorrow","resolution":"2018-05-23" }
Jaké je počasí v Seattletomorrow?
Zkontrolovat počasí { "type": "date_range", "entity": "this weekend" } Zobrazit prognózu pro this weekend

Žádný záměr

Záměr None (Žádný) se vytvoří, ale záměrně zůstane prázdný. Záměr None (Žádný ) je povinný záměr a nedá se odstranit ani přejmenovat. Vyplňte do něj výroky, které nepatří do vaší domény.

Záměr None (Žádný) je záložní záměr a měl by obsahovat 10 % z celkového počtu promluv. Je důležitý v každé aplikaci, protože se používá k výuce promluv LUIS, které nejsou důležité v doméně aplikace (v oblasti předmětu). Pokud nepřidáte žádné promluvy pro záměr Žádné , služba LUIS vynutí promluvu, která je mimo doménu, do jednoho ze záměrů domény. Výsledkem je nerovnoměrná distribuce skóre predikce tím, že služba LUIS vyučuje pro promluvu nesprávný záměr.

Pokud je promluva predikována jako záměr Žádné, klientská aplikace může klást další otázky nebo poskytnout nabídku, která uživatele nasměruje na platné volby.

Negativní záměry

Pokud chcete určit negativní a pozitivní záměry, například " Chci auto" a " Nechci auto", můžete vytvořit dva záměry (jeden pozitivní a jeden negativní) a přidat pro každý z nich odpovídající promluvy. Nebo můžete vytvořit jeden záměr a označit dva různé kladné a záporné termíny jako entitu.

Záměry a vzory

Pokud máte ukázkové promluvy, které se dají částečně nebo jako celek definovat jako regulární výraz, zvažte použití entity regulárního výrazu spárované se vzorem.

Použití entity regulárního výrazu zaručuje extrakci dat tak, aby se vzor shodoval. Párování vzorů zaručuje vrácení přesného záměru.

Zůstatek záměru

Záměry domény aplikace by měly mít rovnováhu promluv mezi jednotlivými záměry. Například nemáte většinu záměrů s 10 promluvami a jiným záměrem s 500 promluvami. To není vyvážené. V takovém případě byste chtěli zkontrolovat záměr s 500 promluvami, abyste zjistili, jestli je možné řadu záměrů přeuspořádnout do vzoru.

Záměr None (Žádný ) není součástí zůstatku. Tento záměr by měl obsahovat 10 % celkového počtu promluv v aplikaci.

Omezení záměru

Projděte si limity , abyste pochopili, kolik záměrů můžete přidat do modelu.

Tip

Pokud potřebujete více než maximální počet záměrů, zvažte, jestli váš systém nepoužívá příliš mnoho záměrů, a určete, jestli se více záměrů zkombinuje do jednoho záměru s entitami. Záměry, které jsou příliš podobné, můžou službě LUIS ztížit jejich rozlišení. Záměry by se měly dostatečně lišit, aby zachytily hlavní úkoly, které uživatel požaduje, ale nemusí zaznamenávat každou cestu, kterou váš kód používá. Například dva záměry: BookFlight() a FlightCustomerService() můžou být samostatné záměry v cestovní aplikaci, ale BookInternationalFlight() a BookDomesticFlight() jsou příliš podobné. Pokud je váš systém potřebuje odlišit, použijte entity nebo jinou logiku místo záměrů.

Žádost o pomoc pro aplikace s velkým počtem záměrů

Pokud vám snížení počtu záměrů nebo rozdělení záměrů do více aplikací nepomůže, obraťte se na podporu. Pokud vaše předplatné Azure zahrnuje služby podpory, kontaktujte technickou podporu Azure.

Osvědčené postupy pro záměry:

Definování jedinečných záměrů

Ujistěte se, že slovník pro každý záměr je jen pro tento záměr a nepřekrývá se s jiným záměrem. Pokud například chcete mít aplikaci, která zpracovává cestovní podmínky, jako jsou lety letecké společnosti a hotely, můžete tyto předmětné oblasti použít jako samostatné záměry nebo stejný záměr s entitami pro konkrétní data uvnitř promluvy.

Pokud je slovní zásoba mezi dvěma záměry stejná, zkombinujte záměr a použijte entity.

Podívejte se na následující ukázkové promluvy:

  1. Rezervace letu
  2. Rezervace hotelu

"Rezervovat let" a "rezervovat hotel" používají stejný slovník jako "rezervovat <podstatné jméno>". Tento formát je stejný, takže by měl být stejný záměr s různými slovy letu a hotelu jako extrahované entity.

Přidání funkcí do záměrů

Funkce popisují koncepty záměru. Funkce může být seznam frází obsahující slova, která jsou pro daný záměr důležitá, nebo entita, která je pro tento záměr důležitá.

Najít místo pro záměry

Pomocí prediktivních dat ze služby LUIS zjistěte, jestli se vaše záměry překrývají. Překrývající se záměry matou službu LUIS. Výsledkem je, že záměr s nejvyšším skóre je příliš blízko jinému záměru. Vzhledem k tomu, že luis nepoužívá pro trénování pokaždé přesně stejnou cestu k datům, může se záměr překrývat jako první nebo druhý v trénování. Chcete, aby skóre promluvy pro každý záměr bylo dál od sebe, takže k tomuto rozptylu nedojde. Dobré rozlišení záměrů by mělo pokaždé vést k očekávanému hornímu záměru.

Vyvážení promluv mezi záměry

Aby byly predikce luis přesné, musí být množství ukázkových promluv v každém záměru (s výjimkou záměru None) relativně stejné.

Pokud máte záměr s 500 ukázkovými promluvami a všechny ostatní záměry s 10 ukázkovými promluvami, bude mít záměr 500 promluv vyšší míru predikce.

Přidání ukázkových promluv do záměru None (Žádný)

Tento záměr je záložní záměr, který označuje vše mimo vaši aplikaci. Přidejte jednu ukázku promluvy do záměru None (Žádný) pro každých 10 ukázkových promluv ve zbytku vaší aplikace LUIS.

Nepřidávejte do záměrů mnoho ukázkových promluv.

Po publikování aplikace přidejte do procesu životního cyklu vývoje pouze promluvy z aktivního učení. Pokud jsou výroky příliš podobné, přidejte vzor.

Nekombinujte definici záměrů a entit.

Vytvořte záměr pro jakoukoli akci, která bude robot provádět. Použijte entity jako parametry, které tuto akci umožňují.

Například pro robota, který bude rezervovat lety leteckých společností, vytvořte záměr Rezervovatlet . Nevytvažujte záměr pro každou leteckou společnost nebo každou destinaci. Použijte tyto části dat jako entity a označte je v ukázkových promluvách.

Další kroky

Jak používat záměry