Använda entiteter och platsfyllning i copilot
En betydande del av copilot-konversationerna i Copilot Studio består av en naturlig språkförståelse, nämligen möjligheten för AI att förstå en användares avsikt. Användaren säger kanske Jag försökte använda mitt presentkort, men det fungerar inte och copilot dirigerar användaren till ämnet som berör presentkort som inte fungerar även om den exakta frasen inte angetts som en utlösande fras.
En grundläggande aspekt av den naturliga språkförståelsen är att identifiera entiteter i en användardialog. Titta på videon för att komma igång med entiteter.
En entitet kan betraktas som en informationsenhet som representerar en viss typ av ett verkligt ämne, t.ex. telefonnummer, postnummer, ort eller till och med en persons namn. Med hjälp av den kunskap som beviljats av entiteter kan en copilot känna igen den relevanta informationen i en användares indata och spara den för senare användning.
Förbyggda entiteter
Med entiteterna i copilot kan du lagra information i liknande grupper.
Copilot Studio levereras med en uppsättning inbyggda entiteter som representerar den vanligaste informationstyperna i verkliga dialoger, till exempel ålder, färger, siffror och namn.
Med hjälp av den kunskap som beviljats av entiteter kan en copilot känna igen den relevanta informationen i en användares indata och spara den för senare användning.
Entiteten Pengar kan användas som exempel för att hjälpa dig förstå detta begrepp.
Öppna copilot i Copilot Studio och välj Inställningar överst på sidan och sedan Entiteter på menyn.
En lista över de förbyggda entiteter som är tillgängliga visas.
Välj entiteten Pengar, som öppnar informationsfönstret för entiteten.
Här kan du visa en förklaring av entiteten och hur du kan använda den för att söka efter information relaterad till pengar eller valuta från en användares indata.
När en användare exempelvis anger Det kostar 1 000 kronor, vet copilot genom att använda entiteten pengar, att 1 000 kronor representerar informationstypen Pengar. När copilot extraherar den här entiteten och sparar den i en variabel sparas 1 000 som ett tal, även om den omgivande informationen är text.
Anpassade entiteter
De fördefinierade entiteterna täcker vanliga informationstyper. Ibland, t.ex. när du bygger en copilot som tjänar ett specifikt syfte, måste du tillföra domänspecifik information i copilot-modellen för språkförståelse.
Låt oss till exempel anta att du vill skapa en copilot för en friluftsbutik. I det här fallet måste du lära copilot att bekräfta kategorin friluftsprodukt i en dialog.
Först skapar du en anpassad entitet. I det här fallet kan du skapa en entitet som ger copilot kunskap om samtliga kategorier för friluftsprodukter.
Öppna copilot i Copilot Studio och välj Inställningar överst på sidan och sedan Entiteter på menyn.
Välj Lägg till en entitet>Ny entitet.
En ny ruta öppnas där du kan välja typ av entitet: antingen Stängd lista entitet eller Vanliga uttryck (regex) entitet.
Entiteter för stängda listor
Med entiteter med stängda listor kan du definiera en lista med objekt. Dessa entiteter används bäst för små listor som är enkla att hantera och som har enkla objektetiketter.
Om du väljer det här alternativet när du skapar en entitet visas en ruta där du kan ange entitetsnamnet, en valfri beskrivning och ange objekten du vill ha med i entiteten.
När du anger objekt kan du:
- Markera varje objekt och ändra namnet.
- Välj papperskorgen för att radera objektet från listan.
- Välj + Synonymer (eller markera de synonymer som redan har lagts till i listan) för att öppna rutan Redigera synonymer.
Du kan lägga till synonymer för att manuellt expandera matchningslogiken för varje objekt i entitetens lista. Till exempel i objektet "vandring" kan du lägga till "trekking" och "bergsklättring" som synonymer.
För varje entitet kan du även aktivera Smart matchning.
Smart matchning är en del av den information som stöds av copilot språkförståelsemodell. Med det här alternativet aktiverat tolkar copilot användares indata utifrån entitetens listade objekt.
Dessutom kommer felstavningar att autokorrigering av copilot och matcha logiken. Exempelvis kan copilot automatiskt matcha "softball" med "baseball".
När du har skapat eller redigerat entiteten väljer du Spara om du vill spara och återgå till listan med entiteter. Välj Stäng om du vill ignorera ändringarna (du får möjlighet att gå tillbaka till att redigera entiteten om du av misstag valde fel alternativ).
Entiteter reguljärt uttryck (regex)
Med entiteter för reguljärt uttryck (regex) kan du definiera logiska mönster som du kan använda för att matcha och extrahera information från en indata. Regex-entiteter passar utmärkt för komplexa mönstermatchningar mot en användares indata, eller om du behöver tillåta särskilda variationer av hur en användare kan formatera eller ange sina indata i en konversation.
Du kan till exempel använda en regex-entitet för att identifiera objekt som ett spårnings-ID, ett licensnummer, ett kreditkortsnummer eller en IP-adress från en sträng som användaren anger i copilot.
Om du väljer det här alternativet när du skapar en entitet visas en ruta där du kan ange entitetsnamnet, en valfri beskrivning och ange det regex-mönster som ska användas för att matcha och extrahera entitetsobjekt från indata.
En Copilot Studio regex-entitet använder .NET-syntaxen som är vanlig.
Som standard är mönstermatchning skiftlägeskänslig, för att göra det skiftlägeskänsligt använda (?i)
reguljärt uttrycksalternativ i din mönstersträng. Några grundläggande exempel finns i fönstret regex-entitet, och ytterligare information om syntaxen och fler exempel finns i ämnet Vanligt uttrycksspråk – Snabbreferens.
Om du behöver göra det reguljära uttrycket rymt flera mönster kan du använda växlingsoperatorn för |
att sammanfoga regelbundna förfallna mönster. Du kan till exempel kombinera två regex-mönster och söka efter både det gamla och nya formatet för en produkt-ID-kod.
När du har skapat eller redigerat entiteten väljer du Spara om du vill spara och återgå till listan med entiteter. Välj Stäng om du vill ignorera ändringarna (du får möjlighet att gå tillbaka till att redigera entiteten om du av misstag valde fel alternativ).
Använd entiteter i en konversation
Nu när du har gett copilot kunskaper om friluftsutrustning genom att skapa entiteten för produktkategorin och några andra anpassade entiteter, kan du börja använda dem när du skapar en copilot-konversation.
Gå till sidan Ämnen för copilot som du vill redigera.
Öppna ämnet för en entitet som du vill samla in.
Välj ikonen Lägg till nod och välj sedan Ställ en fråga.
Under Identifiera väljer du den entitet du skapade i Anpassade entiteter.
Du kan även välja vilka objekt som ska visas som knappar. För att visa vissa kategorier som knappar och göra det enkelt för användarna att välja bland dessa som indata markerar du Välj alternativ för användare och väljer dem sedan i listan som innehåller de objekt du lade till när du skapade den anpassade entiteten.
Vid behov namnger du variabeln för utdata från användarens svar.
Platsfyllning
Platsfyllning är ett naturligt koncept för språkförståelse som innebär att en extraherad entitet sparas i ett objekt. Platsfyllning i Copilot Studio innebär dock att det extraherade entitetsvärdet placeras i en variabel.
Vi fortsätter att använda ämnet campingaktiviteter som exempel. Detta utlöses genom att skriva "Jag vill göra någonting" i testchatten.
Ämnet utlöses och copilot frågar efter typen av aktivitet även de knappalternativ som angavs när du skapade noden Ställ en fråga. I dialogträdet visar spårningen mellan ämnen även att copilot körs mot den frågenod du just har redigerat.
En användare kan välja en av knapparna för att använda de fördefinierade alternativen. Eftersom orden även har angetts som synonymer kan de också mata in "trekking" (eller liknande) och se att den mappar till "vandring".
När du spårar mellan ämnen visas dialogen korrekt i densökväg där produktkategorivärdet är "vandring". Du kan inspektera variabelvärdet i fönstret för variabla bevakningar längst ned i redigeringsarbetsytan. Variabelvärdet "vandring" visas i bevakningsfönstret.
Platsfyllning har enkelt uttryckt inträffat genom att den extraherade entiteten "vandring" infogas i variabeln VarCampType
.
Du kan även använda det som kallas "proaktiv platsfyllning", där användaren kan ange flera informationsdelar som mappar till flera entiteter. Copilot kan automatiskt förstå vilken information som tillhör vilken entitet. Om roboten är osäker på den avsedda mappningen erbjuder den användaren alternativ och uppmanar denne att ange mer specifik information.
I det här exemplet skrev användaren Jag är uttråkad men gillar bergsklättring. Det här meddelandet innehåller både den utlösande frasen att användaren vill ha hjälp med utomhusaktiviteter och ger även annan information om "bergsklättring", som är en entitetsdefinierad synonym för vandring. I det här fallet fyller copilot i både entiteten för val av utomhusaktivitet och för typ av aktivitet.
När du spårar mellan ämnen ser du att copilot tar in denna användarinmatning och på ett intelligent sätt hoppar över den frågenod som frågar efter typen av aktivitet.
Copilot lyssnar alltid aktivt till användarindatan och memorerar information direkt i syfte att kunna hoppa över onödiga steg.
Vi börjar med att starta om testet och prova ett annat ärende. I den här omgången kan du lägga till ytterligare ett par frågenoder som frågar efter saker som hur mycket tid du har för aktiviteten (med hjälp av entiteten Varaktighet) samt prisklassen (med hjälp av entiteten Pengar).
Istället för att endast ange produktkategorin för copilot kan användaren denna gång ange "Jag vill köpa ett par vandringskängor för under 1 000 kr" när frågan om produktkategori ställs. I det här exemplet kan copilot inte bara dirigera vidare till rättsökväg för vandringsprodukt, den kan även aktivt fylla i de platser som efterfrågar typen av vandringsutrustning och information om önskat prisintervall.
Proaktiv platsfyllning kan styras manuellt på nodnivå. Du kan inaktivera alternativet Hoppa över fråga för den aktuella frågenoden om du alltid vill ställa frågan inom en viss nod, oavsett om platsen har fyllts i från tidigare användarsvar. Utför följande steg för att inaktivera alternativet Hoppa över fråga.
Välj ikonen Mer (…) för noden Fråga och välj sedan Egenskaper. Panelen Frågeegenskaper öppnas.
Välj Frågebeteende i panelen Frågeegenskaper.
Välj Fråga varje gång under Hoppa över fråga i panelen Frågebeteende och välj sedan Spara längst upp på sidan.