Automatiser agentevalueringer med Power Platform API

Copilot Studio giver oprettere værktøjer til løbende at evaluere agentens ydeevne ved at køre automatiserede test i forhold til foruddefinerede testsæt ved hjælp af REST API til Power Platform. Ved hjælp af REST API'en kan du udløse agentevalueringer programmatisk som en del af dine udviklingsarbejdsprocesser, f.eks. under agentopdateringer, udgivelsesvalidering eller regressionstest.

Automatisere evalueringer hjælper dig med at:

  • Valider agentkvaliteten, når du har foretaget ændringer
  • Kør tilbagevendende kontrol af ydeevnen i forhold til produktions- eller midlertidige agenter
  • Integrer agenttest i CI/CD-pipelines
  • Registrer regressioner i agentadfærd tidligt i udviklingslivscyklussen

Forudsætninger

  • Du har bot-id'et og miljø-id'et for målagenten.
  • Et testsæt oprettet i Copilot Studio for din destinationsagent.
  • Et brugeradgangstoken, der er udstedt af Microsoft Entra ID (OAuth 2.0). Hvis du vil hente tokenet, skal du se Godkendelse.
    • Du skal hente adgangstokenet ved hjælp af klient-id'et for en appregistrering, der har det relevante omfang, der er tildelt under Power Platform-API'en.
  • I forbindelse med Start en agentevaluering kan du eventuelt føje et Microsoft Studio Connector-id til det kald, der skal bruges som brugerprofil til evalueringen. Sådan finder du dit mcsConnectionId:
    1. Gå til Power Automate.
    2. Åbn siden Forbindelser .
    3. Vælg forbindelsen Microsoft Copilot Studio.
    4. Kopiér mcsConnectionId fra URL-adressen: .../connections/shared_microsoftcopilotstudio/{mcsConnectionId}/details

Oversigt over kørsel af evalueringer ved hjælp af REST API

Hvis du vil køre en evaluering ved hjælp af Power Platform-API'en, skal du følge disse generelle trin:

  1. Opfyldelse af forudsætningerne.
  2. Find og hent testsæt-id'et for det testsæt, du vil bruge.
  3. Kør evalueringen.
  4. Hent resultaterne ved hjælp af evalueringskørslens ID.

Når anmodningen lykkes, kører evalueringen asynkront og giver resultater, som du kan gennemse i Copilot Studio.

API-handlinger til automatisering af evalueringer

Copilot Studio understøtter REST API-handlinger, som du kan bruge til programmeringsmæssigt at udløse evalueringer mod din agent ved hjælp af et eksisterende testsæt.

Hent agenttestsæt

  • Slutpunkt: GET https://api.powerplatform.com/copilotstudio/environments/{EnvironmentId}/bots/{BotId}/api/makerevaluation/testsets?api-version=2024-10-01
  • Formål: Hent en matrix af testsæt-id'erne og andre oplysninger for en bestemt agent.
  • Svar: Returnerer en liste med navnet value testsæt med følgende oplysninger:
    • auditInfo: Tidsstempler og bruger-id'er til oprettelse og ændring af hvert testsæt
    • displayName: Navnet på testsættet.
    • id: Id'et for testsættet. Brug i Start en agentevaluering til at vælge, hvilket testsæt der skal bruges.
    • description: Beskrivelsen af testsættet.
    • state: Status for testsættet. Et brugbart testsæt er Active.
    • totalTestCases: Antallet af testcases i testsættet.

Få detaljer om agenttestsæt

  • Slutpunkt: GET https://api.powerplatform.com/copilotstudio/environments/{EnvironmentId}/bots/{BotId}/api/makerevaluation/testsets/{yourTestSetId}?api-version=2024-10-01
  • Formål: Hent oplysninger om et bestemt testsæt ved hjælp af testsæt-id'et.
  • Svar: Returnerer oplysningerne om ét element i svarmatrixen Get agent-testsæt .

