A LUIS-alkalmazás megtervezése

Fontos

A LUIS 2025. október 1-jén megszűnik, és 2023. április 1-től nem fog tudni új LUIS-erőforrásokat létrehozni. Javasoljuk, hogy a LUIS-alkalmazásokat áttelepítsebeszélgetési nyelvfelismerésre , hogy kihasználhassa a terméktámogatás és a többnyelvű képességek folyamatos előnyeit.

A Language Understanding (LUIS) alkalmazásséma a tárgytartományhoz kapcsolódó szándékokat és entitásokat tartalmazza. A szándékok a felhasználói kimondott szövegeket osztályozzák, az entitások pedig adatokat nyernek ki a felhasználói kimondott szövegekből. A tárgytartományra vonatkozó szándékok és entitások. A szándékok a felhasználói kimondott szövegeket sorolják be.

A LUIS-alkalmazások iteratív fejlesztésekor a leghatékonyabban tanulnak és hajtanak végre. Íme egy tipikus iterációs ciklus:

  1. Új verzió létrehozása
  2. Szerkessze a LUIS-alkalmazás sémáját. Ide tartoznak az alábbiak:
    • Szándékok példa kimondott szövegekkel
    • Entitások
    • Funkciók
  3. Betanítása, tesztelése és közzététele
  4. Az aktív tanulás tesztelése az előrejelzési végpontnak küldött kimondott szövegek áttekintésével
  5. Adatok gyűjtése végpontlekérdezésekből

Képernyőkép a szerzői ciklusról

A tartomány azonosítása

A LUIS-alkalmazások egy tárgytartomány köré kerülnek. Előfordulhat például, hogy rendelkezik egy utazási alkalmazással, amely kezeli a jegyek, a járatok, a szállodák és a bérautók foglalását. Egy másik alkalmazás a testmozgással, az erőnléti tevékenységek nyomon követésével és a célok meghatározásával kapcsolatos tartalmakat biztosíthat. A tartomány azonosítása segít megtalálni a tartomány szempontjából releváns szavakat vagy kifejezéseket.

Tipp

A LUIS előre összeállított tartományokat kínál számos gyakori forgatókönyvhöz. Ellenőrizze, hogy használhat-e előre összeállított tartományt az alkalmazás kiindulópontjaként.

A szándékok azonosítása

Gondolja át az alkalmazás feladatához fontos szándékokat .

Vegyünk egy példát egy utazási alkalmazásra, amely függvényekkel foglal le egy járatot, és ellenőrzi az időjárást a felhasználó célhelyén. Ezekhez a műveletekhez két szándékot definiálhat: a BookFlightot és a GetWeathert.

Egy összetettebb, több függvényt tartalmazó alkalmazásban valószínűleg több szándékkal rendelkezik, és gondosan meg kell határoznia őket, hogy ne legyenek túl specifikusak. Előfordulhat például, hogy a BookFlightnak és a BookHotelnek külön szándéknak kell lennie, de a BookInternationalFlight és a BookDomesticFlight túl hasonló lehet.

Megjegyzés

Az ajánlott eljárás, hogy csak annyi szándékot használjon, amennyit az alkalmazás funkcióinak végrehajtásához szükséges. Ha túl sok szándékot határoz meg, a LUIS nehezebbé válik a kimondott szövegek helyes besorolása. Ha túl keveset definiál, ezek annyira általánosak lehetnek, hogy átfedésben vannak.

Ha nem kell azonosítania az általános felhasználói szándékot, adja hozzá az összes példa felhasználói kimondott szöveget a None szándékhoz. Ha az alkalmazás egyre több szándékra van szüksége, később létrehozhatja őket.

Példa kimondott szövegek létrehozása minden szándékhoz

Első lépésként ne hozzon létre túl sok kimondott szöveget az egyes szándékokhoz. Miután meghatározta az alkalmazáshoz szükséges szándékokat, hozzon létre szándékonként 15–30 példaszöveget. Minden kimondott szövegnek különböznie kell a korábban megadott kimondott szövegektől. Számos szószámot, szóválasztást, igeelhúzást és írásjelet tartalmazhat.

További információ: A LUIS-alkalmazások helyes kimondott szövegeinek ismertetése.

Az entitások azonosítása

A példaszövegekben azonosítsa a kinyerni kívánt entitásokat. A járat lefoglalásához olyan információkra van szüksége, mint a célhely, a dátum, a légitársaság, a jegykategória és az utazási osztály. Hozzon létre entitásokat ezekhez az adattípusokhoz, majd jelölje meg az entitásokat a példa kimondott szövegekben. Az entitások fontosak a szándék eléréséhez.

Az alkalmazásban használni kívánt entitások meghatározásakor ne feledje, hogy az objektumtípusok közötti kapcsolatok rögzítéséhez különböző típusú entitások használhatók. A különböző típusokkal kapcsolatos további információkért lásd: Entitások a LUIS-ban .

Tipp

A LUIS előre összeállított entitásokat kínál a gyakori, társalgási felhasználói forgatókönyvekhez. Érdemes lehet előre összeállított entitásokat használni az alkalmazásfejlesztés kiindulópontjaként.

Szándékok és entitások

A szándék a teljes kimondott szöveg kívánt eredménye, míg az entitások a kimondott szövegből kinyert adatok. A szándékok általában műveletekhez vannak kötve, amelyeket az ügyfélalkalmazásnak el kell végeznie. Az entitások a művelet végrehajtásához szükséges információk. Programozási szempontból a szándék metódushívást váltana ki, és az entitások az adott metódushívás paramétereiként lennének használva.

Ennek a kimondott szövegnek szándékkal kell rendelkeznie, és lehetnek entitásai:

