Come eseguire una valutazione in Azure DevOps (anteprima)

Importante

Gli elementi contrassegnati (anteprima) in questo articolo sono attualmente in anteprima pubblica. Questa anteprima viene fornita senza un contratto di servizio e non è consigliabile per i carichi di lavoro di produzione. Alcune funzionalità potrebbero non essere supportate o potrebbero avere funzionalità limitate. Per altre informazioni, vedere Condizioni supplementari per l'utilizzo delle anteprime di Microsoft Azure.

Questa estensione Azure DevOps abilita all'interno delle pipeline CI/CD la valutazione offline di Agenti Foundry di Microsoft. Semplifica il processo di valutazione offline, in modo da poter identificare potenziali problemi e apportare miglioramenti prima di rilasciare un aggiornamento all'ambiente di produzione.

Per usare questa estensione, fornire un set di dati con query di test e un elenco di analizzatori. Questa attività richiama gli agenti con le query, li valuta e genera un report di riepilogo.

Caratteristiche

  • Agent Evaluation: Automatizza la valutazione pre-produzione degli agenti della Microsoft Foundry nel flusso di lavoro CI/CD.
  • Valutatori: usare qualsiasi valutatore del catalogo dei valutatori di Foundry.
  • Analisi statistica: i risultati della valutazione includono intervalli di confidenza e test di significatività statistica per determinare se le modifiche sono significative e non a causa di variazioni casuali.

Categorie di analizzatori

Prerequisiti

Suggerimento

Il metodo di autenticazione consigliato viene Microsoft Entra ID tramite una connessione al servizio Azure Resource Manager. Creare una connessione del servizio nel tuo progetto Azure DevOps, e poi farvi riferimento nella pipeline usando l'attività prima di .

Ingressi

Parametri

Nome Obbligatorio? Descrizione
azure-ai-project-endpoint Endpoint del Progetto Microsoft Foundry. Per trovare questo valore, apri il progetto nel portale Foundry e copia l'endpoint dalla pagina Panoramica.
nome-distribuzione Nome di una distribuzione del modello di intelligenza artificiale Azure da usare per la valutazione. Trovare le distribuzioni esistenti in Modelli + endpoint nel portale Foundry.
percorso dati Percorso del file di dati contenente gli analizzatori e le query di input per le valutazioni.
agent-ids ID di uno o più agenti da valutare in formato agent-name:version (ad esempio, my-agent:1 o my-agent:1,my-agent:2). Più agenti sono separati da virgole e confrontati con i risultati dei test statistici.
identificatore-agente-di-base No ID dell'agente di base da confrontare durante la valutazione di più agenti. Se non specificato, viene usato il primo agente.

Nota

Per trovare l'ID agente e la versione, aprire il progetto nel portale foundry, passare ad Agenti, selezionare l'agente e copiare l'ID agente dal riquadro dei dettagli. La versione è il numero di versione della distribuzione , ad esempio my-agent:1.

File di dati

Il file di dati di input deve essere un file JSON con la struttura seguente:

Campo Digitare Obbligatorio? Descrizione
Nome Stringa Nome del set di dati di valutazione.
Valutatori string[] Elenco dei nomi dei valutatori da usare. Vedi l'elenco dei valutatori disponibili nel catalogo dei valutatori del tuo progetto nel portale di Foundry: Catalogo dei valutatori > di Compilazione >.
Dati oggetto[] Matrice di oggetti di input con query campi dell'analizzatore facoltativi come ground_truth, context. Mappatura automatica ai valutatori; utilizzare data_mapping per eseguire l'override.
openai_graders Oggetto No Configurazione per analizzatori basati su OpenAI (label_model, score_model, string_check e così via).
parametri_valutatore Oggetto No Parametri di inizializzazione specifici dell'analizzatore (ad esempio, soglie, impostazioni personalizzate).
mappatura dei dati Oggetto No Mapping dei campi di dati personalizzati (generati automaticamente dai dati, se non forniti).

File di dati di esempio di base


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

File di dati di esempio aggiuntivi

Nome del file Descrizione
dataset-tiny.json Set di dati con un numero ridotto di query e analizzatori di test.
dataset.json Set di dati con tutti i tipi di analizzatori supportati e query sufficienti per il calcolo dell'intervallo di confidenza e il test statistico.
dataset-builtin-evaluators.json Esempio di valutatori predefiniti dell'officina (ad esempio coerenza, fluenza linguistica, pertinenza, solidità, metriche).
dataset-openai-graders.json Esempio di classificatori basati su OpenAI (modelli di etichetta, modelli di punteggio, somiglianza del testo, controlli stringa).
dataset-custom-evaluators.json Esempio di analizzatori personalizzati con parametri dell'analizzatore.
dataset-data-mapping.json Esempio di mapping dei dati che illustra come sostituire i mapping automatici dei campi con nomi di colonna di dati personalizzati.

Pipeline di esempio

Per usare questa estensione, aggiungere l'attività AIAgentEvaluation@2 alla pipeline Azure. L'esempio seguente mostra una pipeline completa che esegue l'autenticazione usando una connessione al servizio Azure Resource Manager e valuta un agente.

steps:
  - task: AIAgentEvaluation@2
    displayName: "Evaluate AI Agents"
    inputs:
      azure-ai-project-endpoint: "$(AzureAIProjectEndpoint)"
      deployment-name: "$(DeploymentName)"
      data-path: "$(System.DefaultWorkingDirectory)/path/to/your/dataset.json"
      agent-ids: "$(AgentIds)"

Risultati e output di valutazione

I risultati della valutazione sono visualizzati nel riepilogo della pipeline Azure DevOps. Il report mostra i punteggi di valutazione per ogni metrica, intervalli di confidenza e, quando si valutano più agenti, un confronto statistico pairwise che indica se le differenze sono significative o all'interno di variazioni casuali.

Lo screenshot seguente mostra un report di esempio che confronta due agenti.

Screenshot del riepilogo della pipeline di Azure DevOps che mostra i punteggi di valutazione degli agenti con intervalli di confidenza e confronto statistico a coppie per due agenti.