Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Accelera lo sviluppo dell'intelligenza artificiale generativa utilizzando MLFlow gestito su Amazon AI SageMaker
MLFlow completamente gestito su Amazon SageMaker AI ti consente di accelerare l'IA generativa semplificando il monitoraggio degli esperimenti e il monitoraggio delle prestazioni di modelli e applicazioni di intelligenza artificiale utilizzando un unico strumento.
Sviluppo di intelligenza artificiale generativa con MLFlow
Con la crescente accelerazione dello sviluppo dell’IA generativa, i clienti di tutti i settori hanno bisogno di funzionalità per tracciare gli esperimenti, osservare il comportamento e valutare le prestazioni dei modelli e delle applicazioni di intelligenza artificiale. I data scientist e gli sviluppatori non dispongono di strumenti per analizzare le prestazioni dei modelli e delle applicazioni IA dalla sperimentazione alla produzione e questo rende difficile individuare le cause principali e risolvere i problemi. I team dedicano più tempo all’integrazione degli strumenti che al miglioramento dei modelli o delle applicazioni di IA generativa.
L’addestramento o il fine-tuning dell’IA generativa e del machine learning sono un processo iterativo che richiede la sperimentazione di varie combinazioni di dati, algoritmi e parametri, osservandone al tempo stesso l’impatto sulla precisione del modello. La natura iterativa della sperimentazione si traduce in numerose esecuzioni e versioni di addestramento dei modelli e questo complica il tracciamento dei modelli con le prestazioni migliori e delle relative configurazioni. La complessità della gestione e del confronto delle esecuzioni di addestramento iterative aumenta con GenAI, in cui la sperimentazione implica non solo il fine-tuning dei modelli, ma anche l’esplorazione di risultati creativi e diversificati. I ricercatori devono modificare gli iperparametri, selezionare architetture di modello adatte e gestire diversi set di dati per ottimizzare sia la qualità che la creatività dei contenuti generati. La valutazione dei modelli di IA generativa richiede metriche sia quantitative che qualitative, aggiungendo un ulteriore livello di complessità al processo di sperimentazione. Le funzionalità di tracciamento della sperimentazione in MLFlow su Amazon SageMaker AI ti consentono di tracciare, organizzare, visualizzare, analizzare e confrontare la sperimentazione ML iterativa per ottenere informazioni comparative e registrare e distribuire i modelli con le migliori prestazioni.
Le funzionalità di tracciamento di MLFlow completamente gestite ti consentono di registrare input, output e metadati in ogni fase di un'applicazione AI generativa, aiutandoti a identificare rapidamente l'origine di bug o comportamenti imprevisti. Conservando i record di ogni modello e versione dell'applicazione, MLFlow completamente gestito offre la tracciabilità per collegare le risposte AI ai componenti di origine, consentendoti di tracciare rapidamente un problema direttamente nel codice, nei dati o nei parametri specifici che lo hanno generato. Ciò riduce drasticamente i tempi di risoluzione dei problemi e consente ai team di concentrarsi maggiormente sull’innovazione.
Integrazioni di MLflow
Utilizza MLflow durante l’addestramento e la valutazione dei modelli per individuare i candidati migliori per il tuo caso d’uso. Puoi confrontare le prestazioni, i parametri e le metriche del modello tra gli esperimenti nell'interfaccia utente MLFlow, tenere traccia dei tuoi modelli migliori nel registro dei modelli MLFlow, registrarli automaticamente come modello di SageMaker intelligenza artificiale e distribuire i modelli registrati sugli endpoint SageMaker AI.
Amazon SageMaker AI con MLFlow
Usa MLFlow per tracciare e gestire la fase di sperimentazione del ciclo di vita dell'apprendimento automatico (ML) con AWS integrazioni per lo sviluppo, la gestione, l'implementazione e il monitoraggio dei modelli.
Amazon SageMaker Studio
Crea e gestisci server di tracciamento, esegui notebook per creare esperimenti e accedi all’interfaccia utente di MLflow per visualizzare e confrontare le esecuzioni degli esperimenti in Studio.
SageMaker Registro dei modelli
Gestisci le versioni dei modelli e i modelli di catalogo per la produzione registrando automaticamente i modelli da MLFlow Model Registry a SageMaker Model Registry. Per ulteriori informazioni, consulta Registra automaticamente i modelli SageMaker AI con Model Registry SageMaker.
SageMaker Inferenza AI
Prepara i tuoi modelli migliori per l'implementazione su un endpoint di SageMaker intelligenza artificiale utilizzando. ModelBuilder Per ulteriori informazioni, consulta Implementazione dei modelli MLflow con ModelBuilder.
AWS Identity and Access Management
Configurazione dell’accesso a MLflow utilizzando il controllo degli accessi basato sui ruoli (Role-Based Access Control, RBAC) con IAM. Scrivi policy di identità IAM per autorizzare le API MLflow che possono essere chiamate da un client di un server di tracciamento MLflow. Tutte le REST API di MLflow sono rappresentate come azioni IAM nel prefisso del servizio sagemaker-mlflow. Per ulteriori informazioni, consulta Impostazione delle autorizzazioni IAM per MLflow..
AWS CloudTrail
Visualizza i log in AWS CloudTrail per aiutarti a abilitare il controllo operativo e dei rischi, la governance e la conformità del tuo account. AWS Per ulteriori informazioni, consulta AWS CloudTrail log.
Amazon EventBridge
Automatizza la revisione del modello e il ciclo di vita della distribuzione utilizzando gli eventi MLFlow acquisiti da Amazon. EventBridge Per ulteriori informazioni, consulta EventBridge Eventi Amazon.
Supportata Regioni AWS
Server di tracciamento MLFlow
I server di tracciamento MLFlow sono generalmente disponibili in tutte le regioni AWS commerciali in cui è disponibile Amazon SageMaker Studio, ad eccezione delle regioni della Cina. I server di tracciamento MLFlow sono disponibili solo AWS CLI nella regione Europa (Zurigo), nella regione Asia Pacifico (Hyderabad), nella regione Asia Pacifico (Melbourne) e nella regione Canada occidentale (Calgary).
I server di tracciamento vengono avviati in un’unica zona di disponibilità all’interno della Regione specificata.
App MLFlow
Le app MLFlow sono disponibili nelle seguenti versioni: Regioni AWS
Stati Uniti orientali (Virginia settentrionale)
Stati Uniti orientali (Ohio)
Regione Stati Uniti occidentali (California settentrionale)
US West (Oregon) Region
Asia Pacific (Mumbai) Region
Regione Asia Pacifico (Seoul)
Regione Asia Pacifico (Singapore)
Regione Asia Pacifico (Sydney)
Regione Asia Pacifico (Tokyo)
Regione Canada (Centrale)
Regione Europa (Francoforte)
Regione Europa (Irlanda)
Regione Europa (Londra)
Regione Europa (Parigi)
Regione Europa (Stoccolma)
Regione Sud America (San Paolo)
Come funziona
Un server di tracciamento MLflow include tre componenti principali: calcolo, archiviazione dei metadati di backend e archiviazione degli artefatti. Il calcolo che ospita il server di tracciamento e l'archiviazione dei metadati di backend è ospitato in modo sicuro nell'account del servizio AI. SageMaker Lo storage degli artefatti risiede in un bucket Amazon S3 del tuo account. AWS
Un server di tracciamento dispone di un ARN. Puoi utilizzare tale ARN per connettere l’MLflow SDK al tuo server di tracciamento e iniziare a registrare log per gli addestramenti su MLflow.
Per ulteriori informazioni sui seguenti concetti chiave:
Archiviazione dei metadati nel backend
Quando crei un server di tracciamento MLFlow, un archivio di backend
Archiviazione degli artefatti
Per fornire a MLflow uno strumento di archiviazione persistente per i metadati per ogni esecuzione, come pesi dei modelli, immagini, file di modello e file di dati per le esecuzioni degli esperimenti, devi creare un archivio di artefatti utilizzando Amazon S3. L'artifact store deve essere configurato all'interno del tuo AWS account e devi fornire esplicitamente a MLFlow l'accesso ad Amazon S3 per poter accedere al tuo artifact store. Per ulteriori informazioni, consulta Artifact Stores
Nota
SageMaker AI MLFlow ha un limite di dimensione di download di 200 MB.
Versioni dell'app MLFlow
Le seguenti versioni MLFlow sono disponibili per l'uso con le app SageMaker AI MLFlow:
| Versione di MLflow | Versione di Python |
|---|---|
| MLFlow 3.10 |
Python 3.10 |
L'ultima versione dell'app MLFlow include le funzionalità, le patch di sicurezza e le correzioni di bug più recenti. Quando crei una nuova app MLFlow, questa verrà automaticamente aggiornata all'ultima versione supportata. Per ulteriori informazioni sulla creazione di un'app MLFlow, consulta. Configurazione dell'app MLFlow
Le app MLFlow utilizzano il controllo delle versioni semantiche. Le versioni hanno il seguente formato: .major-version.minor-version.patch-version
Dimensioni del server di tracciamento MLflow
Facoltativamente, puoi specificare la dimensione del tuo server di tracciamento nell'interfaccia utente di Studio o con il parametro. AWS CLI --tracking-server-size Puoi scegliere tra "Small", "Medium" e "Large". La dimensione di configurazione predefinita del server di tracciamento MLflow è "Small". È possibile scegliere una dimensione in base all’uso previsto del server di tracciamento, ad esempio il volume di dati registrati, il numero di utenti e la frequenza di utilizzo.
Consigliamo di utilizzare un server di tracciamento di dimensioni ridotte per team di massimo 25 utenti, un server di tracciamento medio per team fino a 50 utenti e un server di tracciamento grande per team fino a 100 utenti. Partiamo dal presupposto che tutti gli utenti invieranno richieste simultanee al server di tracciamento MLflow per formulare queste raccomandazioni. È necessario selezionare la dimensione del server di tracciamento in base al modello di utilizzo previsto e al TPS (transazioni al secondo) supportati da ciascun server.
Nota
La natura del carico di lavoro e il tipo di richieste che effettui al server di tracciamento determinano il TPS che visualizzi.
| Dimensione del server di tracciamento | TPS sostenuto | Aumento del TPS |
|---|---|---|
| Small | Fino a 25 | Fino a 50 |
| Media | Fino a 50 | Fino a 100 |
| Large | Fino a 100 | Fino a 200 |
Versioni del server di tracciamento
Le seguenti versioni di MLFlow sono disponibili per l'uso con SageMaker AI:
| Versione di MLflow | Versione di Python |
|---|---|
| MLflow 3.0 |
Python 3.9 |
| MLflow 2.16 |
Python 3.8 |
| MLflow 2.13 |
Python 3.8 |
L’ultima versione del server di tracciamento include le funzionalità, le patch di sicurezza e le correzioni di bug più recenti. Quando crei un nuovo server di tracciamento, ti consigliamo di utilizzare la versione più recente. Per ulteriori informazioni su come creare un server di tracciamento, consulta Server di tracciamento MLflow.
I server di tracciamento MLflow utilizzano il controllo delle versioni semantico. Le versioni hanno il seguente formato: .major-version.minor-version.patch-version
Le funzionalità più recenti, come le funzionalità API e gli elementi dell’interfaccia utente nuovi, sono nella versione secondaria.
AWS CloudTrail log
AWS CloudTrail registra automaticamente le attività relative al server di tracciamento MLFlow. Vengono registrate le seguenti chiamate API del piano di controllo: CloudTrail
-
CreateMlflowTrackingServer
-
DescribeMlflowTrackingServer
-
UpdateMlflowTrackingServer
-
DeleteMlflowTrackingServer
-
ListMlflowTrackingServers
-
CreatePresignedMlflowTrackingServer
-
StartMlflowTrackingServer
-
StopMlflowTrackingServer
AWS CloudTrail inoltre registra automaticamente le attività relative al piano dati MLFlow. Vengono registrate le seguenti chiamate API del piano dati. CloudTrail Per i nomi degli eventi, aggiungi il prefisso Mlflow (ad esempio, MlflowCreateExperiment).
-
CreateExperiment
-
CreateModelVersion
-
CreateRegisteredModel
-
CreateRun
-
DeleteExperiment
-
DeleteModelVersion
-
DeleteModelVersionTag
-
DeleteRegisteredModel
-
DeleteRegisteredModelAlias
-
DeleteRegisteredModelTag
-
DeleteRun
-
DeleteTag
-
GetDownloadURIForModelVersionArtifacts
-
GetExperiment
-
GetExperimentByName
-
GetLatestModelVersions
-
GetMetricHistory
-
GetModelVersion
-
GetModelVersionByAlias
-
GetRegisteredModel
-
GetRun
-
ListArtifacts
-
LogBatch
-
LogInputs
-
LogMetric
-
LogModel
-
LogParam
-
RenameRegisteredModel
-
RestoreExperiment
-
RestoreRun
-
SearchExperiments
-
SearchModelVersions
-
SearchRegisteredModels
-
SearchRuns
-
SetExperimentTag
-
SetModelVersionTag
-
SetRegisteredModelAlias
-
SetRegisteredModelTag
-
SetTag
-
TransitionModelVersionStage
-
UpdateExperiment
-
UpdateModelVersion
-
UpdateRegisteredModel
-
UpdateRun
-
FinalizeLoggedModel
-
GetLoggedModel
-
DeleteLoggedModel
-
SearchLoggedModels
-
SetLoggedModelTags
-
DeleteLoggedModelTag
-
ListLoggedModelArtifacts
-
LogLoggedModelParams
-
LogOutputs
Per ulteriori informazioni in merito CloudTrail, consulta la Guida per l'AWS CloudTrail utente.
EventBridge Eventi Amazon
Utilizzali EventBridge per indirizzare gli eventi dall'utilizzo di MLFlow con SageMaker AI alle applicazioni consumer in tutta l'organizzazione. I seguenti eventi vengono emessi a: EventBridge
-
«Creazione SageMaker del server di tracciamento»
-
«Server SageMaker di tracciamento creato»
-
«Creazione del server di SageMaker tracciamento non riuscita»
-
«Aggiornamento SageMaker del server di tracciamento»
-
«Server SageMaker di tracciamento aggiornato»
-
«Aggiornamento del server di SageMaker tracciamento non riuscito»
-
«Eliminazione del server di SageMaker tracciamento»
-
«Server SageMaker di tracciamento eliminato»
-
«Eliminazione del server di SageMaker tracciamento non riuscita»
-
«Avvio del server di SageMaker tracciamento»
-
«Server SageMaker di tracciamento avviato»
-
«Avvio del server di SageMaker tracciamento non riuscito»
-
«Arresto del server di SageMaker tracciamento»
-
«Server SageMaker di tracciamento interrotto»
-
«Interruzione del server di SageMaker tracciamento non riuscita»
-
«Manutenzione del server di SageMaker monitoraggio in corso»
-
«Manutenzione del server di SageMaker tracciamento completata»
-
«Manutenzione del server di SageMaker tracciamento non riuscita»
-
«Creazione ed esecuzione del server di tracciamento SageMaker MLFlow»
-
«Creazione del server di tracciamento SageMaker MLFlow» RegisteredModel
-
«Creazione del server di tracciamento SageMaker MLFlow» ModelVersion
-
«Fase di transizione ModelVersion del server di tracciamento SageMaker MLFlow»
-
«Impostazione dell'alias del modello registrato del server di tracciamento SageMaker MLFlow»
Per ulteriori informazioni EventBridge, consulta la Amazon EventBridge User Guide.