Lær mere i API-referencedokumentationen til Get Test Set Details.

Start en agentevaluering

  • Slutpunkt: GET https://api.powerplatform.com/copilotstudio/environments/{EnvironmentId}/bots/{BotId}/api/makerevaluation/testsets/{yourTestSetId}/run?api-version=2024-10-01
  • Formål: Kør en evaluering for et testsæt ved hjælp af testsættets id. Du kan også inkludere en brugerprofil til godkendelse af forbindelser under evalueringskørslen. Bruges mcsConnectionId til at angive brugerprofilen. Hvis du ikke føjer en mcsConnectionId til dit opkald, kører evalueringen uden godkendelse. Se Forudsætninger for, hvordan du finder dit MCS-forbindelses-id.
  • Svar: Returnerer følgende oplysninger:
    • runId: Id'et for evalueringskørslen. Brug dette id til at hente evalueringsoplysninger.
    • lastUpdatedAt: Hvornår status for kørslen sidst blev opdateret.
    • executionState: Status for kørslen, mens evalueringen køres.
    • state: Den aktuelle tilstand af kørslen.
    • totalTestCases: Det samlede antal testcases i det testsæt, der bruges til evalueringen.
    • testCasesProcessed: Det samlede antal testcases, der blev evalueret fra den seneste opdatering.

Hent detaljer om agenttestkørsel

  • Slutpunkt: GET https://api.powerplatform.com/copilotstudio/environments/{EnvironmentId}/bots/{BotId}/api/makerevaluation/testruns/{yourTestRunId}?api-version=2024-10-01
  • Formål: Hent detaljerne for en evaluering ved hjælp af runId til din mål evalueringskørsel.
  • Svar: Returnerer følgende oplysninger:
    • id: Id'et for evalueringskørslen. Brug dette id til at hente evalueringsoplysninger.
    • environmentIdId'et for miljøet for agenten.
    • cdsBotId: Id'et for målagenten.
    • ownerId: Id'et for den bruger, der startede evalueringskørslen.
    • testSetId: Id'et for det testsæt, der bruges til evalueringen.
    • state: Status for evalueringen.
    • startTime: Da evalueringen startede.
    • endTime: Når evalueringen er fuldført (hvis den er fuldført).
    • name: Navnet på evalueringen.
    • totalTestCases: Antal testcases i alt i testsættet.
    • mcsConnectionId: Forbindelses-id'et for Copilot Studio forbindelse til den brugerprofil, der bruges til evalueringskørslen. null hvis der ikke er oprettet forbindelse til en brugerprofil.
    • testCasesResults: Listen over testcases i evalueringskørslen. Indeholder:
      • testCaseIdId'et for testcasen.
      • state: Status for fuldførelse af testcasen.
      • metricsResults: Detaljer og resultater for hver testmetode, der bruges til testcasen. Indeholder:
        • type: Testmetoden.
        • result: Det endelige resultat af testen for denne testcase. Indeholder:
          • data: Detaljerne for resultatet. De nøjagtige værdier afhænger af testmetoden. Få mere at vide i Power Platform API-dokumentation. I forbindelse med en generel kvalitetstest omfatter svaret:
            • abstention: Om agenten besvarede forespørgslen.
            • relevance: Hvorvidt svaret var relevant.
            • completeness: Om svaret er fuldført.
        • status: Statussen for testcasen.
        • errorReason: Hvis der opstod en fejl, er årsagen til fejlen.
        • aiResultReason: AI-forklaringen af resultatet af testcasen.

Hent agenttestkørsler

  • Slutpunkt: GET https://api.powerplatform.com/copilotstudio/environments/{EnvironmentId}/bots/{BotId}/api/makerevaluation/testruns?api-version=2024-10-01
  • Formål: Hent en matrix af alle tidligere kørsler.
  • Svar: Hvert element i matrixen indeholder de samme værdier som dem, der blev fundet i oplysninger om Get agent-testkørsel.