Del via


Brug variabler

Vigtigt!

Power Virtual Agents-funktioner og -egenskaber er nu en del af Microsoft Copilot Studio, der følger vigtige investeringer i generativ AI og forbedrede integrationer på tværs af Microsoft Copilot.

Der refereres muligvis til nogle artikler og skærmbilleder i Power Virtual Agents, mens vi opdaterer dokumentation og undervisningsindhold.

Du kan bruge variabler til at gemme kundernes svar og genbruge deres indhold senere i samtalen.

Du kan også bruge variable til at oprette logiske udtryk, der dynamisk omdirigerer kunden til andre samtalestier. Du kan for eksempel gemme en kundes navn i en variabel, der kaldes UserName, og copiloten kan kalde kunden ved navn, efterhånden som samtalen fortsætter.

Variabler kan også overføres til, og returneres fra, andre emner og Power Automate-flow.

Variabler kan eksistere inden for tre områder:

  • Emne: Emnevariabler kan kun refereres til i de emner, som de oprettes i. Dette er standardomfanget for oprettede variabler.
  • Globale variabler kan bruges i alle emner. Du kan ændre omfanget af ethvert emne for at gøre det til en global variabel.
  • Systemvariabler oprettes automatisk med din copilot. De giver mere kontekstafhængige oplysninger om samtalen eller brugeren. De er som regel tilgængelige i alle emner.

Variabeltyper

En variabel er knyttet til en basistype. Typen bestemmer, hvilke værdier som variablen kan indeholde, og de operatorer, du kan bruge, når du bygger et logisk udtryk med den tilsvarende variabel.

Type Beskrivelse
String En række tegn, der bruges til at repræsentere tekst
Boolean En logisk værdi, der kun kan være true eller false
Nummer Ethvert reelt tal
Table En liste over værdier, men alle værdier skal være af samme type
Post En samling navneværdipar, hvor værdier kan være af en hvilken som helst type
Datetime En dato, et klokkeslæt, en ugedag eller en måned i forhold til et tidspunkt
Choice En liste over strengværdier, der har tilknyttede synonymer
Tom En pladsholder for "ingen værdi" eller "ukendt værdi"; Du kan finde flere oplysninger under Tomme felter i Power Fx

En variabels type indstilles, første gang en værdi tildeles. Derefter er typen for den pågældende variabel fast, og den kan ikke tildeles værdier af nogen anden type. En variabel, der tildeles startværdien 1, tildeles f.eks. typen Nummer. Hvis du forsøger at tildele den til strengværdien"apples", opstår der en fejl.

Når du tester en copilot, vises en variabel muligvis midlertidigt som typen ukendt. En variabel af typen ukendt har endnu ikke fået tildelt en værdi.

Rækkefølgen af variabler bestemmes fra top til bund i oprettelseslærredet. Det vil sige, at noder øverst på oprettelseslærredet tages i betragtning før noder nederst. Når du opretter grene med betingelsesnoder, sorteres grene fra venstre mod højre. Det vil sige, at noder i gren yderst til venstre behandles før noder i den nederste gren til højre.

Enheder

Copilot Studio bruger objekter til at identificere en bestemt type oplysninger fra en brugers svar. De identificerede oplysninger gemmes i en variabel af den type, der passer til oplysningerne. I følgende tabel vises den variabelbasetype, der er knyttet til foruddefinerede objekter.

Enhed Variabel basistype
Indstillinger med flere svarmuligheder Choice
Brugerens fulde svar String
Alder Nummer
Boolean Boolean
City String
Color String
Kontinent String
Land eller område String
Dato og klokkeslæt Datetime
Email String
Hændelse String
Integer Integer
Sprog String
Money Nummer
Nummer Nummer
Ordenstal Nummer
Organisation String
Procentdel Nummer
Personnavn String
Telefonnummer String
Interessepunkt String
Hastighed nummer
State String
Adresse String
Temperatur Nummer
URL String
Tykkelse Nummer
Postnummer String
Brugerdefineret objekt Choice

Opret en variabel

En hvilken som helst node, som beder dig om at vælge en variabel som et output, f.eks. Spørgsmåls-node, der automatisk opretter en outputvariabel til en passende type.

