Introduktion till molnutvärdering med Microsoft Foundry SDK

Använd molnutvärderingar för att testa generativa AI-program i stor skala utan att hantera lokal beräkning. Den här artikeln konfigurerar den delade SDK-klienten och hjälper dig att välja ett arbetsflöde för fördistribution eller produktionsutvärdering.

Förutsättningar

  • Ett Foundry-projekt.

  • En Azure OpenAI-distribution med en GPT-modell som stöder chattens slutförande, till exempel gpt-5-mini.

  • Foundry-användarrollen i Foundry-projektet.

    Important

    Foundrys RBAC-roller har nyligen namnändrats. Foundry User, Foundry Owner, Foundry Account Owner och Foundry Project Manager hette tidigare Azure AI-användare, Azure AI-ägare, Azure AI-kontoägare och Azure AI Project Manager. Du kanske fortfarande ser de tidigare namnen på vissa platser medan namnbytet distribueras. Roll-ID:na och kärnbehörigheterna ändras inte av namnbytet.

  • Alla utvärderingsrollkrav finns i Konfigurera behörigheter för utvärderingsarbetsflöden.

  • Du kan också använda ditt eget lagringskonto för utvärderingsdata.

Vissa utvärderingsfunktioner har regionala begränsningar. Granska de regioner som stöds innan du börjar.

Konfigurera SDK-klienten

Installera SDK:t för ditt språk. Ange dessa delade miljövariabler:

  • AZURE_AI_PROJECT_ENDPOINT: Slutpunkten för Foundry-projektet, till exempel https://<account_name>.services.ai.azure.com/api/projects/<project_name>.
  • AZURE_AI_MODEL_DEPLOYMENT_NAME: Modellimplementeringen som används av AI-stödda utvärderare.
  • DATASET_NAME och DATASET_VERSION: Valfria värden för återanvändbara datauppsättningar.

Autentisera med DefaultAzureCredential, skapa projektklienten och hämta OpenAI-klienten som används av utvärderings-API:et.

pip install "azure-ai-projects>=2.2.0"
import os
from azure.identity import DefaultAzureCredential
from azure.ai.projects import AIProjectClient
from azure.ai.projects.models import TestingCriterionAzureAIEvaluator
from openai.types.eval_create_params import DataSourceConfigCustom
from openai.types.evals.create_eval_jsonl_run_data_source_param import (
    CreateEvalJSONLRunDataSourceParam,
    SourceFileContent,
    SourceFileContentContent,
    SourceFileID,
)

endpoint = os.environ["AZURE_AI_PROJECT_ENDPOINT"]
model_deployment_name = os.environ.get(
    "AZURE_AI_MODEL_DEPLOYMENT_NAME", ""
)
dataset_name = os.environ.get("DATASET_NAME", "")
dataset_version = os.environ.get("DATASET_VERSION", "1")

project_client = AIProjectClient(
    endpoint=endpoint,
    credential=DefaultAzureCredential(),
)
openai_client = project_client.get_openai_client()

Referens: AIProjectClient, DefaultAzureCredential

Information om hur du använder en modell som är ansluten via administratörsanslutningar som mål, domarmodell eller konversationssimulator finns i Använda administratörsanslutna modeller i molnutvärderingar.

Förstå utvärderingsarbetsflödet

En molnutvärdering har tre steg:

  1. Definiera dataformen och utvärderarna som bedömer den.
  2. Skapa utvärderingen med utvärderingsklienten.
  3. Starta en körning, avsök tills den har slutförts och hämta de poängsatta resultaten.

Molnutvärderingsresultat lagras i ditt Foundry-projekt. Du kan hämta dem via SDK:t, granska dem i portalen eller dirigera dem till Application Insights när det är anslutet.

Välj utvärderare

Utvärderare binder till fält i dina data via kolumnmappningar. Datauppsättningsarbetsflöden exponerar objektfält, medan målgenererade arbetsflöden även exponerar modellen eller agentens utdata via exempelschemat.

Granska de inbyggda utvärderarna och de anpassade utvärderarna innan du konfigurerar testkriterier.

Välj startpunkt

Utvärderingsenhet Utgångspunkt Workflow
Individuell vändning Du har JSONL- eller CSV-testdata med en fråga och ett svar. Utvärdera datauppsättningar för frågesvar
Individuell vändning Du har frågor och vill att en modell eller agent ska generera svar. Utvärdera modell- och agentsvar
Individuell vändning Du har lagrat svar eller spårningar från enskilda interaktioner med en distribuerad modell eller agent. Utvärdera distribuerade modell- och agentinteraktioner
Individuell vändning Du måste generera syntetiska frågor. Generera syntetiska frågor
Slutför konversationen Du har en datauppsättning med fullständiga konversationer. Utvärdera konversationsdatauppsättningar
Slutför konversationen Du har spårningar som samlar in fullständiga konversationer med en distribuerad modell eller agent. Utvärdera distribuerade modell- och agentkonversationer
Slutför konversationen Du måste generera och utvärdera simulerade agentkonversationer. Simulera agentkonversationer
Alla utvärderingsenheter Du behöver kontrollera statusen för, tolka, avbryta eller felsöka en körning. Hämta utvärderingsresultat

Använd AI-röd teamindelning för adversariell säkerhetstestning. Information om hur du skapar en fristående datauppsättning finns i Generera en syntetisk utvärderingsdatauppsättning.