Delen via


Gebruik entiteiten en slotvulling in agenten

Een belangrijk onderdeel van de agent-gesprekken is begrip van natuurlijke taal, het vermogen van de AI om de bedoelingen van een gebruiker te begrijpen. Copilot Studio De gebruiker kan bijvoorbeeld zeggen: "Ik heb geprobeerd mijn geschenk kaart te gebruiken, maar het werkt niet" en agent weet dat de gebruiker naar onderwerp moet worden geleid, gerelateerd aan geschenk Kaarten dat niet werkt, zelfs als die exacte zin niet wordt vermeld als triggerzin.

Een fundamenteel aspect van natuurlijk taalbegrip is identificatie entiteiten in een gebruikersdialoog. Bekijk de video om aan de slag te gaan met entiteiten.

Een entiteit kan worden gezien als een informatie-eenheid die een bepaald type van een echt onderwerp vertegenwoordigt, zoals een telefoonnummer, postcode, woonplaat s of zelfs de naam van een persoon. Met de kennis die door entiteiten wordt verstrekt, kan een agent op slimme wijze de relevante informatie uit een gebruikersinvoer herkennen en deze opslaan voor later gebruik.

Vooraf samengestelde entiteiten

Met entiteiten in agenten kunt u informatie in vergelijkbare groepen opslaan.

Copilot Studio wordt geleverd met een set vooraf samengestelde entiteiten, die de meest gebruikte informatietypen in echte dialogen weergeven, zoals leeftijd, kleuren, cijfers en namen.

Met de kennis die door entiteiten wordt verstrekt, kan een agent op slimme wijze de relevante informatie uit een gebruikersinvoer herkennen en deze opslaan voor later gebruik.

De entiteit Geld kan als voorbeeld worden gebruikt om dit toe te lichten.

  1. Open uw agent in Copilot Studio en selecteer instellingen bovenaan de pagina en vervolgens Entiteiten in het menu.

    Er wordt een lijst met beschikbare vooraf samengestelde entiteiten weergegeven.

    Deelvenster Entiteiten.

  2. Selecteer de entiteit Geldom het detailvenster voor de entiteit te openen.

    Beschrijving van entiteit Geld.

Hier ziet u een uitleg van deze entiteit en de manieren waarop deze kan worden gebruikt om naar informatie over geld of valuta te zoeken op basis van de invoer van een gebruiker.

Wanneer een gebruiker bijvoorbeeld "Het kost 1000 dollar" invoert, weet agent met behulp van deze geldentiteit dat "1000 dollar" het type geldinformatie vertegenwoordigt. Wanneer agent deze entiteit extraheert en opslaat in een variabele, wordt "1000" opgeslagen als een getal, ook al was de omringende informatie tekst.

Aangepaste entiteiten

De vooraf gebouwde entiteiten omvatten veelgebruikte informatietypen. In sommige gevallen, bijvoorbeeld bij het bouwen van een agent die een specifiek doel dient, moet u mogelijk domeinspecifieke kennis aanleren aan het taalbegripmodel van de agent.

Stel dat u bijvoorbeeld een agent wilt maken voor een outdoorwinkel. In dit geval moet u de agent leren de categorie 'outdoor gears product' in een dialoogvenster te herkennen.

Maak eerst een aangepaste entiteit. In dit geval kunt u een entiteit maken die agent kennis geeft van alle outdoor productcategorieën.

  1. Open uw agent in Copilot Studio en selecteer instellingen bovenaan de pagina en vervolgens Entiteiten in het menu.

  2. Selecteer Een entiteit toevoegen>Nieuwe entiteit.

    Selecteer nieuwe entiteit.

  3. Selecteer het gewenste type entiteit: een gesloten lijst entiteit of een reguliere expressie (regex) entiteit.

Gesloten lijst-entiteiten

Met gesloten lijst-entiteiten kunt u een lijst met items definiëren. Deze entiteiten zijn vooral geschikt voor kleine lijsten die gemakkelijk te beheren zijn en die eenvoudige itemlabels hebben.

Schermopname van het venster voor het maken van entiteiten, met de optie Gesloten lijst gemarkeerd.

Als u deze optie selecteert bij het maken van een entiteit, wordt een deelvenster weergegeven waarin u de naam van de entiteit en een optionele beschrijving kunt opgeven en de items kunt invoeren die u in de entiteit wilt opnemen.

Schermopname van het deelvenster Entiteitenlijst.

Wanneer u items invoert, kunt u:

  • Elk item selecteren en de naam ervan wijzigen.
  • Het prullenbak-pictogram selecteren om het item uit de lijst te verwijderen.
  • Selecteer + Synoniemen (of selecteer de weergegeven synoniemen als ze al zijn toegevoegd) om het deelvenster Synoniemen bewerken te openen.