Skærmbillede af en spørgsmålsnode, hvor navnet og typen af standardvariablen er fremhævet.

Vælg, hvilket objekt der skal bruges

Spørgsmålsnoder oprettes som standard med indstillinger for flere valgmuligheder. Hvis du vil bruge et andet forudbygget eller brugerdefineret objekt, skal du markere feltet Identificer og vælge den type oplysninger, som copiloten skal lytte efter.

Skærmbillede af noden Spørgsmål med menuen Vælg oplysninger for at identificere åben, og objektet Personnavn er fremhævet.

Omdøb en variabel

Variabler tildeles automatisk et navn, når de oprettes. Den bedste fremgangsmåde er at give variablerne meningsfulde navne, så formålet med dem bliver klart for alle, der skal vedligeholde din copilot.

  1. Vælg variablen for at åbne den i ruden Variable egenskaber.

  2. Angiv et nyt navn til variablen for Variabelnavn.

Indstil en variabel

Du bruger som regel en spørgsmålsnode til at gemme brugerinput til en variabel. Der kan dog være situationer, hvor du selv vil angive værdien. I disse tilfælde skal du bruge noden Angiv variabelværdi.

  1. Vælg Tilføj node (+) for at tilføje en node og derefter vælge Variabel administration>Angiv en variabel værdi.

  2. Vælg feltet under Angiv variabel, og vælg derefter Opret en ny variabel.

    Skærmbillede af knappen Opret en ny variabel.

    Sådan oprettes en ny variabel. Dens type er ukendt, indtil du tildeler en værdi til den.

    Skærmbillede af noden Angiv variabelværdi med en ny variabel af ukendt type.

  3. For Til værdi skal du tildele en værdi vha. en af følgende indstillinger:.

    • Angiv en konstantværdi.
    • Vælg en eksisterende variabel af samme type. Denne handling angiver din variabel til den samme værdi, som den variabel du vælger.
    • Brug en Power Fx-formel. Power Fx-formel er nyttig i forbindelse med mere komplekse typer, hvor der ikke kan bruges konstantværdier, f.eks. Tabel og Posttyper.

Brug konstantværdier

I stedet for at vælge en variabel værdi, kan du skrive en konstantværdi i feltet med variabelinput.

Skærmbillede, der viser brugen af en bogstavelig værdi til en variabel, der kaldes productName.

Skærmbillede, der viser en bogstavelig værdi som input til en variabel i en omdirigeringsnode

Noden forsøger at fortolke konstantværdier, der er angivet som streng, et nummer eller en boolesk type. F.eks. 123 fortolkes som et tal. Hvis du i stedet ønsker, at denne værdi skal opfattes som en strengværdi, kan du omslutte denne værdi i dobbelte anførselstegn, f.eks. "123".

I visse scenarier, eller hvor du bruger mere komplekse typer, skal du bruge en Power Fx-formel til at angive en bestemt type.

Ruden Variabler

I ruden Variabler kan du se alle de variabler, der er tilgængelige i emne, uanset hvilke noder de defineres eller bruges i. For hver variabel kan du vælge, om den kan modtage værdien fra andre emner, returnere værdien til andre emner eller begge dele. Du kan også vælge en variabel til at redigere egenskaber i ruden Variable egenskaber.

Vælg Variabler i emnet menulinje for at åbne ruden Variabler.

Skærmbillede af ruden Variabler i Copilot Studio-oprettelseslærredet, hvor knappen Variabler er fremhævet.

Ruden Egenskaber af variabler

I ruden Egenskaber for variabel kan du omdøbe en variabel, se, hvor en variabel bruges, eller konvertere en variabel til en global variabel. Du kan dog ikke konvertere den fra en global variabel tilbage til emne variabel. Du kan også vælge, om den kan modtage værdier fra eller overføre dens værdi til andre emner.

Hvis du vil åbne ruden med variable egenskaber, skal du vælge en variabel i ruden Variabler. Du kan også åbne ruden med variable egenskaber ved at vælge en variabel i en hvilken som helst node.

Skærmbillede af ruden Variable egenskaber.

Systemvariabler

Alle copiloter leveres med indbyggede systemvariabler, der giver flere oplysninger om en samtale.

Skærmbillede af systemvariabler i et copilotemne.

