Microsoft Bot Work, Luis og action parametere

stemmer
5

Jeg prøver å bygge en bot med Luis, men det er mye vanskeligere enn jeg trodde. Så langt jeg har klart å lage min LUIS programmet og opprette en intensjonsavtale og en Entity og jeg har laget noen Ytringer som synes å fungere fint.

Jeg så laget min bot og har koblet den opp til Luis. Når jeg teste min bot det fungerer som forventet. Nå, for den morsomme delen. Jeg ønsker å håndtere parametere. På Luis Jeg har lagt en handling til min Intent :

skriv

Som du ser har jeg lagt en melding. Koden min i min bot i dag ser slik ut:

/// <summary>
/// Tries to find the category
/// </summary>
/// <param name=result>The Luis result</param>
/// <param name=alarm></param>
/// <returns></returns>
public string TryFindCategory(LuisResult result)
{

    // Variable for the title
    EntityRecommendation title;

    // If we find our enenty, return it
    if (result.TryFindEntity(PiiiCK.Category, out title))
        return title.Entity;

    // Default fallback
    return null;
}

[LuisIntent(Choose category)]
public async Task ChooseCategory(IDialogContext context, LuisResult result)
{

    // Get our category
    var category = TryFindCategory(result);
    var response = The category you have chosen is not in the system just yet.;

    switch (category)
    {
        case camera:
            response = $You need help buying a { category }, is this correct?;
            this.started = true;
            break;
        default:
            if (!string.IsNullOrEmpty(category)) response = $Sorry, PiiiCK does not deal with { category.Pluralise() } just yet.;
            break;
    }

    // Post our response back to the user
    await context.PostAsync(response);

    // Execute the message recieved delegate
    context.Wait(MessageReceived);
}

Jeg tror du kan gjette hvor jeg kommer med dette. Hvis brukeren skriver Hjelp meg å kjøpe et kamera , vil det komme til Velg kategori Intent og vil ha den riktige Entity valgt. Men hvis de skriver Hjelp meg å kjøpe , vil det fortsatt gå til riktig Intent, men det vil ikke ha en valgt enhet . Jeg ønsker min bot for å se at og bruke teksten i Prompt jeg opprettet i LUIS og når brukeren velger sin enhet jeg vil den skal gå tilbake til LUIS med denne parameteren.

Jeg har ingen anelse om hvordan du gjør dette, og jeg kan ikke finne noen tutorials på dette. Eventuelle hjelpe ville være verdsatt (selv linker!)

Publisert på 14/11/2016 klokken 16:05
kilden bruker
På andre språk...                            


1 svar

stemmer
1

Først av alt må du sørge for at dine ytringer som inneholder kategoriene, er du merking dem som kategori enhet. Dette gjøres ved å bare velge ordet / ordene som representerer din enhet, og deretter klikke på den faktiske kategorien før du sender din ytring.

merking ytringer

Det er uavhengig av handlingsparametrene du har lagt til. For å se etter handlingsparametre, må du navigere gjennom selve hensikten. Den IntentRecommendation har en Handlinger samling eiendom; som inneholder en Parametere samling eiendom.

handlingsparametre

Noe å legge til her, er at i utvikler gren, BotFramework teamet bare lagt til støtte for LUIS v2 API og lagt til noen helt nye capabilitites.

For eksempel, nå LuisDialog vil fungere hvis hensikt krever parametere og de er ikke gitt. I dette scenariet (som synes det er din), vil LuisDialog automatisk starte en LuisActionDialog og spør brukeren om den manglende parameter, med beskjed om du definerte i handlingen parameter.

Vær oppmerksom på at dette ikke er publisert som nuget pakke ennå.

Svarte 14/11/2016 kl. 18:25
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more