Intents

Belangrijk

LUIS wordt op 1 oktober 2025 buiten gebruik gesteld en vanaf 1 april 2023 kunt u geen nieuwe LUIS-resources meer maken. We raden u aan uw LUIS-toepassingen te migreren naar conversationele taalbegrip om te profiteren van doorlopende productondersteuning en meertalige mogelijkheden.

Een intentie vertegenwoordigt een taak of actie die de gebruiker wil uitvoeren. Het is een doel of doel dat wordt uitgedrukt in de uiting van een gebruiker.

Definieer een set intenties die overeenkomt met de acties die gebruikers in uw toepassing willen uitvoeren. Een reis-app heeft bijvoorbeeld verschillende intenties:

Intenties van reis-apps Voorbeelden van utterances
BookFlight "Boek volgende week een vlucht naar Rio"
"Vlieg me naar Rio op de 24ste"
"Ik heb volgende zondag een vliegticket nodig naar Rio de Janeiro"
Begroeting Hoi
Hallo
Goedemorgen
Weersverwachting "Hoe is het weer in Boston?"
"Toon de prognose voor dit weekend"
Geen "Haal een koekje recept voor me"
Hebben de Lakers gewonnen?

Alle toepassingen worden geleverd met de vooraf gedefinieerde intentie, 'Geen', wat de terugvalintentie is.

Vooraf gedefinieerde intenties

LUIS biedt vooraf gedefinieerde intenties en hun uitingen voor elk van de vooraf gedefinieerde domeinen. Intenties kunnen worden toegevoegd zonder het hele domein toe te voegen. Het toevoegen van een intentie is het proces van het toevoegen van een intentie en de bijbehorende uitingen aan uw app. Zowel de intentienaam als de utterancelijst kunnen worden gewijzigd.

De scores van alle intenties retourneren

U wijst een uiting toe aan één intentie. Wanneer LUIS een utterance ontvangt, retourneert het standaard de belangrijkste intentie voor die utterance.

Als u de scores voor alle intenties voor de uiting wilt, kunt u een vlag opgeven in de querytekenreeks van de voorspellings-API.

Voorspellings-API-versie Vlag
V2 verbose=true
V3 show-all-intents=true

Intentie vergeleken met entiteit

De intentie vertegenwoordigt de actie die de toepassing moet uitvoeren voor de gebruiker, op basis van de hele uiting. Een utterance kan slechts één intentie met de hoogste score hebben, maar kan veel entiteiten hebben.

Maak een intentie wanneer de intentie van de gebruiker een actie activeert in uw clienttoepassing, zoals een aanroep van de functie checkweather() uit de bovenstaande tabel. Maak vervolgens entiteiten die parameters vertegenwoordigen die nodig zijn om de actie uit te voeren.

Intentie Entiteit Voorbeeld van een utterance
Weersverwachting { "type": "location", "entity": "Seattle" }
{ "type": "builtin.datetimeV2.date","entity": "tomorrow","resolution":"23-05-2018" }
Hoe is het weer in Seattletomorrow?
Weersverwachting { "type": "date_range", "entity": "this weekend" } De prognose voor weergeven this weekend

None- intent

De intentie None wordt gemaakt, maar wordt met opzet leeg gelaten. De intentie None is een vereiste intentie en kan niet worden verwijderd of hernoemd. Vul deze met uitingen die buiten uw domein vallen.

De intentie Geen is de terugval-intentie en moet 10% van de totale uitingen bevatten. Het is belangrijk in elke app, omdat deze wordt gebruikt om LUIS-utterances te leren die niet belangrijk zijn in het app-domein (onderwerpgebied). Als u geen uitingen toevoegt voor de intentie Geen , dwingt LUIS een uiting buiten het domein af in een van de domeinintenties. Hierdoor worden de voorspellingsscores scheefgetrokken door LUIS de verkeerde intentie voor de uiting te leren.

Wanneer een uiting wordt voorspeld als de intentie Geen, kan de clienttoepassing meer vragen stellen of een menu opgeven om de gebruiker naar geldige keuzes te leiden.

Negatieve intenties

Als u negatieve en positieve intenties wilt bepalen, zoals 'Ik wil een auto' en 'Ik wil geen auto', kunt u twee intenties maken (één positief en één negatief) en de juiste uitingen toevoegen voor elke intentie. U kunt ook één intentie maken en de twee verschillende positieve en negatieve termen markeren als een entiteit.

Intenties en patronen

Als u voorbeelden van utterances hebt, die geheel of gedeeltelijk als een reguliere expressie kunnen worden gedefinieerd, kunt u overwegen om de entiteit reguliere expressie te gebruiken die is gekoppeld aan een patroon.

Het gebruik van een entiteit met een reguliere expressie garandeert de gegevensextractie, zodat het patroon overeenkomt. De patroonovereenkomst garandeert dat een exacte intentie wordt geretourneerd.

Intentiesaldo

