Valutare le prestazioni del modello
La valutazione del modello distribuito garantisce che soddisfi gli standard di qualità, fornisca risposte accurate e migliori continuamente nel tempo. Il portale di Microsoft Foundry offre più approcci alla valutazione, dal test manuale alle metriche automatizzate e ai flussi di valutazione completi.
Perché valutare i modelli
La valutazione svolge diversi scopi critici nello sviluppo di applicazioni di intelligenza artificiale generative:
La garanzia di qualità identifica i problemi e garantisce che il modello fornisca risposte accurate e pertinenti. L'individuazione dei problemi durante la valutazione anziché la produzione protegge gli utenti e la reputazione dell'organizzazione.
La soddisfazione degli utenti migliora quando i modelli offrono in modo coerente risposte utili e appropriate. La valutazione consente di comprendere in che modo gli utenti sperimentano l'applicazione e dove i miglioramenti hanno un impatto maggiore.
Il miglioramento continuo deriva dall'analisi dei risultati della valutazione per identificare le opportunità di miglioramento. La valutazione regolare man mano che si aggiornano i prompt, si aggiungono funzionalità o si riaddestrano i modelli garantisce una qualità continua.
La verifica di conformità e sicurezza conferma che il modello rispetta i criteri, evita la generazione di contenuti dannosi e rispetta i requisiti di privacy e protezione dei dati degli utenti.
Approcci di valutazione manuali
La valutazione manuale coinvolge revisori umani che valutano le risposte del modello. Sebbene richieda molto tempo, la valutazione manuale fornisce informazioni che le metriche automatizzate non possono catturare.
I test interattivi nel playground consentono di esplorare il comportamento del modello in modo qualitativo. Si immettono richieste diverse, si osservano le risposte e si segnalino problemi come informazioni non corrette, tono inappropriato o mancato rispetto delle istruzioni. Questo test esplorativo consente di comprendere i punti di forza e le limitazioni di un modello.
Per ottimizzare la progettazione dell'applicazione, è possibile testare i modelli affiancati nel playground, sincronizzando le istruzioni di sistema e le richieste per confrontare le risposte.
La revisione strutturata implica la creazione di un set di test case che rappresentano i casi d'uso dell'applicazione. Gli analizzatori umani valutano le risposte in base a criteri come:
- Pertinenza: la risposta risolve la domanda o la richiesta?
- Informativa: fornisce informazioni sufficienti e utili?
- Engagement: la risposta è interessante e adeguatamente conversazionale?
- Accuratezza: i fatti e le affermazioni sono corretti?
- Sicurezza: la risposta evita contenuti dannosi, distorti o inappropriati?
Gli analizzatori usano in genere scale di classificazione (ad esempio 1-5) per ogni criterio. Le valutazioni aggregate in più test case forniscono misure quantitative della qualità complessiva.
Gli studi utente raccolgono feedback da utenti effettivi o rappresentativi che interagiscono con l'applicazione. I commenti e i suggerimenti degli utenti rivelano problemi reali che si potrebbero perdere nei test controllati, ad esempio formulazioni confuse, contesto mancante o aspettative non soddisfatte.
La valutazione manuale integra approcci automatizzati acquisendo aspetti di qualità soggettivi come la soddisfazione dell'utente, l'adeguatezza contestuale e l'allineamento del marchio che le metriche da sole non possono misurare.
Metriche di valutazione automatizzate
La valutazione automatizzata usa metriche standard per valutare automaticamente gli output del modello. Queste valutazioni vengono ridimensionate in modo efficiente e forniscono misurazioni coerenti e oggettive.
Il portale di Microsoft Foundry supporta diverse categorie di metriche di valutazione, tra cui:
Le metriche di qualità della generazione valutano la qualità complessiva della risposta:
- Correttezza contestuale: determina se le risposte sono basate sul contesto fornito anziché sulla speculazione. Groundedness Pro offre una valutazione binaria (fondato o non fondato) utile per i requisiti di accuratezza fattuale.
- Rilevanza: misura se le risposte rispondono alla domanda o alla richiesta dell'utente in modo appropriato.
- Coerenza: valuta se le risposte vengono propagate logicamente e mantengono idee coerenti.
- Fluency: valuta la correttezza linguistica e la qualità del linguaggio naturale.
Le metriche relative ai rischi e alla sicurezza identificano il potenziale contenuto dannoso:
- Contenuti sull'autolesionismo: rileva le risposte che parlano o incoraggiano l'autolesionismo
- Contenuto odioso e ingiusto: identifica pregiudizi, discriminazione o dichiarazioni odiose
- Contenuto violento: contrassegna le risposte contenenti o promuovere la violenza
- Contenuto sessuale: rileva contenuti sessuali inappropriati
- Materiale protetto: identifica il potenziale copyright o la riproduzione di contenuti proprietari
- Attacco indiretto (jailbreak): valuta la vulnerabilità ai tentativi di manipolazione
Per le metriche di danno al contenuto, i risultati vengono aggregati come percentuale di difetti, ovvero la percentuale di risposte che superano una soglia di gravità (in genere media). Per il materiale protetto e l'attacco indiretto, la percentuale di difetti viene calcolata come (true instances / total instances) × 100.
Quando si usa la valutazione assistita dall'intelligenza artificiale, si specifica un modello GPT per eseguire la valutazione. Questo modello di analizzatore analizza le risposte del modello distribuito e assegna i punteggi in base ai criteri selezionati.
Metriche di elaborazione del linguaggio naturale
Le metriche NLP forniscono una valutazione matematica senza richiedere un modello di analizzatore. Queste metriche richiedono spesso dati di verità sul terreno, ovvero risposte previste o corrette per il confronto.
F1-score misura il rapporto tra le parole condivise tra le risposte generate e la verità di base, bilanciando la precisione (evitando parole non corrette) e il richiamo (includendo le parole importanti). Il punteggio F1 è utile per attività come la classificazione del testo e il recupero delle informazioni.
BLEU (Bilingual Evaluation Understudy) confronta n-grammi (sequenze di parole) tra testi generati e di riferimento, comunemente usati per la valutazione della traduzione automatica.
METEOR (metrica per la valutazione della traduzione con ordinamento esplicito) estende BLEU tenendo conto di sinonimi, derivazione e parafrasamento, consentendo un confronto più flessibile.
ROUGE (Sostituto incentrato sul richiamo per la valutazione della sintesi) sottolinea il richiamo rispetto alla precisione, rendendolo particolarmente utile per le attività di riepilogo in cui la copertura dei punti chiave è più importante rispetto all'evitare parole superflue.
GLEU (Google-BLEU) è una variante di BLEU progettata per la valutazione a livello di frase.
Le metriche NLP funzionano bene quando si hanno risposte definitive o testi di riferimento corretti. Sono meno adatti per la generazione aperta in cui esistono molte risposte valide.
Creare valutazioni complete
La funzionalità di valutazione del portale di Microsoft Foundry consente di eseguire valutazioni sistematiche usando set di dati di test e più metriche contemporaneamente.
È possibile basare la valutazione su uno dei seguenti elementi:
- Modello: valutare un modello distribuito con richieste specificate. Il sistema genera output durante la valutazione.
- Agente: valutare le risposte di un agente con richieste definite dall'utente.
- Set di dati: valutare gli output pregenerati già presenti nel set di dati di test.
Quando si valuta un modello o un agente, è necessario un set di dati per fornire input per la valutazione. Si dispone di tre opzioni:
- Carica nuovo set di dati: specificare un file CSV o JSONL contenente test case dalla memoria locale.
- Usare il set di dati esistente: selezionare dai set di dati caricati in precedenza nel project.
- Genera set di dati sintetici: se mancano dati di test, il sistema può generare dati di esempio in base a una descrizione dell'argomento specificata. Specificare la risorsa per generare dati, il numero di righe e una richiesta che descrive i dati desiderati. È anche possibile caricare file per migliorare la pertinenza per l'attività specifica.
Per la valutazione del set di dati in cui gli output vengono pregenerati, selezionare o caricare il set di dati contenente sia input che risposte generate dal modello.
Dopo aver configurato le metriche da calcolare, i mapping dei campi per i dati di valutazione e la richiesta di sistema per il modello; è possibile avviare il processo di valutazione, che può richiedere del tempo per l'esecuzione asincrona, elaborando ogni riga nel set di dati di test rispetto alle metriche selezionate.
Esaminare i risultati della valutazione
Al termine della valutazione, i risultati mostrano i punteggi aggregati per le metriche selezionate e i dettagli di ogni richiesta di test.
Esplora la libreria del valutatore
La libreria dell'analizzatore fornisce una posizione centralizzata per visualizzare e gestire tutti gli analizzatori disponibili. Accedi dalla pagina Evaluation del progetto selezionando la scheda biblioteca dell'Evaluator.
Nella libreria dell'analizzatore è possibile:
- Visualizzare gli analizzatori curati da Microsoft per qualità, sicurezza e prestazioni
- Esaminare i dettagli dell'analizzatore, inclusi nome, descrizione, parametri e file associati
- Esaminare le richieste di annotazione per gli analizzatori di qualità per comprendere come vengono calcolate le metriche
- Controllare le definizioni e i livelli di gravità per gli analizzatori di sicurezza
- Gestire gli analizzatori personalizzati creati per scenari specifici
La libreria supporta la gestione delle versioni, consentendo di confrontare versioni diverse, ripristinare le versioni precedenti, se necessario, e collaborare con altri utenti sugli analizzatori personalizzati.
Iterare in base alla valutazione
I risultati della valutazione informano i passaggi successivi:
Quando i punteggi sono inferiori a quelli richiesti, prendere in considerazione:
- Ingegneria del prompt: perfezionamento delle istruzioni e dei messaggi di sistema
- Modelli diversi: tentativi di modelli ottimizzati per il caso d'uso
- Integrazione RAG: aggiunta di funzionalità di recupero per basare le risposte sui tuoi dati
- Sintonizzazione fine: addestramento del modello nel tuo dominio specifico (se supportato)
Ognuno di questi passaggi può aumentare la complessità (e talvolta i costi), quindi prendere in considerazione questo aspetto quando si apportano miglioramenti alla pianificazione.
Quando le metriche di sicurezza mostrano problemi:
- Filtri di contenuto: Implementazione dei servizi di Content Safety di Azure AI
- Rinforzo dei prompt: aggiunta di istruzioni di sicurezza ai messaggi di sistema
- Convalida dell'output: controllo delle risposte prima della visualizzazione agli utenti
La valutazione regolare man mano che si apportano modifiche tiene traccia dei miglioramenti e garantisce che la qualità non regredisca. Stabilire i benchmark di valutazione all'inizio dello sviluppo, quindi rieseguire le valutazioni dopo le modifiche per misurare l'impatto in modo obiettivo.
Combinando test manuali, metriche automatizzate e flussi di valutazione completi, si garantisce che il modello funzioni correttamente, soddisfi in modo sicuro i requisiti di qualità dell'applicazione.