Model Registry
Scopri come un registro dei modelli gestisce il versioning, la governance e la distribuzione dei modelli ML. Esplora la Ultralytics Platform per addestramento, gestione, monitoraggio e riproducibilità centralizzati.
Un registro dei modelli è un sistema centralizzato per organizzare, sottoporre a controllo delle versioni, governare e recuperare i modelli di machine learning durante tutto il loro ciclo di vita. Collega i file dei modelli, come i pesi del modello appresi, ai metadati che descrivono come ogni modello è stato addestrato, valutato, approvato e distribuito. In quanto componente fondamentale delle operazioni di machine learning, un registro offre ai team una fonte affidabile per decidere quale versione del modello debba gestire il traffico di produzione.
Come funziona un registro dei modelli#
La registrazione del modello inizia dopo che un'esecuzione di addestramento ha prodotto un modello candidato. Il registro crea una voce denominata, assegna una versione e registra le informazioni necessarie per comprendere e riprodurre l'artefatto. Una voce tipica include:
- Artefatto del modello: I pesi serializzati, la logica di pre-elaborazione, i file di configurazione o un riferimento alla loro posizione di archiviazione.
- Versione: Un identificatore immutabile che distingue un candidato dagli altri.
- Metriche e parametri: Accuratezza di validazione, precisione, richiamo, latenza, dettagli del dataset, iperparametri e altre misurazioni.
- Provenienza: Collegamenti tra il modello, il relativo codice sorgente, l'esecuzione di addestramento e i dati.
- Stato: Etichette come candidato, approvato, rifiutato, campione o archiviato.
- Informazioni sulla distribuzione: Ambienti ed endpoint che utilizzano attualmente la versione.
Le piattaforme implementano questi concetti in modi diversi. Il flusso di lavoro del registro dei modelli di MLflow utilizza modelli registrati, versioni, alias e tag, mentre Amazon SageMaker Model Registry supporta gruppi di modelli, stati di approvazione, provenienza e automazione della distribuzione. Alcuni sistemi registrano anche una firma del modello: lo schema previsto degli input e degli output descritto nella documentazione sulla firma dei modelli di Snowflake.
Alias come champion o production forniscono nomi stabili che possono spostarsi tra versioni immutabili. Come spiegato nella guida agli alias dei modelli di Vertex AI, un'applicazione può richiedere un alias senza codificare direttamente un numero di versione.
Registro dei modelli e concetti correlati#
Un registro dei modelli si sovrappone a diversi strumenti di ML, ma ha uno scopo distinto:
- Monitoraggio degli esperimenti registra le esecuzioni di addestramento, inclusi parametri, metriche e artefatti intermedi. Un registro riceve gli output selezionati di tali esperimenti e li gestisce come candidati al rilascio.
- Archiviazione degli artefatti conserva file di grandi dimensioni. Un registro può archiviare direttamente tali file, ma può anche funzionare come indice di metadati che punta a un'archiviazione di oggetti esterna. L'architettura del registro dei modelli di Kubeflow illustra questo design incentrato sui metadati.
- Controllo del codice sorgente gestisce le versioni del codice, mentre un registro dei modelli gestisce le versioni degli artefatti addestrati e dei relativi metadati specifici per il ML. Il registro dei modelli di GitLab può collegare le versioni dei modelli ai job CI/CD, ai log, alle metriche e ai parametri.
- Distribuzione del modello rende disponibile un modello selezionato per l'inferenza. Il registro identifica l'artefatto approvato; il sistema di distribuzione lo esegue.
- Monitoraggio del modello osserva il comportamento in produzione dopo il rilascio. I risultati del monitoraggio possono attivare la valutazione, il riaddestramento, la registrazione e la promozione di una versione sostitutiva.
Un registro agisce quindi come punto di controllo tra la sperimentazione e la produzione, anziché sostituire ogni componente circostante.
Applicazioni nel mondo reale#
In un sistema di ispezione industriale, gli ingegneri possono riaddestrare un rilevatore di difetti ogni volta che cambiano le telecamere, i materiali o i design dei prodotti. Il registro può conservare il riferimento al dataset di ciascun modello, la precisione media, la latenza di inferenza e il formato hardware supportato. Dopo che i test hanno confermato che la versione 12 migliora il rilevamento dei graffi senza aumentare i falsi allarmi, un responsabile dell'approvazione può promuoverla e conservare la versione 11 per un ripristino immediato.
Nell'analisi delle immagini mediche, più team possono valutare candidati per il rilevamento dei tumori. La registrazione conserva i risultati di validazione, la configurazione di addestramento, il responsabile e la cronologia delle approvazioni per ogni versione. Le applicazioni di produzione possono essere limitate ai modelli esaminati, mentre le versioni precedenti restano disponibili per audit e riproducibilità. I controlli basati sui ruoli, come quelli descritti per la governance del registro dei modelli di Snowflake, aiutano a impedire la sostituzione o l'ispezione non autorizzata di artefatti sensibili.
Registrazione dei modelli nei flussi di lavoro di Ultralytics#
Ultralytics Platform offre una gestione centralizzata dei modelli per annotare i dataset, addestrare, confrontare i risultati, esportare, distribuire e monitorare i modelli di computer vision. Il flusso di lavoro documentato per la gestione dei modelli nella Platform supporta i pesi .pt caricati e i modelli prodotti tramite addestramento cloud o remoto.
Il seguente flusso di lavoro documentato addestra Ultralytics YOLO26 localmente, inviando al contempo il modello risultante, la configurazione, le metriche e i log a un progetto denominato della Platform:
import os
from ultralytics import YOLO
# Authenticate remote training with Ultralytics Platform
os.environ["ULTRALYTICS_API_KEY"] = "YOUR_API_KEY"
model = YOLO("yolo26n.pt")
model.train(
data="coco8.yaml",
epochs=3,
project="username/model-registry-demo",
name="candidate-001",
)Il nome del progetto e dell'esecuzione rendono il candidato facilmente individuabile insieme ai modelli correlati. I team possono valutarlo, utilizzare l'integrazione di Ultralytics con MLflow per registrare ulteriori esperimenti o applicare l'esportazione dei modelli YOLO quando un modello registrato deve essere eseguito su hardware cloud o edge specifico.
Indicazioni pratiche per il registro#
Tratta ogni versione registrata come immutabile. Usa alias leggibili per la distribuzione, conserva le prove di validazione e definisci requisiti chiari per la promozione. Una politica di denominazione basata sul Versionamento semantico può comunicare le modifiche di compatibilità, sebbene siano efficaci anche le versioni incrementate automaticamente.
Soprattutto, registra pacchetti completi del modello anziché file di pesi privi di spiegazioni. L'assenza di regole di pre-elaborazione, nomi delle classi, schemi degli input, dipendenze o riferimenti ai dataset può rendere impossibile riprodurre un modello apparentemente valido o renderne rischiosa la distribuzione. I controlli degli accessi, i test automatizzati, i passaggi di approvazione, i log di audit e le procedure di rollback trasformano un registro dei modelli da catalogo di file a garanzia affidabile per la produzione.