De intenties van het app-domein moeten een balans tussen uitingen voor elke intentie hebben. U hebt bijvoorbeeld niet de meeste intenties met 10 utterances en een andere intentie met 500 utterances. Dit is niet evenwichtig. In dit geval wilt u de intentie met 500 utterances bekijken om te zien of veel van de intenties in een patroon kunnen worden geordend.

De intentie Geen is niet opgenomen in het saldo. Deze intentie moet 10% van het totale aantal uitingen in de app bevatten.

Intentielimieten

Bekijk de limieten om te begrijpen hoeveel intenties u aan een model kunt toevoegen.

Tip

Als u meer dan het maximum aantal intenties nodig hebt, moet u nagaan of uw systeem te veel intenties gebruikt en bepalen of meerdere intenties worden gecombineerd tot één intentie met entiteiten. Intenties die te veel op elkaar lijken, kunnen het moeilijker maken voor LUIS om er onderscheid tussen te maken. Intenties moeten voldoende gevarieerd zijn om de belangrijkste taken vast te leggen waar de gebruiker om vraagt, maar ze hoeven niet elk pad van uw code vast te leggen. Twee intenties: BookFlight() en FlightCustomerService() kunnen bijvoorbeeld afzonderlijke intenties zijn in een reis-app, maar BookInternationalFlight() en BookDomesticFlight() lijken te veel op elkaar. Als uw systeem deze moet onderscheiden, gebruikt u entiteiten of andere logica in plaats van intenties.

Hulp vragen voor apps met een aanzienlijk aantal intenties

Als het verminderen van het aantal intenties of het verdelen van uw intenties in meerdere apps niet voor u werkt, neemt u contact op met de ondersteuning. Als uw Azure-abonnement ondersteuningsservices bevat, neemt u contact op met de technische ondersteuning van Azure.

Aanbevolen procedures voor intenties:

Afzonderlijke intenties definiëren

Zorg ervoor dat het vocabulaire voor elke intentie alleen voor die intentie is en niet overlapt met een andere intentie. Als u bijvoorbeeld een app wilt hebben die reisplannen afhandelt, zoals vluchten en hotels, kunt u ervoor kiezen om deze onderwerpgebieden als afzonderlijke intenties of dezelfde intentie te gebruiken met entiteiten voor specifieke gegevens in de uiting.

Als de woordenschat tussen twee intenties hetzelfde is, combineert u de intentie en gebruikt u entiteiten.

Bekijk de volgende voorbeelduitingen:

  1. Een vlucht boeken
  2. Boek een hotel

"Boek een vlucht" en "boek een hotel" gebruiken dezelfde woordenschat van "boek een <zelfstandig naamwoord>". Deze indeling is hetzelfde, dus het moet dezelfde intentie zijn met de verschillende woorden vlucht en hotel als geëxtraheerde entiteiten.

Functies toevoegen aan intenties

Functies beschrijven concepten voor een intentie. Een functie kan een woordgroepenlijst zijn met woorden die van belang zijn voor die intentie of een entiteit die belangrijk is voor die intentie.

Zoek een goede plek voor intenties

Gebruik voorspellingsgegevens van LUIS om te bepalen of uw intenties overlappen. Overlappende intenties verwarren LUIS. Het resultaat is dat de meest scorende intentie te dicht bij een andere intentie ligt. Omdat LUIS niet elke keer exact hetzelfde pad door de gegevens gebruikt voor training, heeft een overlappende intentie de kans om de eerste of tweede te worden in de training. U wilt dat de score van de uiting voor elke intentie verder uit elkaar komt te liggen, zodat deze variantie niet plaatsvindt. Een goed onderscheid voor intenties moet elke keer resulteren in de verwachte hoogste intentie.

Uitingen verdelen over intenties

Om LUIS-voorspellingen nauwkeurig te laten zijn, moet het aantal voorbeelduitingen in elke intentie (met uitzondering van de intentie Geen) relatief gelijk zijn.

Als u een intentie hebt met 500 voorbeelduitingen en al uw andere intenties met 10 voorbeelduitingen, heeft de intentie 500-utterance een hogere voorspellingsfrequentie.

Voorbeelduitingen toevoegen aan geen intentie

Deze intentie is de terugvalintentie, waarmee alles buiten uw toepassing wordt aangegeven. Voeg één voorbeelduiting toe aan de intentie Geen voor elke tien voorbeelduitingen in de rest van uw LUIS-app.

Voeg niet veel voorbeelduitingen toe aan intenties

Nadat de app is gepubliceerd, voegt u alleen uitingen van actief leren toe in het levenscyclusproces voor ontwikkeling. Als uitingen te veel op elkaar lijken, voegt u een patroon toe.

De definitie van intenties en entiteiten niet combineren

Maak een intentie voor elke actie die door uw bot wordt uitgevoerd. Gebruik entiteiten als parameters die deze actie mogelijk maken.

Voor een bot die vluchten van luchtvaartmaatschappijen gaat boeken, maakt u bijvoorbeeld de intentie BookFlight . Maak niet voor elke luchtvaartmaatschappij of elke bestemming een intentie. Gebruik deze gegevens als entiteiten en markeer ze in de voorbeelduitingen.

Volgende stappen

Intenties gebruiken