Automatisera agentutvärderingar med Power Platform API

Copilot Studio ger skapare verktyg för att kontinuerligt utvärdera agentprestanda genom att köra automatiserade tester mot fördefinierade testuppsättningar med hjälp av rest-API:et Power Platform. Genom att använda REST-API:et kan du programmatiskt utlösa agentutvärderingar som en del av dina utvecklingsarbetsflöden, till exempel under agentuppdateringar, versionsverifiering eller regressionstestning.

Genom att automatisera utvärderingar kan du:

  • Verifiera agentkvaliteten när du har gjort ändringar
  • Köra återkommande prestandakontroller mot produktions- eller mellanlagringsagenter
  • Integrera agenttestning i CI/CD-pipelines
  • Identifiera regressioner i agentbeteende tidigt i utvecklingslivscykeln

Förutsättningar

  • Du har robot-ID och miljö-ID för målagenten.
  • En testuppsättning som skapats i Copilot Studio för målagenten.
  • En användaråtkomsttoken som utfärdats av Microsoft Entra ID (OAuth 2.0). Information om hur du hämtar token finns i Autentisering.
    • För att få åtkomsttoken, använd klient-ID:t för en appregistrering som har fått rätt omfång beviljat under Power Platform-API:et.
  • För Starta en agentutvärdering kan du lägga till ett Microsoft Studio Connector-ID i anropet som ska användas som användarprofil för utvärderingen. För att hitta din mcsConnectionId:
    1. Gå till Power Automate.
    2. Öppna sidan Anslutningar .
    3. Välj anslutningen Microsoft Copilot Studio.
    4. mcsConnectionId Kopiera från URL:en:.../connections/shared_microsoftcopilotstudio/{mcsConnectionId}/details

Översikt för att köra utvärderingar med hjälp av REST API

Följ dessa allmänna steg för att köra en utvärdering med hjälp av Power Platform-API:et:

  1. Uppfylla förutsättningarna.
  2. Leta upp och hämta testuppsättnings-ID:t för den testuppsättning som du vill använda.
  3. Kör utvärderingen.
  4. Hämta resultaten med hjälp av utvärderingskörnings-ID:t.

När begäran lyckas körs utvärderingen asynkront och ger resultat som du kan granska i Copilot Studio.

API-åtgärder för att automatisera utvärderingar

Copilot Studio stöder REST API-åtgärder som du kan använda för att programmatiskt utlösa utvärderingar mot din agent med hjälp av en befintlig testuppsättning.

Hämta agenttestuppsättningar

  • Slutpunkt:GET https://api.powerplatform.com/copilotstudio/environments/{EnvironmentId}/bots/{BotId}/api/makerevaluation/testsets?api-version=2024-10-01
  • Syfte: Hämta en matris med testuppsättnings-ID:t och annan information för en specifik agent.
  • Svar: Returnerar en lista med namnet value testuppsättningar med följande information:
    • auditInfo: Tidsstämplar och användar-ID för att skapa och ändra varje testuppsättning
    • displayName: Namnet på testsetet.
    • id: ID för testuppsättningen. Använd i Starta en agentutvärdering för att välja vilken testuppsättning som ska användas.
    • description: Beskrivningen av testsetet.
    • state: Status för testuppsättningen. En användbar testuppsättning är Active.
    • totalTestCases: Antalet testfall i testuppsättningen.

Hämta information om agenttestuppsättningen

  • Slutpunkt:GET https://api.powerplatform.com/copilotstudio/environments/{EnvironmentId}/bots/{BotId}/api/makerevaluation/testsets/{yourTestSetId}?api-version=2024-10-01
  • Syfte: Hämta information för en specifik testuppsättning med hjälp av testuppsättningens ID.
  • Svar: Returnerar information om ett objekt i svarsmatrisen Hämta agenttestuppsättningar .

Läs mer i API-referensdokumentationen för att hämta information om testuppsättningar.

Starta en agentutvärdering

  • Slutpunkt:GET https://api.powerplatform.com/copilotstudio/environments/{EnvironmentId}/bots/{BotId}/api/makerevaluation/testsets/{yourTestSetId}/run?api-version=2024-10-01
  • Syfte: Kör en utvärdering för en testuppsättning med hjälp av testuppsättningens id. Du kan också inkludera en användarprofil för att autentisera anslutningar under utvärderingskörningen. Använd mcsConnectionId för att ange användarprofilen. Om du inte lägger till ett mcsConnectionId i anropet körs utvärderingen utan autentisering. Se Förutsättningar för att hitta ditt MCS-anslutnings-ID.
  • Svar: Returnerar följande information:
    • runId: ID:t för utvärderingskörningen. Använd det här ID:t för att hämta utvärderingsinformation.
    • lastUpdatedAt: När körningens status senast uppdaterades.
    • executionState: Körningens status under utvärderingens gång.
    • state: Körningens aktuella tillstånd.
    • totalTestCases: Totalt antal testfall i testuppsättningen som används för utvärderingen.
    • testCasesProcessed: Totalt antal testfall som utvärderats från och med den senaste uppdateringen.

Hämta information om agenttestkörning

  • Slutpunkt:GET https://api.powerplatform.com/copilotstudio/environments/{EnvironmentId}/bots/{BotId}/api/makerevaluation/testruns/{yourTestRunId}?api-version=2024-10-01
  • Syfte: Hämta information om en utvärdering med hjälp av runId för din målutvärderingskörning.
  • Svar: Returnerar följande information:
    • id: ID:t för utvärderingskörningen. Använd det här ID:t för att hämta utvärderingsinformation.
    • environmentId: ID:t för agentens miljö.
    • cdsBotId: ID:t för målagenten.
    • ownerId: ID för den användare som startade utvärderingskörningen.
    • testSetId: ID för testuppsättningen som används för utvärderingen.
    • state: Förloppsstatus för utvärderingen.
    • startTime: När utvärderingen startade.
    • endTime: När utvärderingen har slutförts (om den har slutförts).
    • name: Namnet på utvärderingen.
    • totalTestCases: Totalt antal testfall i testsatsen.
    • mcsConnectionId: Anslutnings-ID för Copilot Studio-anslutningen av användarprofilen som används för utvärderingskörningen. null om ingen användarprofil är ansluten.
    • testCasesResults: Listan över testfall i utvärderingskörningen. Innehåller:
      • testCaseId: ID för testfallet.
      • state: Testfallets slutförandestatus.
      • metricsResults: Information och resultat för varje testmetod som används för testfallet. Innehåller:
        • type: Testmetoden.
        • result: Det slutliga resultatet av testet för det här testfallet. Innehåller:
          • data: Information om resultatet. Exakta värden beror på testmetoden. Läs mer i power platform-API-dokumenten. För ett allmänt kvalitetstest innehåller svaret:
            • abstention: Om agenten svarade på frågan.
            • relevance: Om svaret var relevant.
            • completeness: Om svaret är klart.
        • status: Status för testfallet.
        • errorReason: Om det uppstod ett fel, orsaken till felet.
        • aiResultReason: AI-förklaringen av testfallets resultat.

Hämta agenttestkörningar

  • Slutpunkt:GET https://api.powerplatform.com/copilotstudio/environments/{EnvironmentId}/bots/{BotId}/api/makerevaluation/testruns?api-version=2024-10-01
  • Syfte: Hämta en matris med alla tidigare körningar.
  • Svar: Varje objekt i matrisen innehåller samma värden som i Hämta agenttestkörningsinformation.