Esplorare le strategie di distribuzione dei modelli
Dopo aver eseguito il training del modello, il passaggio successivo è la distribuzione. Per distribuire il modello in modo efficace, è necessario usare MLflow.
MLflow consente di gestire l'intero processo, dai parametri di registrazione e dalle metriche alla creazione di pacchetti e alla condivisione del modello.
È anche necessario considerare come si vuole distribuire il modello. È possibile scegliere stime in tempo reale usando Mosaic AI Model Serving o per le stime batch con i processi di Azure Databricks. In alternativa, è possibile eseguire l'integrazione con Azure Machine Learning e usare le funzionalità predefinite per distribuire il modello in un endpoint in tempo reale o batch.
Indipendentemente dall'approccio scelto, la distribuzione del modello garantisce che il modello sia pronto per la produzione e possa fornire le informazioni necessarie.
Usare MLflow per la gestione dei modelli
Azure Databricks funziona con MLflow. MLflow è una piattaforma open source per la gestione dell'intero ciclo di vita di Machine Learning.
Con MLflow è possibile tenere traccia degli esperimenti, del codice del pacchetto e condividere e distribuire modelli. MLflow garantisce che i modelli vengano gestiti in modo coerente dallo sviluppo alla produzione.
Il server di rilevamento di MLflow consente di registrare parametri, metriche e artefatti. Le funzionalità di rilevamento di MLflow offrono un record completo delle prestazioni del modello e contribuisce alla riproducibilità.
Suggerimento
Altre informazioni su come registrare, caricare, registrare e distribuire modelli MLflow.
Distribuire modelli con Databricks
La distribuzione di modelli con Azure Databricks prevede l'uso di Mosaic AI Model Serving per creare API di livello di produzione da modelli Python personalizzati.
I modelli Python personalizzati sono i modelli di cui si esegue il training usando librerie come scikit-learn, XGBoost, PyTorch e trasformatori HuggingFace.
Dopo il training, registrare il modello sottoposto a training nel formato MLflow e registrare gli asset MLflow nel Registro di sistema o nell'area di lavoro di Unity.
Dopo la registrazione, è possibile creare ed eseguire query sui modelli che servono gli endpoint, assicurandosi che i modelli siano pronti per stime in tempo reale integrando l'endpoint nelle soluzioni.
Suggerimento
Altre informazioni su come distribuire ed eseguire query su un modello personalizzato.
Generare stime batch
Per i casi d'uso in cui le stime in tempo reale non sono necessarie, l'inferenza batch può essere una strategia di distribuzione più efficace. Le stime batch vengono spesso usate in scenari come la generazione di report periodici o l'aggiornamento di data warehouse con nuove informazioni dettagliate.
Azure Databricks può elaborare set di dati di grandi dimensioni in parallelo usando Apache Spark, rendendolo particolarmente adatto per le attività di inferenza batch.
Quando si esegue un processo di Azure Databricks, il modello può essere applicato a grandi volumi di dati in modo pianificato. È possibile generare stime batch o informazioni dettagliate che possono essere archiviate e accessibili in base alle esigenze.
Suggerimento
Altre informazioni su come distribuire modelli per l'inferenza e la stima batch.
Integrazione con Azure Machine Learning
Azure Databricks si integra con Azure Machine Learning, consentendo di distribuire modelli agli endpoint nell'area di lavoro di Azure Machine Learning.
Sia Azure Databricks che Azure Machine Learning funzionano con MLflow per gestire i modelli. È possibile eseguire il training di un modello in Azure Databricks e salvarlo come modello MLflow. È quindi possibile registrare il modello MLflow nell'area di lavoro di Azure Machine Learning, dopo di che è possibile distribuire facilmente il modello in un endpoint batch o in tempo reale.
Suggerimento
Altre informazioni sugli endpoint di Azure Machine Learning per l'inferenza nell'ambiente di produzione.