Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
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
- Valutatori di agenti: Valutatori di processo e a livello di sistema per i flussi di lavoro degli agenti.
- Analizzatori RAG: valutare i processi end-to-end e di recupero nei sistemi RAG.
- Analizzatori di rischi e sicurezza: valutare i rischi e i problemi di sicurezza nelle risposte.
- Analizzatori per utilizzo generico: valutazione della qualità, ad esempio coerenza e fluenza.
- Classificatori basati su OpenAI: usare i classificatori OpenAI, tra cui controllo delle stringhe, somiglianza del testo, modello score/label.
- Analizzatori personalizzati: definire gli analizzatori personalizzati usando Python codice o modelli LLM-as-a-judge.
Prerequisiti
- Un progetto. Per altre informazioni, vedere Creare un progetto.
- Agente Foundry.
- L'estensione AI Agent Evaluation installata nell'organizzazione Azure DevOps.
Suggerimento
Il metodo di autenticazione consigliato viene Microsoft Entra ID tramite una connessione al servizio Azure Resource Manager. Creare una connessione del servizio
Ingressi
Parametri
| Nome | Obbligatorio? | Descrizione |
|---|---|---|
| azure-ai-project-endpoint | Sì | Endpoint del Progetto Microsoft Foundry. Per trovare questo valore, apri il progetto nel portale Foundry e copia l'endpoint dalla pagina Panoramica. |
| nome-distribuzione | Sì | 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 | Sì | Percorso del file di dati contenente gli analizzatori e le query di input per le valutazioni. |
| agent-ids | Sì | 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 | Sì | Nome del set di dati di valutazione. |
| Valutatori | string[] | Sì | 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[] | Sì | 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.