Che cos'è Managed MLflow?
Managed MLflow estende la funzionalità di MLflow, una piattaforma open-source sviluppata da Databricks per la gestione del ciclo di vita del machine learning, focalizzata su affidabilità, sicurezza e scalabilità per le imprese. L'ultimo aggiornamento di MLflow introduce funzionalità LLMOps innovative che ne migliorano la capacità di gestire e implementare modelli linguistici di grandi dimensioni (LLM). Il supporto per modelli LLM è stato ampliato grazie a nuove integrazioni con strumenti LLM standard Hugging Face Transformers e funzioni OpenAI, oltre a MLflow AI Gateway. Inoltre, l'integrazione di MLflow con LangChain e Prompt Engineering UI semplifica lo sviluppo dei modelli per creare applicazioni di AI generativa per svariati casi d'uso, fra cui chatbot, riassunti di documenti, classificazione di testi, sentiment analysis e altri ancora.
Vantaggi
Sviluppo di modelli
Accelera e migliora la gestione del ciclo di vita del machine learning con un framework standardizzato per sviluppare modelli pronti per la produzione. Managed MLflow Recipes consente di avviare immediatamente progetti ML, fare iterazioni rapide e implementare modelli su larga scala. Si possono creare applicazioni come chatbot, riassunti di documenti, sentiment analysis e classificazione, senza alcuna fatica. Sviluppa facilmente app di AI generativa (ad es. chatbot, riassunti di documenti) con MLflow AI Gateway e Prompt Engineering, integrati direttamente con LangChain, Hugging Face e OpenAI.
Monitoraggio di esperimenti
Esegui esperimenti con qualsiasi libreria, framework o linguaggio di ML e traccia automaticamente parametri, metriche, codice e modelli di ciascun esperimento. MLflow su Databricks consente di condividere, gestire e confrontare in maniera sicura i risultati degli esperimenti, unitamente ai relativi artefatti e versioni di codice, grazie alle integrazioni incorporate con Databricks Databricks Workspace e notebook.
Gestione dei modelli
La soluzione offre un luogo centralizzato per scoprire e condividere modelli di ML, collaborare per portare i modelli dalla sperimentazione al collaudo online e alla produzione, integrare il processo con flussi di lavoro di approvazione e governance e pipeline CI/CD, e monitorare le implementazioni di ML e le relative prestazioni. Il registro dei modelli MLflow facilita la condivisione di competenze e conoscenze, aiutando l'utente a mantenere il controllo.
Implementazione di modelli
Implementa velocemente modelli in produzione per l'inferenza in batch su Apache Spark™ e come API REST, utilizzando l'integrazione con contenitori Docker, Azure ML o Amazon SageMaker. Managed MLflow on Databricks consente di operazionalizzare e monitorare modelli in produzione utilizzando Databricks Jobs Scheduler e cluster autogestiti per dimensionare la soluzione in base alle esigenze dell'azienda.
Gli ultimi aggiornamenti a MLflow forniscono applicazioni di AI generativa pronte per l'implementazione. Si possono ora implementare chatbot e altre applicazioni di AI generativa, come riassunti di documenti, sentiment analysis e classificazione, su larga scala utilizzando Databricks Model Serving.
Funzioni
MLflow Tracking
MLFLOW TRACKING: registrazione automatica di parametri, versioni di codice, metriche e artefatti per ogni esecuzione che utilizza Python, REST, R API e Java API.
PROMPT ENGINEERING: Sviluppo semplificato di modelli per costruire applicazioni di AI generativa per un'ampia gamma di casi d'uso, fra cui chatbot, riassunti di documenti, sentiment analysis e classificazione, con AI Gateway e Prompt Engineering di MLflow supportati dall'integrazione nativa con LangChain, e un'interfaccia utente trasparente "a codice zero" per prototipazione e iterazioni rapide.
MLFLOW TRACKING SERVER: Comincia subito a lavorare con un server di tracciamento integrato per registrare tutte le esecuzioni e gli esperimenti in un unico luogo. Non è richiesta alcuna configurazione su Databricks.
GESTIONE ESPERIMENTI: crea, proteggi, organizza, ricerca e visualizza esperimenti dall'interno dello spazio di lavoro, con controllo degli accessi e query di ricerca.
BARRA LATERALE DI MLFLOW: traccia automaticamente le esecuzioni all'interno dei notebook e cattura uno screenshot del notebook per ogni esecuzione, in modo da poter recuperare sempre le versioni precedenti del codice.
REGISTRAZIONE DEI DATI CON LE ESECUZIONI: registra parametri, set di dati, metriche, artefatti e altri elementi sotto forma di esecuzioni in file locali, in un database compatibile con SQLAlchemy o su un server di tracciamento remoto.
INTEGRAZIONE CON DELTA LAKE: traccia set di dati su larga scala per alimentare i modelli con screenshot di Delta Lake.
STOCCAGGIO DI ARTEFATTI: memorizza grandi file come bucket S3, file system NFS condiviso e modelli in Amazon S3, Azure Blob Storage, Google Cloud Storage, server SFTP , NFS e percorsi di file locali.
Modelli MLflow
MODELLI MLFLOW: formato standard per confezionare modelli di machine learning che possono essere utilizzati in svariati strumenti a valle, ad esempio serving in tempo reale attraverso un'API REST o inferenza batch su Apache Spark.
PERSONALIZZAZIONE DEI MODELLI: si possono utilizzare modelli Python personalizzati e Custom Flavor per modelli provenienti da una libreria di ML non esplicitamente supportata dai flavor integrati di MLflow.
FLAVOR DI MODELLI INTEGRATI: MLflow fornisce diversi flavor standard che possono essere utili in molte applicazioni, come funzioni Python e R, Hugging Face, OpenAI e LangChain, PyTorch, Spark MLlib, TensorFlow e ONNX.
STRUMENTI DI SVILUPPO INTEGRATI: implementazione veloce su Databricks tramite Apache Spark UDF per una macchina locale o molti altri ambienti di produzione, come Microsoft Azure ML, Amazon SageMaker e creazione di immagini Docker per l'implementazione.
Registro dei modelli MLflow
ARCHIVIO CENTRALE: registra i modelli MLflow con MLflow Model Registry. Un modello registrato ha un nome univoco, una versione, uno stadio e altri metadati.
GESTIONE DELLE VERSIONI DEI MODELLI: tracciamento automatico delle versioni dei modelli registrati quando vengono aggiornati.
STADIO DEL MODELLO: a ogni versione del modello può essere assegnato uno stadio predefinito o personalizzato, come “Staging” e “Production”, per indicare la fase del ciclo di vita di un modello.
INTEGRAZIONE DEL FLUSSO DI LAVORO CI/CD: registra i cambiamenti di stadio, richiedi, revisiona e approva le modifiche nell'ambito delle pipeline CI/CD per migliorare il controllo e la governance.
CAMBIAMENTI DI STATO DEL MODELLO: registra nuovi eventi o modifiche di registrazione come attività che memorizzano automaticamente utenti, modifiche e altri metadati sotto forma di commenti.
MLflow AI Gateway
ACCESSO CONTROLLATO A MODELLI LLM: Gestisci le credenziali di modelli linguistici di grandi dimensioni in modalità SaaS
CONTROLLO DEI COSTI: Imposta limiti alle tariffe
STANDARDIZZAZIONE DELLE INTERAZIONI CON LLM: Sperimenta con diversi modelli LLM OSS/SaaS con interfacce di ingresso/uscita standard per diverse attività: completamenti, chat, embedding
Progetti MLflow
PROGETTI MLFLOW: i progetti MLflow consentono di specificare l'ambiente software utilizzato per eseguire il codice. MLflow supporta attualmente i seguenti ambienti di progetto: ambiente Conda, ambiente contenitori Docker e ambiente di sistema. Qualsiasi repository Git o directory locale può essere trattato come un progetto MLflow.
MODALITÀ DI ESECUZIONE REMOTA: i progetti MLflow possono essere eseguiti da sorgenti Git o locali da remoto su cluster Databricks utilizzando l'interfaccia della linea di comando (CLI) di Databricks per scalare velocemente il codice.
MLflow Recipes
AVVIO SEMPLIFICATO DEI PROGETTI: MLflow Recipes fornisce componenti connessi pronti all'uso per costruire e implementare modelli di ML.
ITERAZIONE ACCELERATA DEI MODELLI: MLflow Recipes crea passaggi standardizzati e riutilizzabili per l'iterazione dei modelli, rendendo il processo più veloce e meno costoso.
PASSAGGI AUTOMATIZZATI FRA I TEAM: la struttura prescrittiva ("opinionated") mette a disposizione codice modularizzato pronto per la produzione, consentendo un passaggio automatico dalla sperimentazione alla produzione.
Leggi la sezione dedicata alle novità di prodotto di Azure Databricks e AWS per scoprire le nostre funzionalità più recenti.
Offerte MLflow a confronto
Open Source MLflow | Managed MLflow on Databricks | |
---|---|---|
Monitoraggio di esperimenti | ||
API di tracciamento di MLflow | ||
Server di tracciamento di MLflow | Hosting interno | Completamente gestito |
Integrazione con notebook | ||
Integrazione con flussi di lavoro | ||
Progetti riproducibili | ||
Progetti MLflow | ||
Integrazione con Git e Conda | ||
Cloud/cluster scalabili per esecuzione di progetti | ||
Gestione dei modelli | ||
Registro dei modelli MLflow | ||
Gestione delle versioni dei modelli | ||
Transizione di fase basata su ACL | ||
Integrazione con flussi di lavoro CI/CD | ||
Implementazione flessibile | ||
Inferenza batch integrata | ||
Modelli MLflow | ||
Analisi in streaming integrata | ||
Sicurezza e gestione | ||
Alta disponibilità | ||
Aggiornamenti automatici | ||
Controllo degli accessi per ruoli |
Come funziona
MLflow è un set leggero di API e interfacce utente che può essere utilizzato con qualsiasi framework di ML lungo tutto il flusso di lavoro di ML. Comprende quattro componenti: MLflow Tracking, MLflow Projects, MLflow Models e MLflow Model Registry
Managed MLflow su Databricks
Managed MLflow on Databricks è una versione completamente gestita di MLflow che offre ai professionisti la gestione della riproducibilità e degli esperimenti su notebook, lavori e data store di Databricks, con l'affidabilità, la sicurezza e la scalabilità della Databricks Lakehouse Platform.