U kunt synoniemen toevoegen om de overeenkomende logica voor elk item in de lijst van de entiteit handmatig uit te breiden. In het item "wandelen" kunt u bijvoorbeeld "trekking" en "alpinisme" als synoniemen toevoegen.

Schermopname van het deelvenster Synoniemen bewerken.

Voor elke entiteit kunt u ook Slimme overeenkomsten inschakelen.

Smart matching is onderdeel van de intelligentie die wordt ondersteund door het taalbegripmodel van agent. Als deze optie is ingeschakeld, interpreteert agent de invoer van de gebruiker met behulp van fuzzy logic, op basis van de vermelde items in de entiteit.

Met name de code agent corrigeert automatisch spelfouten en breidt de bijbehorende logica semantisch uit. De code agent kan bijvoorbeeld automatisch "softball" aan "baseball" koppelen.

Wanneer u klaar bent met het maken of bewerken van uw entiteit, selecteert u Opslaan om op te slaan en terug te keren naar de lijst met entiteiten. Selecteer Sluiten om uw wijzigingen ongedaan te maken (u krijgt een optie om terug te gaan naar het bewerken van de entiteit voor het geval u per ongeluk de verkeerde optie hebt geselecteerd).

Reguliere expressie-entiteiten (regex)

Met reguliere expressie-entiteiten (regex) kunt u logische patronen definiëren die u kunt gebruiken om informatie uit een invoer te matchen en te extraheren. Regex-entiteiten zijn geweldig voor het matchen van complexe patronen met de invoer van een gebruiker, of als u rekening moet houden met specifieke variaties in hoe een gebruiker zijn of haar invoer in een gesprek kan opmaken of invoeren.

U kunt bijvoorbeeld een regex-entiteit gebruiken om items zoals een tracking-ID, een licentienummer, een kredietnummer kaart of een IP-adres te identificeren aan de hand van een tekenreeks die de gebruiker invoert in het bestand agent.

Schermopname van het venster voor het maken van entiteiten, met de optie Regex gemarkeerd.

Als u deze optie selecteert bij het maken van een entiteit, wordt een deelvenster weergegeven waarin u de naam van de entiteit en een optionele beschrijving kunt opgeven en het regex-patroon kunt invoeren dat moet worden gebruikt voor het afstemmen en extraheren van entiteitsitems uit de invoer.

Schermopname van het deelvenster Regex-entiteit.

Een Copilot Studio-regex-entiteit gebruikt de .NET-syntaxis voor reguliere expressies.

Patroonovereenkomst is standaard hoofdlettergevoelig, om het hoofdletterongevoelig te maken, gebruikt u de optie (?i) reguliere expressie in uw patroontekenreeks. Enkele basisvoorbeelden zijn opgenomen in het deelvenster Regex-entiteit, en aanvullende informatie over de syntaxis en meer voorbeelden zijn te vinden in het onderwerp Reguliere expressietaal - Beknopte naslag.

Als u de reguliere expressie meerdere patronen wilt laten opnemen, kunt u de operator voor alternatie | gebruiken om reguliere expressies samen te voegen. U kunt bijvoorbeeld twee regex-patronen combineren om te zoeken naar zowel de oude als de nieuwe indeling van een product-id-code.

Wanneer u klaar bent met het maken of bewerken van uw entiteit, selecteert u Opslaan om op te slaan en terug te keren naar de lijst met entiteiten. Selecteer Sluiten om uw wijzigingen ongedaan te maken (u krijgt een optie om terug te gaan naar het bewerken van de entiteit voor het geval u per ongeluk de verkeerde optie hebt geselecteerd).

Entiteiten gebruiken in een gesprek

Nu je de Gereed taak hebt vervuld om de agent kennis te geven over outdooruitrusting door de productcategorie-entiteit en een paar andere aangepaste entiteiten te maken, kun je deze gaan gebruiken bij het opzetten van een agent-conversatie.

  1. Ga naar de pagina Onderwerpen voor de agent die u wilt bewerken.

  2. Open het onderwerp voor een entiteit die u wilt verzamelen.

  3. Selecteer het pictogram Knooppunt toevoegen en selecteer vervolgens Een vraag stellen.

  4. Selecteer onder Identificeren de entiteit waarin u Aangepaste entiteiten hebt gemaakt.

    Vraagknooppunt met entiteitsselectie.

  5. U kunt ook optioneel items selecteren om als knoppen weer te geven. Als u bijvoorbeeld bepaalde categorieën als knoppen wilt weergeven zodat gebruikers gemakkelijk hun invoer kunnen kiezen, kiest u Opties voor gebruiker selecteren en selecteert u ze vervolgens in de lijst met items die u hebt toegevoegd toen u de aangepaste entiteit maakte.

    Schermopname met een selectie van entiteitswaarden die tijdens runtime als knoppen moeten worden weergegeven.

  6. Geef indien nodig de variabele voor de uitvoer van de gebruikersrespons een naam.

