0Pricing
Learn AI with Python · Lezione

Registro dei modelli e versionamento

Registrazione dei modelli, staging (Staging/Production), alias dei modelli, caricamento per versione

Registro dei modelli e versionamento è una lezione Learn AI with Python gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Learn AI with Python, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Learn AI with Python include 4 lezioni in totale.

Che cos'è il Model Registry?

MLflow Model Registry è un archivio centrale per i modelli. Tiene traccia dei modelli denominati, delle relative versioni e delle fasi del ciclo di vita, così il team sa sempre quale modello è in produzione e come ci è arrivato.

Perché il versioning è importante

I modelli vengono riaddestrati continuamente. Il versioning assegna un numero a ogni nuovo addestramento, consente di ripristinare immediatamente la versione precedente se un nuovo modello si comporta male e collega ogni versione all'esecuzione che l'ha prodotta, garantendo la completa tracciabilità.

Registrazione di un modello

mlflow.register_model riceve l'URI di un modello registrato e un nome, creando la versione 1, o la versione successiva, nel registro.

import mlflow

result = mlflow.register_model(
    model_uri="runs:/<run_id>/model",
    name="churn_classifier"
)
print("Version:", result.version)

Registrazione al momento del log

Può anche registrare direttamente il modello mentre lo registra, passando registered_model_name; in questo modo viene creata automaticamente una nuova versione a ogni esecuzione.

mlflow.sklearn.log_model(
    model,
    artifact_path="model",
    registered_model_name="churn_classifier"
)

Fasi del ciclo di vita

Ogni versione attraversa diverse fasi: None -> Staging (test) -> Production (attiva) -> Archived. Le fasi separano "quale versione" da "quale versione sta servendo", quindi la promozione consiste in una modifica dei metadati, non in una nuova distribuzione.

MlflowClient

Le operazioni programmatiche sul registro passano attraverso MlflowClient.

from mlflow.tracking import MlflowClient

client = MlflowClient()

Transizione tra le fasi

transition_model_version_stage promuove una versione. La sposti in Staging per il controllo qualità, quindi in Production una volta convalidata.

client.transition_model_version_stage(
    name="churn_classifier",
    version=3,
    stage="Production"
)

Caricamento in base alla fase

Il codice di serving può caricare "qualunque versione si trovi in Production" senza codificare direttamente il numero di versione; in questo modo la promozione di una nuova versione aggiorna immediatamente ciò che viene fornito.

import mlflow.pyfunc

model = mlflow.pyfunc.load_model(
    "models:/churn_classifier/Production"
)

Alias dei modelli (MLflow 2.x)

MLflow 2.x ha introdotto gli alias: puntatori denominati e modificabili, come @champion o @challenger, associati a una versione. Sono più flessibili dei nomi fissi delle fasi e rappresentano l'approccio moderno consigliato.

client.set_registered_model_alias(
    name="churn_classifier",
    alias="champion",
    version=3
)

Caricamento in base all'alias

Faccia riferimento a un modello tramite il relativo alias usando la sintassi @, così la riassegnazione dell'alias a una nuova versione reindirizza immediatamente tutti i consumer.

model = mlflow.pyfunc.load_model(
    "models:/churn_classifier@champion"
)

Fasi e alias

  • Fasi: insieme fisso (Staging/Production/Archived), ciclo di vita semplice.
  • Alias: qualsiasi nome personalizzato, più alias per modello, approccio consigliato in MLflow 2.x.

Per i nuovi progetti è preferibile usare gli alias, grazie alla loro flessibilità.

Verifica rapida

Verifichi le Sue conoscenze sul registro dei modelli.

Riepilogo

Ha utilizzato MLflow Model Registry: register_model crea le versioni, MlflowClient.transition_model_version_stage le sposta tra Staging e Production e il caricamento in base alla fase o all'alias (MLflow 2.x) consente di aggiornare il serving senza modificare il codice. Prossimo argomento: la creazione di pipeline riproducibili.

Domande Frequenti

La lezione «Registro dei modelli e versionamento» è gratuita?

Sì — il testo completo di «Registro dei modelli e versionamento» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Learn AI with Python, passa a CoddyKit PRO. Il corso Learn AI with Python include 4 lezioni in totale.

Cosa imparerò in «Registro dei modelli e versionamento»?

Registrazione dei modelli, staging (Staging/Production), alias dei modelli, caricamento per versione Eserciti Learn AI with Python con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Learn AI with Python?

Non è richiesta alcuna esperienza precedente. Learn AI with Python su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.

Quanto tempo richiede la lezione «Registro dei modelli e versionamento»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Learn AI with Python?

Sì. Ogni lezione Learn AI with Python include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Tracciamento degli esperimenti con MLflow
  2. Registro dei modelli e versionamento
  3. Creazione di pipeline ML riproducibili
  4. Monitoraggio delle prestazioni dei modelli in produzione
← Torna a Learn AI with Python