Spuštění vyhodnocení v GitHub Action (náhled)

Důležité

Položky označené (Preview) v tomto článku jsou aktuálně ve verzi Public Preview. Tato verze Preview je poskytována bez smlouvy o úrovni služeb a nedoporučujeme ji pro produkční úlohy. Některé funkce nemusí být podporované nebo můžou mít omezené možnosti. Další informace najdete v tématu Supplementální podmínky použití pro Microsoft Azure Verze Preview.

Tato GitHub Action umožňuje offline vyhodnocení Microsoft Foundry Agents v kanálech CI/CD. Zjednodušuje proces offline vyhodnocení, takže můžete identifikovat potenciální problémy a před vydáním aktualizace do produkčního prostředí provést vylepšení.

Pokud chcete tuto akci použít, zadejte datovou sadu s testovacími dotazy a seznam vyhodnocovačů. Tato akce vyvolá agenty s dotazy, spustí vyhodnocení a vygeneruje souhrnnou sestavu.

Funkce

  • Agent Evaluation: Automatizace předprodukčního posouzení agentů Microsoft Foundry v pracovním postupu CI/CD
  • Vyhodnocovače: Použijte všechny vyhodnocovače z katalogu vyhodnocovače Foundry.
  • Statistická analýza: Výsledky vyhodnocení zahrnují intervaly spolehlivosti a test statistické významnosti, aby bylo možné určit, jestli jsou změny smysluplné, a ne kvůli náhodné variaci.

Kategorie vyhodnocovače

Požadavky

Tip

Doporučený způsob ověřování je použití Microsoft Entra ID, které můžete použít k bezpečnému připojení k prostředkům Azure. Proces ověřování můžete automatizovat pomocí Azure Login GitHub Action. Další informace najdete v tématu Akce pro přihlášení do Azure pomocí OpenID Connect.

Jak nastavit vyhodnocení agenta AI

Vstup pro hodnocení AI agenta

Parametry

Jméno Požadované? Popis
Azure - koncový bod AI projektu (umělá inteligence) Ano Koncový bod vašeho projektu Microsoft Foundry. Pokud chcete tuto hodnotu najít, otevřete projekt na portálu Foundry a zkopírujte koncový bod ze stránky Přehled .
název nasazení Ano Název nasazení modelu AI Azure, který se má použít k vyhodnocení. Na portálu Foundry vyhledejte existující nasazení v části Modely a koncové body .
cesta k datům Ano Cesta k datovému souboru, který obsahuje vyhodnocovače a vstupní dotazy pro vyhodnocení
ID agentů Ano ID jednoho nebo více agentů, kteří se mají vyhodnotit ve formátu agent-name:version (například my-agent:1 nebo my-agent:1,my-agent:2). Více agentů jsou odděleni čárkami a jsou porovnáni s výsledky statistických testů.
základní-ID-agenta Ne ID základního agenta pro porovnání při vyhodnocování více agentů. Pokud není zadán, použije se první agent.

Poznámka

Pokud chcete najít ID a verzi agenta, otevřete projekt na portálu Foundry, přejděte na Agenti, vyberte svého agenta a zkopírujte ID agenta z podokna podrobností. Verze je číslo verze nasazení (například my-agent:1).

Datový soubor

Vstupním datovým souborem by měl být soubor JSON s následující strukturou:

Pole Typ Požadované? Popis
Jméno řetězec Ano Název vyhodnocovací datové sady
hodnotitelé string[] Ano Seznam názvů vyhodnocovače, které se mají použít Podívejte se na seznam dostupných vyhodnocovačů ve vašem projektu v katalogu vyhodnocovače na portálu Foundry: Sestavení hodnocení katalogu vyhodnocovačů >>.
data object[] Ano Pole vstupních objektů s query a volitelnými poli vyhodnocovačů, například ground_truth, context. Automaticky přiřazeno vyhodnocovačům; použijte data_mapping k překonfigurování.
openai_graders objekt Ne Konfigurace pro vyhodnocovače založené na OpenAI (label_model, score_model, string_check atd.).
parametry_hodnotitele objekt Ne Parametry inicializace specifické pro vyhodnocovače (například prahové hodnoty, vlastní nastavení).
mapování dat objekt Ne Mapování vlastních datových polí (automaticky generované z dat, pokud není k dispozici).

Základní ukázkový datový soubor

{
  "name": "test-data",
  "evaluators": [
    "builtin.fluency",
    "builtin.task_adherence",
    "builtin.violence"
  ],
  "data": [
    {
      "query": "Tell me about Tokyo disneyland"
    },
    {
      "query": "How do I install Python?"
    }
  ]
}

Další ukázkové datové soubory

Název_souboru Popis
dataset-tiny.json Datová sada s malým počtem testovacích dotazů a vyhodnocovačů
dataset.json Datová sada se všemi podporovanými typy vyhodnocovače a dostatečnými dotazy na výpočet intervalu spolehlivosti a statistickým testem
dataset-builtin-evaluators.json Předdefinované vyhodnocovače Foundry (například soudržnost, plynulost, relevance, uzemnění, metriky).
dataset-openai-graders.json Příklad známek založených na OpenAI (modely popisků, modely skóre, podobnost textu, kontroly řetězců).
dataset-custom-evaluators.json Příklad vlastních vyhodnocovačů s parametry vyhodnocovače
dataset-data-mapping.json Příklad mapování dat, které ukazuje, jak přepsat automatická mapování polí pomocí vlastních názvů datových sloupců.

Pracovní postup vyhodnocení agenta AI

Pokud chcete použít akci GitHub, přidejte do pracovních postupů CI/CD akci GitHub. Zadejte kritéria triggeru, například při potvrzení, a cesty k souborům pro aktivaci automatizovaných pracovních postupů.

Tip

Pokud chcete minimalizovat náklady, nespustíte hodnocení při každém potvrzení.

Tento příklad ukazuje, jak můžete spustit vyhodnocení agenta AI při porovnání různých agentů pomocí ID agenta.

name: "AI Agent Evaluation"

on:
  workflow_dispatch:
  push:
    branches:
      - main

permissions:
  id-token: write
  contents: read

jobs:
  run-action:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v4

      - name: Azure login using Federated Credentials
        uses: azure/login@v2
        with:
          client-id: ${{ vars.AZURE_CLIENT_ID }}
          tenant-id: ${{ vars.AZURE_TENANT_ID }}
          subscription-id: ${{ vars.AZURE_SUBSCRIPTION_ID }}

      - name: Run Evaluation
        uses: microsoft/ai-agent-evals@v3-beta
        with:
          # Replace placeholders with values for your Foundry Project
          azure-ai-project-endpoint: "<your-ai-project-endpoint>"
          deployment-name: "<your-deployment-name>"
          agent-ids: "<your-ai-agent-ids>"
          data-path: ${{ github.workspace }}/path/to/your/data-file

Výstup vyhodnocení agenta AI

Výsledky vyhodnocení jsou výstupem do sekce Souhrn pro každý běh vyhodnocovacích akcí GitHub pro AI v Akce v GitHub. Sestava zobrazuje hodnocení skóre pro každou metriku, intervaly spolehlivosti, a pokud vyhodnocujete více agentů, tak párové statistické srovnání, které určuje, zda jsou rozdíly smysluplné nebo v rámci náhodné odchylky.

Následující snímek obrazovky ukazuje ukázkovou sestavu, která porovnává dva agenty.

Snímek obrazovky souhrnu pracovního postupu GitHub Actions zobrazující skóre hodnocení agentů s intervaly spolehlivosti a párovým statistickým porovnáním dvou agentů.