Ikke alle systemvariabler vises på listen. Du skal have adgang til disse skjulte systemvariabler med en Power Fx-formel.

Hvis du vil bruge systemvariabler i en Power Fx-formel, skal du tilføje System. før variabelnavnet. Hvis du f.eks. skal inkludere systemvariablen User.DisplayName i en formel, skal du angive System.User.DisplayName.

Navn Skriv Skjult Definition
Activity.Channel valgmulighed synlig Kanal-id for den aktuelle samtale
Activity.ChannelData vilkårlig skjult Et objekt, der indeholder kanalspecifikt indhold
Activity.ChannelId string skjult Kanal-id for den aktuelle samtale, som en streng
Activity.From.Id string skjult Kanalspecifik entydigt id for afsenderen
Activity.From.Name string skjult Kanalspecifikt brugervenligt navn på afsenderen
Activity.Name string synlig Navnet på hændelsen
Activity.Text string synlig Den sidste meddelelse, der er sendt af brugeren
Activity.Type valgmulighed synlig Type af aktivitet
Activity.TypeId string skjult Type af aktivitet som en streng
Activity.Value vilkårlig skjult Uafsluttet værdi
Bot.Name string synlig Navnet på din copilot
Channel.DisplayName string skjult Vis kanalens navn
Conversation.Id string synlig Det entydige aktuelle samtale-id
LastActivity.Id string synlig Id for den tidligere sendte aktivitet
LastMessage.Id string synlig Id for den forrige meddelelse, der er sendt af brugeren
LastMessage.Text string synlig Den forrige meddelelse, der er sendt af brugeren
Recognizer.TriggerMessage.Id string synlig Id for den brugermeddelelse, der udløste det aktuelle emne
Recognizer.TriggerMessage.Text string synlig Brugermeddelelse, der udløste det aktuelle emne
User.DisplayName string synlig Visningsnavnet for brugeren, der er logget ind

Overføre variabler mellem emner

Når du omdirigerer emne til en anden, kan du overføre værdierne for variabler mellem den oprindelige emne og destinationsadressen emne. Det er især nyttigt at overføre variabler mellem emner, når du allerede har oplysninger, som emnet skal bruge. Brugerne vil sætte pris på, at de ikke behøver at besvare samme spørgsmål igen.

Modtag værdier fra andre emner

Når et emne definerer en variabel (for eksempel en spørgsmålsnode), beder copiloten brugeren om at angive variablens værdi. Hvis copiloten allerede har hentet værdien i et tidligere emne, er der ingen grund til at stille spørgsmålet igen. I disse tilfælde kan du indstille variablen som Modtag værdier fra andre emner. Når et andet emne omdirigeres til dette emne, kan det overføre en variabelværdi (eller en bogstavelig værdi) til denne variabel og springe hele spørgsmålet over. Oplevelsen for den slutbruger, der taler med copiloten, er problemfri.

I dette eksempel bruger vi to emner: Hilsen og Kontakt kunde. I begge emner anmodes der om kundens navn. Men hvis hilsenen kører emne, springes spørgsmålet i emnet Kontakt til kunde over. I stedet bruges værdien af den variabel, der er overført fra Velkommen-emnet.

Her er flowet for Kontakt til kunde-emne:

Skærmbillede af samtaleflowet for Kontakt til kunde-emne.

Som det fremgår af ruden Test copilot, og emne startes først, bliver brugeren spurgt: "Hvad skal jeg kalde dig?" Værdien gemmes i en strengvariabel, der kaldes userName. Variablen userName er også indstillet til at hente værdien fra andre emner. Meddelelsen emne afsluttes med meddelelsen "Jeg håber, du har en god dag!" {userName}.

Her er flowet for Velkommen-emnet:

Skærmbillede af samtaleflowet for Hilsen-emne.

Som det fremgår af ruden Test copilot, og emne startes først, bliver brugeren spurgt: "Hvad er dit navn?" Værdien gemmes i en strengvariabel, der kaldes UserName. Meddelelsen emne meddelelsen "Glad for at møde dig!" {UserName}. Derefter omdirigeres til meddelelsen Kontakt til kunde-emne, der sender meddelelsen "Jeg håber, du har det godt!" {userName}. Bemærk dog, at Kontakt til kunde-emnet sprang over at bede om brugerens navn igen. I stedet bruges værdien af variablen UserName er overført fra Velkommen-emnet.

