Monitoraggio dei modelli per applicazioni di intelligenza artificiale generativa (anteprima)
Il monitoraggio dei modelli nell'ambiente di produzione è una parte essenziale del ciclo di vita dell'IA. Le modifiche apportate ai dati e al comportamento dei consumatori possono influenzare l'applicazione di intelligenza artificiale generativa nel tempo, portando a sistemi obsoleti che influiscono negativamente sui risultati aziendali ed espongono le organizzazioni a rischi di conformità, economici e di reputazione.
Importante
Il monitoraggio dei modelli per le applicazioni di intelligenza artificiale generativa è attualmente disponibile in anteprima pubblica. Queste anteprime vengono messe a disposizione senza contratto di servizio e non sono consigliate per i carichi di lavoro di produzione. Alcune funzionalità potrebbero non essere supportate o potrebbero presentare funzionalità limitate. Per altre informazioni, vedere le Condizioni supplementari per l'uso delle anteprime di Microsoft Azure.
Il monitoraggio dei modelli di Azure Machine Learning per le applicazioni di intelligenza artificiale generativa semplifica il monitoraggio delle applicazioni LLM nell'ambiente di produzione per garantire la sicurezza e la qualità in base a una cadenza specifica per garantire di ottenere un impatto aziendale massimo. Il monitoraggio consente infine di mantenere la qualità e la sicurezza delle applicazioni di intelligenza artificiale generativa. Le funzionalità e le integrazioni includono:
- Raccogliere dati di produzione usando l'Agente di raccolta dati del modello.
- Metriche di valutazione dell'intelligenza artificiale responsabile, tra cui radicamento, coerenza, scorrevolezza, pertinenza e somiglianza, che sono interoperabili con le Metriche di valutazione del prompt flow di Azure Machine Learning.
- Possibilità di configurare avvisi per le violazioni in base agli obiettivi dell'organizzazione ed eseguire il monitoraggio su base ricorrente
- Usare i risultati in un dashboard avanzato all'interno di un'area di lavoro nello studio di Azure Machine Learning.
- Integrazione con le metriche di valutazione del prompt flow di Azure Machine Learning, l'analisi dei dati di produzione raccolti per fornire avvisi tempestivi e la visualizzazione delle metriche nel tempo.
Per i concetti di base relativi al monitoraggio complessivo dei modelli, vedere Monitoraggio dei modelli con Azure Machine Learning (anteprima). Questo articolo illustra come monitorare un'applicazione di intelligenza artificiale generativa supportata da un endpoint online gestito. I passaggi da eseguire sono:
- Configurare i prerequisiti
- Creare il monitoraggio
- Confermare lo stato di monitoraggio
- Utilizzare i risultati del monitoraggio
Metriche di valutazione
Le metriche vengono generate dai modelli linguistici di GPT all'avanguardia seguenti, configurati con istruzioni di valutazione specifiche (modelli di richiesta) che fungono da modelli di analizzatore per le attività da sequenza a sequenza. Questa tecnica ha mostrato risultati empirici forti e una correlazione elevata con la capacità di giudizio umana rispetto alle metriche di valutazione di intelligenza artificiale generativa standard. Per altre informazioni sulla valutazione del prompt flow, vedere Inviare test in blocco e valutare un flusso (anteprima).
Questi modelli di GPT sono supportati e verranno configurati come risorsa di OpenAI di Azure:
- GPT-3.5 Turbo
- GPT-4
- GPT-4-32k
Sono supportate le metriche seguenti. Per informazioni più dettagliate su ogni metrica, vedere Descrizioni e casi d'uso delle metriche di valutazione del monitoraggio
- Radicamento: valuta il grado di allineamento delle risposte generate dal modello con le informazioni dell'origine di input.
- Pertinenza: valuta la misura in cui le risposte generate dal modello sono pertinenti e direttamente correlate alle domande indicate.
- Coerenza: valuta il livello in cui il modello linguistico è in grado di produrre flussi di output senza problemi, ha una scorrevolezza naturale ed è simile al linguaggio umano.
- Scorrevolezza: valuta la competenza linguistica della risposta stimata di un'intelligenza artificiale generativa. Valuta il livello di conformità del testo generato alle regole grammaticali, alle strutture sintattiche e all'uso appropriato del vocabolario, in modo da ottenere risposte linguisticamente corrette e naturali.
- Somiglianza: valuta la somiglianza tra una frase relativa a una verità di base (o un documento) e la frase di stima generata da un modello di intelligenza artificiale.
Requisiti di configurazione delle metriche
Per misurare la sicurezza e la qualità della generazione, sono necessari gli input seguenti (nomi delle colonne di dati):
- Testo della richiesta: la richiesta originale specificata (nota anche come "input" o "domanda")
- Testo di completamento: completamento finale dalla chiamata API restituita (noto anche come "output" o "risposta")
- Testo del contesto: tutti i dati di contesto inviati alla chiamata API, insieme alla richiesta originale. Se ad esempio si spera di ottenere risultati di ricerca solo da determinate fonti/siti Web informativi certificati, è possibile definirli nei passaggi di valutazione. Si tratta di un passaggio facoltativo che può essere configurato tramite il prompt flow.
- Testo di verità di base: il testo definito dall'utente come "origine della verità" (facoltativo)
I parametri configurati nell'asset di dati determinano le metriche che è possibile produrre, in base a questa tabella:
Metric | Richiesta | Completion | Contesto | Verità di base |
---|---|---|---|---|
Coerenza | Richiesto | Richiesto | - | - |
Scorrevolezza | Richiesto | Richiesto | - | - |
Allineamento | Richiesto | Obbligatorio | Richiesto | - |
Pertinenza | Richiesto | Obbligatorio | Richiesto | - |
Similarity | Richiesto | Obbligatorio | - | Richiesto |
Prerequisiti
- Risorsa di OpenAI di Azure: è necessario creare una risorsa di OpenAI di Azure con una quota sufficiente. Questa risorsa viene usata come endpoint di valutazione.
- identità gestita: creare un'identità gestita assegnata dall'utente e collegarla all'area di lavoro usando le indicazioni riportate in Collegare un'identità gestita assegnata dall'utente usando l'interfaccia della riga di comando v2 con accesso al ruolo sufficiente, come definito nel passaggio successivo.
- Accesso al ruolo: per assegnare un ruolo con le autorizzazioni necessarie, occorre avere l'autorizzazione Proprietario o Microsoft.Authorization/roleAssignments/write per la risorsa. L'aggiornamento delle connessioni e delle autorizzazioni può richiedere alcuni minuti. Questi ruoli aggiuntivi devono essere assegnati all'identità gestita assegnata dall'utente:
- Risorsa: area di lavoro
- Ruolo: Scienziato dei dati di Azure Machine Learning
- Connessione all'area di lavoro: seguendo queste indicazioni, si usa un'identità gestita che rappresenta le credenziali per l'endpoint di OpenAI di Azure usato per calcolare le metriche di monitoraggio. NON eliminare la connessione dopo che è stata usata nel flusso.
- Versione API: 2023-03-15-preview
- Distribuzione del prompt flow: Creare un runtime del prompt flow seguendo queste indicazioni, eseguire il flusso e assicurarsi che la distribuzione sia configurata usando questo articolo come guida
- Input e output del flusso: è necessario assegnare un nome appropriato agli output del flusso e ricordare questi nomi di colonna durante la creazione del monitoraggio. In questo articolo viene usato quanto segue:
- Input (obbligatorio): "prompt"
- Output (obbligatorio): "completion"
- Output (facoltativo): "context" | "ground truth"
- Raccolta dati: in "Distribuzione" (passaggio 2 della distribuzione guidata del prompt flow) l'interruttore "raccolta dati di inferenza" deve essere abilitato usando l'Agente di raccolta dati del modello
- Output: in Output (passaggio 3 della distribuzione guidata del prompt flow) verificare di avere selezionato gli output obbligatori elencati sopra, ad esempio completion | context | ground_truth, che soddisfano i requisiti di configurazione delle metriche
- Input e output del flusso: è necessario assegnare un nome appropriato agli output del flusso e ricordare questi nomi di colonna durante la creazione del monitoraggio. In questo articolo viene usato quanto segue:
Nota
Se l'istanza di calcolo si trova dietro una rete virtuale, vedere Isolamento di rete nel prompt flow.
Creare il monitoraggio
Creare il monitoraggio nella pagina panoramica del monitoraggio
Configurare le impostazioni di monitoraggio di base
Nella creazione guidata del monitoraggio modificare tipo di attività del modello in Richiesta e completamento, come illustrato da (A) nello screenshot.
Configurare l'asset di dati
Se è stato usato l'Agente di raccolta dati del modello, selezionare i due asset di dati (input e output).
Selezionare i segnali di monitoraggio
- Configurare la connessione all'area di lavoro (A) nello screenshot.
- Immettere il nome di distribuzione dell'analizzatore di OpenAI di Azure (B).
- (Facoltativo) Unire gli input e gli output dei dati di produzione: gli input e gli output del modello di produzione vengono uniti automaticamente dal servizio di monitoraggio (C). Se necessario, è possibile personalizzare questa operazione, ma non è necessaria alcuna azione. Per impostazione predefinita, la colonna di join è correlationid.
- (Facoltativo) Configurare le soglie delle metriche: un punteggio accettabile per istanza è fisso a 3/5. È possibile modificare la percentuale di esito positivo complessiva accettabile specificando un valore compreso nell'intervallo [1,99] %
Immettere manualmente i nomi delle colonne dal prompt flow (E). I nomi standard sono ("prompt" | "completion" | "context" | "ground_truth") ma è possibile configurarli in base agli asset di dati specifici.
(Facoltativo) Impostare la frequenza di campionamento (F)
Dopo la configurazione, il segnale non visualizzerà più un avviso.
Configurare le notifiche
Non è necessaria alcuna azione. Se necessario, è possibile configurare più destinatari.
Verificare la configurazione del segnale di monitoraggio
Se configurato correttamente, il monitoraggio dovrebbe essere simile al seguente:
Confermare lo stato di monitoraggio
Se è stato configurato correttamente, il processo della pipeline di monitoraggio mostra quanto segue:
Utilizzare i risultati
Pagina di panoramica del monitoraggio
La panoramica del monitoraggio offre una panoramica delle prestazioni del segnale. Per altre informazioni, è possibile accedere alla pagina dei dettagli del segnale.
Pagina dei dettagli del segnale
La pagina dei dettagli del segnale consente di visualizzare le metriche nel tempo (A) e visualizzare gli istogrammi della distribuzione (B).
Risolvere gli avvisi
È possibile regolare solo le soglie dei segnali. Il punteggio accettabile è fisso a 3/5 ed è possibile modificare solo il campo "percentuale complessiva accettabile di esito positivo".