Vullen van slots

Het vullen van slots is een Language Understanding-begrip dat betekent dat een geëxtraheerde entiteit moet worden opgeslagen in een object. In Copilot Studio betekent het vullen van slots echter het plaatsen van de geëxtraheerde entiteitswaarde in een variabele.

Met nog steeds de campingactiviteiten als voorbeeld wordt dit onderwerp geactiveerd door "Ik wil iets doen" in de testchat te typen.

Onderwerp wordt succesvol geactiveerd en agent vraagt om het type activiteit. Ook worden de knopkeuzes weergegeven die zijn opgegeven bij het maken van het knooppunt Stel een vraag . In de dialoogboom wordt bij het volgen tussen onderwerpen ook aangegeven dat agent wordt uitgevoerd naar het vraagknooppunt dat u zojuist hebt bewerkt.

traceren tussen onderwerpen.

Een gebruiker kan de vooraf gedefinieerde keuzes gebruiken door een van de knoppen te selecteren. Als alternatief kunnen ze ook "trekken" intypen en zien dat het verwijst naar "wandelen", omdat die woorden als synoniemen zijn gedefinieerd.

Bij het volgen tussen onderwerpen ziet u dat de dialoog correct wordt gerouteerd naar het pad waarin de waarde van de productcategorie "Wandelen" is. U kunt de variabele waarde inspecteren vanuit het variabele venster onderaan het ontwerpcanvas. In het venster ziet u de variabele waarde "Wandelen".

Het vullen van slots vond plaats door de geëxtraheerde entiteit "Wandelen" in te voegen in de variabele VarCampType.

Variabel kijkvenster.

U kunt ook "proactief vullen van slots" gebruiken, waarbij de gebruiker meerdere stukjes informatie specificeert die aan meerdere entiteiten worden toegewezen. De agent kan automatisch herkennen welke informatie bij welke entiteit hoort. In gevallen waarin de beoogde toewijzing onduidelijk is, wordt de gebruiker gevraagd om specifieker te zijn door keuzes te bieden.

In dit voorbeeld schreef de gebruiker: "Ik verveel me, maar ik hou van bergbeklimmen". Dit bericht bevat de triggerzin dat de gebruiker hulp nodig heeft bij buitenactiviteiten en een tweede stukje informatie, namelijk 'bergbeklimmen', een door de entiteit gedefinieerd synoniem voor wandelen. In dit geval vult agent zowel de entiteit voor het kiezen van een buitenactiviteit als voor het type activiteit in.

Meerdere slots vullen en slots proactief vullen.

Bij het volgen tussen onderwerpen kunt u zien dat agent deze gebruikersinvoer opneemt en op intelligente wijze de vraagknoop overslaat die vraagt naar het type activiteit.

De agent-functie luistert altijd actief naar de invoer van de gebruiker en onthoudt informatie vooraf, zodat onnodige stappen indien nodig kunnen worden overgeslagen.

Laten we de test opnieuw starten en een ander geval proberen. In deze ronde kunt u nog een paar vraagknooppunten toevoegen, bijvoorbeeld voor zaken als de hoeveelheid tijd die u hebt voor de activiteit (met de entiteit Duur) en de prijsklasse (met behulp de entiteit Geld).

Deze keer, wanneer de vraag over de productcategorie wordt gesteld, hoeft de gebruiker agent niet alleen de productcategorie te vertellen, maar kan hij zeggen: "Ik wil een paar wandelschoenen kopen onder $100". In dit voorbeeld kan de agent niet alleen naar het juiste pad in de categorie wandelproducten leiden, maar ook actief de slots invullen waarin om het type wandeluitrusting en de beoogde prijsklasse wordt gevraagd.

traceren tussen onderwerpen voor product- en prijscategorieën.

Proactief slot vullen kan handmatig worden beheerd op knooppuntniveau. Als u altijd binnen een specifiek knooppunt vragen wilt stellen, ongeacht of de slot is gevuld met eerdere gebruikersreacties, schakelt u de optie Vraag overslaan uit voor dat vraagknooppunt. Voer de volgende stappen uit om de optie Vraag overslaan uit te schakelen.

  1. Selecteer het pictogram Meer () van het knooppunt Vraag en selecteer vervolgens Eigenschappen. Het paneel Vraageigenschappen verschijnt.

    Open het paneel Vraageigenschappen.

  2. Selecteer in het paneel Vraageigenschappen Vraaggedrag.

  3. Selecteer in het paneel Vraaggedrag onder Vraag overslaan de optie Elke keer vragen en vervolgens Opslaan bovenaan de pagina.

    Vraag overslaan.