Til sidst er der den anden samtale igen, denne gang ud fra perspektivet i Kontakt til kunde-emne:

Skærmbillede af samtaleflowet for Kontakt til kunde-emne, når emnet Hilsen udløses først.

Lad os gennemgå trinnene til at konfigurere et emne til at modtage værdier fra andre emner. Vi bruger det aktuelle eksempel, men de samme trin fungerer, hver gang et emne skal have en værdi fra en tidligere emne.

Konfigurer destinationens emne

Destinationens emne er det emne, der omdirigeres til, som modtager værdier fra andre emner. I eksemplet er det Kontakt til kunde.

  1. Opret eller gå til destinationens emne.

  2. Tilføj en Spørgsmålsnode, og angiv What should I call you? for meddelelsen.

  3. Under Identificer skal du vælge foruddefinerede objekters Personnavn.

  4. Vælg variablen for at åbne den i ruden Variable egenskaber. Navngiv userName, og vælg Modtag værdier fra andre emner.

    Skærmbillede af Kontakt til kunde-emne med variablen userName og dens egenskaber fremhævet.

  5. Tilføj en meddelelsesnode.

  6. Skriv I hope you're having a wonderful day, i meddelelsesfeltet.

  7. Vælg Indsæt variabel-ikon ({x}), og vælg userName.

  8. Vælg mellemrum efter variablen og skriv !.

  9. Gem emnet.

Konfigurer kildenemne

Kildenemnet er det emne, der omdirigerer, det, der leverer den værdi, der sendes til destinationens emne. I vores eksempel er det Velkommen.

  1. Gå til kildenemne.

  2. Vælg Omdiriger node og vælg destinationens emne.

  3. Vælg + Tilføj input, og vælg variablen fra destinationsemnet, du vil overføre værdien til.

    Skærmbillede af Hilsen-emne med variablen userName tilføjet som input i en omdirigeringsnode.

  4. Vælg ikonet > , og vælg derefter den variabel, hvis værdi du vil overføre.

    Skærmbillede af Hilsen-emne med variabelværdien UserName fremhævet.

    Omdiriger-noden skulle se sådan ud:

    Skærmbillede af Hilsen-emne med fuldført omdirigeringsnode.

  5. Gem emnet.

Returner værdier til oprindelige emner

Når et emne omdirigeres til og opnår en variabel ved at bede om et spørgsmål eller på anden måde får en variabel fra en handling, kan variablen returneres til det oprindelige emne. Variablen bliver en del af det oprindelige emne og kan bruges som enhver anden variabel. De oplysninger, copiloten indhenter er således tilgængelige på tværs af emner, hvilket reducerer behovet for globale variabler.

Lad os fortsætte med eksemplet fra den forrige sektion. Vi stiller et nyt spørgsmål i Kontakt til kunde-emne og returnerer derefter Velkommen-emne.

Konfigurere kildedata for emne returnerede variabel

Når du returnerer en variabel til et emne, kildeemnet er det emne, der omdirigeres til, det, der indeholder den værdi, der sendes tilbage til det oprindelige emne. I eksemplet er det Kontakt til kunde.

  1. Gå til kildenemne.

  2. Tilføj en Spørgsmålsnode, og angiv What city do you live in? for meddelelsen.

  3. Under Identificer skal du vælge foruddefinerede objekters By.

  4. Vælg variablen for at åbne den i ruden Variable egenskaber. Navngiv userCity, og vælg Returner værdier til oprindelige emner.

    Skærmbillede af Kontakt til kunde-emne med variablen userCity og dens egenskaber fremhævet.

  5. Gem emnet.

Konfigurere destinationsemnet for en returneret variabel

Når du returnerer en variabel til et emne, er destinationsemnet det emne, der omdirigerer, det, der modtager værdier fra andre emner. I vores eksempel er det Velkommen.

  1. Gå til destinationsemne.

  2. Den variabel, du har valgt i kildeemnet, vises i noden Omdiriger som en outputvariabel.

    Skærmbillede af samtaleflow for Hilsen-emne med en returneret variabel i omdirigeringsnoden.

  3. Gem emnet.