Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Testen is essentieel om ervoor te zorgen dat uw aangepaste agents in de Copilot Agentkit reageren en zich gedragen zoals verwacht. Dit artikel legt uit hoe u verschillende soorten tests kunt maken, beheren en valideren, waaronder multi-turn-scenario's. U kunt ook bulkbewerkingen uitvoeren met Excel en dubbele testsets.
Types testen
Maak verschillende soorten tests om uw agents te valideren.
| Type test | Omschrijving |
|---|---|
| Reactievergelijking | Deze test is het eenvoudigste testtype. Hij vergelijkt de reactie van de agent met de verwachte reactie met behulp van de geselecteerde vergelijkingsoperator. Standaard wordt de exacte overeenkomst ("gelijk aan") gebruikt. Andere beschikbare vergelijkingsoperatoren zijn 'Niet gelijk aan', 'Bevat', 'Bevat niet', 'Begint met', 'Begint niet met', 'Eindigt met' en 'Eindigt niet met'. |
| Bijlagen (zoals Adaptieve kaarten) | Vergelijkt de JSON-reactie van de agentbijlagen met de verwachte JSON-bijlagen (volledige reeks bijlagen). Standaard wordt de exacte overeenkomst ('is gelijk aan') gebruikt. Andere beschikbare vergelijkingsoperatoren zijn 'Is niet gelijk aan', 'Bevat' en 'Bevat niet'. Een speciale vergelijkingsoperator genaamd ‘AI-validatie’ gebruikt taalmodellen om de bijlage te valideren op basis van validatie-instructies van de maker, vergelijkbaar met generatieve antwoorden. |
| Overeenkomst met onderwerp |
Alleen beschikbaar wanneer Dataverse-verrijking (Verrijken met gesprekstranscripties) is geconfigureerd. Wanneer de Dataverse-verrijkingsstap is voltooid, vergelijkt deze test de verwachte onderwerpnaam en de geactiveerde onderwerpnaam. Testen van overeenkomende onderwerpen ondersteunt ook Overeenstemming met meerdere onderwerpen met aangepaste agents waarvoor generatieve indeling is ingeschakeld. Bij matching op meerdere onderwerpen worden de onderwerpen door komma's gescheiden; Bijvoorbeeld: "Onderwerp1,Onderwerp2". |
| Generatieve antwoorden |
Alleen beschikbaar als AI Builder-verrijking (analyse van gegenereerde antwoorden) is geconfigureerd. Gebruikt een groot taalmodel om te beoordelen of het door AI gegenereerde antwoord dicht bij een voorbeeldantwoord ligt of validatie-instructies respecteert. Wanneer Verrijken met Azure-toepassing Insights is geconfigureerd, kunnen ook negatieve tests, zoals moderatie of geen zoekresultaten, worden getest. Meer informatie vind je in Rubrieken gebruiken in toetsen. |
| Meerdere vragen en antwoorden | Bestaat uit een of meer testcases van andere typen, zoals overeenkomst met respons, bijlagen, overeenkomst met onderwerp en generatieve antwoorden. Alle onderliggende tests in een test met meerdere vragen en antwoorden worden binnen dezelfde gesprekscontext in de opgegeven volgorde uitgevoerd. Gebruik tests met meerdere vragen en antwoorden om een scenario volledig te testen en om aangepaste agents met generatieve indeling te testen. Lees meer in Testen met meerdere beurten. |
| Planvalidatie | Hiermee kan de maker valideren of het dynamische plan van de aangepaste agent de verwachte tools bevat. Dit testtype is bedoeld voor aangepaste Copilot Studio-agents waarvoor generatieve indeling is ingeschakeld. Lees meer in Planvalidatietesten. |
Een nieuwe testset maken
Gebruik testsets om meerdere tests te groeperen. Wanneer u tests uitvoert, selecteert u een testset om alle tests in die set uit te voeren.
- Toegang krijgen tot de toepassing Copilot Agentkit.
- Ga naar Testsets.
- Maak een nieuw record voor een agenttestset.
- Voer bij Naam een naam in.
- Selecteer Opslaan.
Een nieuwe test maken
Nadat u een testset hebt gemaakt, voegt u er tests aan toe. Selecteer in het subraster Tests+ Nieuwe agenttest.
In de volgende tabel worden de velden beschreven.
| Kolomnaam | Vereist | Omschrijving |
|---|---|---|
| Naam | Ja | Naam van de test. Deze naam kan een interne referentie-ID zijn, zoals TST-001. |
| Agenttestset | Ja | Hoofdtestset voor de test. |
| Testtype | Ja | Een van de beschikbare Testtypen. |
| startConversation-gebeurtenis verzenden | Nee | Indien ingeschakeld, ontvangt de agent de startConversation-gebeurtenis, zodat deze proactief het gesprek start en de testuiting daarna wordt verzonden. Deze instelling is doorgaans vereist wanneer het onderwerp Gesprek starten logica bevat die moet worden uitgevoerd voordat er op de gebruiker of testuiting wordt gereageerd. |
| Verwachte positie van het antwoordbericht | Nee | Stel geen waarde in als u het niet zeker weet. Met deze optie kunt u een specifiek antwoord van de agent vastleggen wanneer deze meerdere berichten verzendt. Als de agent bijvoorbeeld eerst "Hallo" zegt en vervolgens "Hoe kan ik u helpen?", en u wilt het tweede bericht testen, stelt u de waarde in op 1. De volgorde is 0-gebaseerd, dus het eerste bericht krijgt index 0, het tweede antwoord 1, enzovoort. |
| Uiting testen | Ja | Het bericht dat u als onderdeel van de test naar de agent wilt sturen. |
| Verwachte reactie | Afhankelijk | Verplicht voor het testtype Overeenkomst met respons. Verwachte reactie van de agent. Voor een Generatieve antwoorden-test kunt u een voorbeeldantwoord of uw eigen validatie-instructies voor het grote taalmodel instellen. |
| Externe variabelen JSON | Nee | JSON-record voor elke externe of contextuele waarde die u als onderdeel van de test aan de agent wilt doorgeven. Bijvoorbeeld: { "Language": "fr" } |
| Seconden voor antwoord | Nee | Aantal seconden wachten voordat de reactie van de bot wordt geëvalueerd. In de meeste gevallen kunt u deze waarde leeg laten, maar het is handig in situaties waarin de agent een API aanroept en de reactie langer kan duren dan normaal. |
| Verwachte uitkomst Generatieve antwoorden | Afhankelijk | Verplicht voor het testtype Generatieve antwoorden. Moet ofwel Beantwoord of Niet beantwoord zijn. Wanneer Azure-toepassing Insights-verrijking is ingeschakeld, kunt u kiezen voor Gemodereerd of Geen zoekresultaten. |
| Verwachte onderwerpnaam | Afhankelijk | Verplicht voor het testtype Onderwerpovereenkomst. Naam van het onderwerp dat u verwacht te activeren. Overeenstemming voor meerdere onderwerpen wordt ondersteund voor aangepaste agents met ingeschakelde generatieve indeling. Gebruik voor een overeenkomst met meerdere onderwerpen een door komma's gescheiden lijst; bijvoorbeeld: "Onderwerp1,Onderwerp2". Voeg geen extra spaties toe. Overeenkomst met meerdere onderwerpen zorgt ervoor dat de verwachte onderwerpen zich tussen de onderwerpen in het plan bevinden. |
| Verwachte bijlagen JSON | Afhankelijk | Verplicht voor het testtype Bijlagen (Adaptieve kaarten, enzovoort). De volledige JSON-array met bijlagen die u van het agentantwoord verwacht. |
| Verwachte tools | Afhankelijk | Verplicht voor het testtype Planvalidatie. Door komma's gescheiden lijst van verwachte tools (tools, acties en verbonden agenten). Voeg geen extra spaties toe. Volgorde is niet relevant. Voorbeeld: "Weer, klimaatverandering" |
| Drempelwaarde % doorgeven | Afhankelijk | Verplicht voor het testtype Planvalidatie. Het percentage verwachte tools dat in het dynamische plan moet voorkomen om de test te laten slagen. Als het percentage 100 is, moeten alle verwachte tools in het dynamische plan aanwezig zijn om de test te laten slagen. Extra hulpmiddelen in het dynamische plan hebben geen invloed op het testresultaat. |
Testen met meerdere beurten
Geef voor het testtype Multi-turn een of meer onderliggende tests van het type regulier op. Elke onderliggende test heeft een volgorde en kritikaliteit. De order definieert de uitvoeringsvolgorde binnen dezelfde gesprekscontext (binnen de testcase met meerdere paden). Het kritieke belang bepaalt of de onderliggende testcase moet passeren voor de testuitvoering met meerdere vragen en antwoorden verdergaat.
Als een onderliggende test een evaluatie na het testen vereist, zoals Overeenkomst met onderwerp of Generatieve antwoorden, blijft de test in een wachtende toestand en wordt de testuitvoering voortgezet, ongeacht kritikaliteit. Als een van de kritieke tests mislukt, wordt de uitvoering van de multi-turn-test stopgezet en wordt het resultaat ervan als mislukt beschouwd. Als alle kritieke onderliggende testcases slagen, is het resultaat van de test met meerdere vragen en antwoorden Geslaagd.
Gebruik niet-kritieke onderliggende testcases om informatie te door te sturen naar aangepaste agents met generatieve indeling. U kunt deze testgevallen ook gebruiken als de respons er niet toe doet en u wilt opbouwen naar kritieke tests.
Planvalidatietesten
Planvalidatie richt zich op de correctheid van het gereedschap. In plaats van te evalueren wat de agent zegt, controleert dit testtype of de verwachte tools tijdens het plan zijn gebruikt.
Bij het definiëren van een planvalidatietest specificeert u:
- Een testuiting
- Een door komma's gescheiden lijst met verwachte hulpmiddelen die in het dynamische plan moeten worden opgenomen
- Een drempelwaarde die aangeeft hoeveel afwijking van de lijst moet worden getolereerd
Deze test maakt gebruik van gesprekstranscripties en wordt na de daadwerkelijke testuitvoering geëvalueerd als een verrijkende activiteit.
Houd rekening met het volgende:
Verwachte tools: neem tools, acties en verbonden agenten op in de door komma's gescheiden lijst. Voeg geen extra spaties toe. Volgorde doet er niet toe.
Slagingsdrempelwaarde %: de drempelwaarde geeft het vereiste percentage aan van de verwachte tools die het dynamische plan moet bevatten wil de test slagen.
Planvalidatie is een deterministische test: het berekent de afwijking van de werkelijke gereedschappen van de verwachte gereedschappen en vergelijkt deze met de slaagdrempel. Als de afwijking binnen de drempel valt, is de test geslaagd; anders mislukt het.
Zie voor meer informatie Agentgedrag creëren met generatieve AI.
Agenten testen die connectorautorisatie vereisen
Wanneer een agent een externe gegevensbron gebruikt zoals SharePoint of Dataverse, toont het eerste gesprek meestal een "Verbinding maken om door te gaan"-autorisatiekaart. De gebruiker moet Toestaan selecteren voordat de agent de connector kan aanroepen. Om deze stroom in een geautomatiseerde test te gebruiken, modelleert u de prompt en het antwoord van de gebruiker als twee onderliggende tests binnen een multi-turn-test.
Notitie
Dit is een eenmalige instelling per testset. Nadat de verbinding is geautoriseerd voor de testgebruiker, hoeft u de autorisatiestappen niet meer in latere tests te herhalen.
De multi-turn-test bevat twee geordende onderliggende tests:
| Order | Type test | Bewerkingstype | Doel |
|---|---|---|---|
| 1 | Bijlagen (adaptieve kaarten, enzovoort) | Vergelijkingsoperator | Stuurt de uiting die de connector activeert en bevestigt op de autorisatiekaart-JSON. |
| 2 | Bijlagen (adaptieve kaarten, enzovoort) | Acties aanroepen | Dient Toestaan in op de autorisatiekaart zodat de agent het gesprek kan afronden. |
Een test maken:
Selecteer in uw testset + Nieuwe Agenttest, voer een naam in, stel Testtype in op Multi-turn en selecteer Opslaan.
Selecteer in het onderliggende raster van de multi-turn-test + New agenttest en configureer de eerste onderliggende test:
Veld Waarde Type test Bijlagen (adaptieve kaarten, enzovoort) Order 1 Testuiting De uiting die de connector activeert, bijvoorbeeld List Fourth Coffee Brands.Bewerkingstype Vergelijkingsoperator Vergelijkingsoperator Is gelijk aan Verwachte bijlagen-JSON [](tijdelijke aanduiding — u vervangt dit na de eerste uitvoering)Selecteer Test opslaan.
Sla de testset op en voer deze uit. De eerste onderliggende test mislukt zoals verwacht, omdat de tijdelijke JSON-aanduiding niet overeenkomt met de autorisatiekaart.
Open de resultaten van de testuitvoering, selecteer de onderliggende multi-turn-test, zoek de sectie Bijlagen en kopieer de Werkelijke bijlage-JSON naar het klembord.
Bewerk de eerste onderliggende test, plak de gekopieerde JSON in Verwachte bijlagen-JSON en selecteer Test opslaan.
Selecteer in het onderliggende raster van de multi-turn-test weer + Nieuwe agenttest en configureer de tweede onderliggende test:
Veld Waarde Type test Bijlagen (adaptieve kaarten, enzovoort) Order 2 Bewerkingstype Acties aanroepen Adaptieve kaartpayload {"action": "Allow", "id": "submit", "shouldAwaitUserInput": true}Vergelijkingsoperator Bevat gegevens (of Is gelijk aan,, afhankelijk van het antwoord dat u wilt stellen) Verwachte respons Laat het leeg, of stel het in op basis van de gegevens die u verwacht nadat de verbinding is toegestaan. De payloadwaarden komen uit de adaptieve-kaart-JSON die u in stap 4 hebt vastgelegd. Pas de velden
actionenidaan als uw connectorkaart verschillende aanduidingen gebruikt.Selecteer Test opslaan.
Sla de testset op en voer deze weer uit. Beide onderliggende tests zouden nu moeten slagen.
Nadat deze multi-turn-test eenmaal succesvol is uitgevoerd, wordt de verbinding geautoriseerd voor de testgebruiker en kunnen vervolgtests met dezelfde connector worden opgesteld als reguliere enkelvoudige tests.
Excel gebruiken om tests in bulk te maken of bij te werken
Nadat u een testset hebt gemaakt, kunt u Excel gebruiken om tests in bulk te maken of bij te werken.
- Schakel vanuit uw testsetrecord de subrasterweergave van Tests naar Export/Import-weergave.
- Selecteer Testen van exportagent in Excel Online.
- Voeg tests toe en wijzig ze indien nodig.
- Selecteer Opslaan.
Als u onderliggende multi-turn-tests importeert, moet u eerst de feitelijke bovenliggende multi-turn-test maken of importeren. Importeer vervolgens de onderliggende testcases.
Zie voor meer informatie Excel-import en -export in modelgestuurde Power Apps-apps.
Dubbele tests en testsets
U kunt zowel testsets als individuele tests dupliceren.
Als u één testcase wilt dupliceren, opent u de agenttestrecord en selecteert u Testcase dupliceren. Deze actie is handig wanneer u varianten van een testcase maakt, zoals het wijzigen van de locatie, het tijdstip of het bedrag.
Om een volledige testset te dupliceren, opent u de testsetrecord en selecteert u Testset dupliceren op de opdrachtbalk. Met deze actie wordt een kopie gemaakt van de testset en alle onderliggende tests.