"Repülőjegy vásárlás Seattle-ből Kairóba"

Ennek a kimondott szövegnek egyetlen célja van:

  • Repülőjegy vásárlása

Ennek a kimondott szövegnek több entitása lehet:

  • Seattle (forrás) és Kairó (cél) helyei
  • Egyetlen jegy mennyisége

Felbontás egynél több függvénnyel vagy szándékkal rendelkező kimondott szövegekben

Sok esetben, különösen a természetes beszélgetések használatakor, a felhasználók olyan kimondott szöveget biztosítanak, amely egynél több függvényt vagy szándékot tartalmazhat. Ennek megoldásához egy általános stratégia annak megértése, hogy a kimenetet szándékok és entitások is képviselhetik. Ennek a reprezentációnak az ügyfélalkalmazás műveleteire kell korlátozódnia, és nem kell a szándékokra korlátozódnia.

Az int-ent-ties az a fogalom, amely szerint a műveletek (általában szándékként értelmezve) entitásként is rögzíthetők az alkalmazás kimenetében, és meghatározott műveletekre képezhetők le. A tagadáspéldául általában a szándékra és az entitásra támaszkodik a teljes kinyeréshez. Vegye figyelembe az alábbi két kimondott szöveget, amelyek hasonlóak a szóválasztásban, de eltérő eredménnyel rendelkeznek:

  • "Kérem, ütemezze a járatomat Kairóból Seattle-be"
  • "Lemondom a járatomat Kairóból Seattle-be"

Két különálló szándék helyett egyetlen szándékot kell létrehoznia egy FlightAction gépi tanulási entitással. Ennek a gépi tanulási entitásnak ki kell nyernie a művelet részleteit a kérelmek ütemezéséhez és megszakításához, valamint egy forráshoz vagy célhelyhez.

Ez a FlightAction entitás a következő legfelső szintű gépi tanulási entitással és alfeltételekkel lenne strukturálva:

  • FlightAction
    • Művelet
    • Forrás
    • Cél

A kinyerés elősegítése érdekében szolgáltatásokat adna hozzá az alalkalmazásokhoz. A szolgáltatásokat a felhasználói kimondott szövegekben várt szókincs és az előrejelzési válaszban visszaadni kívánt értékek alapján választhatja ki.

Ajánlott eljárások

A séma megtervezve

Mielőtt elkezdené felépíteni az alkalmazás sémáját, meg kell határoznia, hogyan és hol szeretné használni ezt az alkalmazást. Minél alaposabb és konkrétabb a tervezés, annál jobb lesz az alkalmazás.

  • Célzott felhasználók kutatása
  • Definiáljon végpontok közötti személyeket az alkalmazás megjelenítéséhez – hang, avatar, problémakezelés (proaktív, reaktív)
  • Felhasználói interakciók csatornáinak (például szöveg vagy beszéd) azonosítása, meglévő megoldások átadása vagy új megoldás létrehozása ehhez az alkalmazáshoz
  • Végfelhasználói folyamat
    • Mit vár el az alkalmazástól, és mit nem? Mik a prioritásai annak, hogy mit kell tennie?
    • Melyek a fő használati esetek?
  • Adatgyűjtés – tudnivalók az adatok gyűjtéséről és előkészítéséről

Ne taníts be és ne tegyen közzé minden egyes példaszöveggel

Adjon hozzá 10 vagy 15 kimondott szöveget a betanítás és a közzététel előtt. Ez lehetővé teszi az előrejelzés pontosságára gyakorolt hatás megtekintését. Előfordulhat, hogy egyetlen kimondott szöveg hozzáadása nem befolyásolja láthatóan a pontszámot.

Ne használja a LUIS-t betanítási platformként

A LUIS egy nyelvi modell tartományára jellemző. Nem általános természetes nyelvi képzési platformként kell működnie.

Alkalmazás iteratív buildelése verziókkal

Minden szerzői ciklust egy új verzióban kell tartalmaznia, amely egy meglévő verzióból van klónozva.

Ne tegye közzé túl gyorsan

Az alkalmazás túl gyors és megfelelő tervezés nélküli közzététele számos problémához vezethet, például:

  • Az alkalmazás nem működik a tényleges forgatókönyvben elfogadható teljesítményszinten.
  • Előfordulhat, hogy a séma (szándékok és entitások) nem megfelelőek, és ha a sémát követően ügyfélalkalmazás-logikát fejlesztett ki, előfordulhat, hogy újra meg kell csinálnia. Ez váratlan késéseket és többletköltségeket okozhat a folyamatban lévő projekt számára.
  • A modellhez hozzáadott kimondott szövegek torzítást okozhatnak a nehezen hibakeresésre és azonosításra nehezedő kimondott szövegek felé. Az is megnehezíti a kétértelműség eltávolítását, miután véglegesített egy bizonyos sémát.

Az alkalmazás teljesítményének monitorozása

Kötegelt tesztelési készlettel monitorozhatja az előrejelzés pontosságát.

Hozza létre a példa beszédelemekként vagy végponti beszédelemekként nem használt beszédelemek különálló készletét. Folyamatosan fejlessze az alkalmazást a tesztelési készletéhez. Úgy módosítsa a tesztelési készletet, hogy az a valós felhasználói beszédelemeket tükrözze. Ezzel a tesztelési készlettel értékelje ki az alkalmazás minden egyes iterációját vagy verzióját.

Ne hozzon létre kifejezéslistákat az összes lehetséges értékkel

Adjon meg néhány példát a kifejezéslistákban , de nem minden szót vagy kifejezést. A LUIS általánosítja és figyelembe veszi a kontextust.

Következő lépések

Leképezések