Machine Learning Operations (MLOps)
Esplora gli elementi essenziali di MLOps per semplificare la distribuzione dell'IA. Scopri come gestire CI/CD, versionamento dei dati e monitoraggio con Ultralytics YOLO26 e la nostra piattaforma.
Le Machine Learning Operations (MLOps) sono un insieme di pratiche, principi e tecnologie che semplificano il processo di transizione dei modelli di machine learning (ML) dallo sviluppo sperimentale a una distribuzione in produzione affidabile. Unendo la natura esplorativa della data science con la rigorosa disciplina del DevOps, le MLOps mirano a unire il ciclo di rilascio per le applicazioni di Artificial Intelligence (AI). Mentre lo sviluppo software tradizionale si concentra principalmente sul versionamento del codice, le MLOps introducono le complessità aggiuntive della gestione di dati su larga scala e dei comportamenti evolutivi dei modelli. Questo approccio olistico garantisce che i sistemi di AI rimangano scalabili, accurati e governati durante tutto il loro ciclo di vita.
I pilastri di MLOps#
Le implementazioni MLOps di successo si basano sul colmare il divario tra tre discipline distinte: data engineering, machine learning e DevOps.
- Continuous Integration and Delivery (CI/CD): Proprio come il software standard utilizza i CI/CD pipelines per automatizzare test e distribuzione, i pipeline di MLOps automatizzano l'addestramento e la validazione dei modelli. Questo garantisce che le modifiche al codice o ai dati attivino automaticamente i passaggi per verificare le model performance prima che gli aggiornamenti raggiungano la produzione.
- Data and Model Versioning: Nella programmazione tradizionale, si effettua il versionamento del solo codice sorgente. Nelle MLOps, i team devono utilizzare strumenti come DVC (Data Version Control) per tracciare le modifiche nei training data insieme agli iperparametri del modello. Questo garantisce la reproducibility, consentendo agli ingegneri di ricreare qualsiasi versione specifica del modello dalla cronologia.
- Continuous Monitoring: Una volta distribuiti, i modelli possono subire un degrado a causa del concept drift, in cui le proprietà statistiche della variabile target cambiano nel tempo. Le MLOps comportano la configurazione di sistemi di observability per tracciare metriche come inference latency e accuratezza, avvisando automaticamente i team quando è necessario un nuovo addestramento.
Applicazioni nel mondo reale#
MLOps è la spina dorsale dell'AI aziendale moderna, consentendo alle aziende di passare in modo affidabile da un singolo modello a migliaia di endpoint distribuiti.
-
Predictive Maintenance in Manufacturing: Le fabbriche utilizzano la computer vision per identificare i difetti sulle linee di montaggio. Un pipeline di MLOps garantisce che, con l'introduzione di nuove linee di prodotti, i modelli di object detection vengano riaddestrati con nuove immagini, versionati e distribuiti automaticamente ai dispositivi edge della fabbrica senza tempi di inattività. Questo garantisce che il quality inspection rimanga coerente anche quando le condizioni di produzione cambiano.
-
Smart Retail Inventory: I rivenditori distribuiscono telecamere per tracciare le scorte sugli scaffali. Poiché l'illuminazione dei negozi e il confezionamento dei prodotti cambiano frequentemente, il model drift è un rischio costante. I sistemi di MLOps monitorano i punteggi di confidence; se la confidenza diminuisce, il sistema contrassegna le immagini per l'annotazione e avvia un ciclo di riaddestramento sul cloud, inviando un modello aggiornato ai negozi per mantenere un automated inventory management.
Implementare MLOps con Ultralytics#
Un passaggio critico in qualsiasi flusso di lavoro MLOps è l'experiment tracking. Questo garantisce che ogni esecuzione di addestramento venga registrata con la sua configurazione specifica, consentendo ai team di riprodurre i risultati o di tornare a versioni precedenti se necessario.
Il seguente esempio mostra come addestrare un modello YOLO26, l'ultimo modello all'avanguardia di Ultralytics consigliato per tutti i nuovi progetti, abilitando al contempo il tracciamento dei progetti. Questo crea naturalmente gli artefatti necessari per un pipeline di produzione.
from ultralytics import YOLO
# Load the YOLO26 model (recommended for superior speed and accuracy)
model = YOLO("yolo26n.pt")
# Train the model while specifying project and name for organized logging
# This creates a structured directory of artifacts (weights, charts, args)
# which is essential for reproducibility in MLOps pipelines.
results = model.train(data="coco8.yaml", epochs=10, project="mlops_experiments", name="run_v1")Organizzando le esecuzioni di addestramento in progetti specifici, i team possono facilmente integrare strumenti come MLflow o TensorBoard per visualizzare le metriche delle prestazioni nel tempo. Man mano che le organizzazioni crescono, spesso migrano questi flussi di lavoro sulla Ultralytics Platform, che fornisce un'interfaccia unificata per la gestione dei dataset, l'addestramento da remoto e la distribuzione di modelli in vari formati come TensorRT per una velocità di inferenza ottimizzata.
MLOps vs. concetti correlati#
Per implementare queste pratiche in modo efficace, è importante distinguere MLOps dai termini correlati nell'ecosistema.
- MLOps vs. DevOps: Il DevOps si concentra sulla distribuzione continua delle applicazioni software. Le MLOps estendono questi principi aggiungendo "Data" e "Model" come elementi di prima classe. Nel DevOps, una modifica al codice attiva una build; nelle MLOps, una modifica nella distribuzione dei dati o un calo della precision può anche attivare l'esecuzione di un nuovo pipeline.
- MLOps vs. Model Serving: Il Model serving si riferisce specificamente all'infrastruttura utilizzata per ospitare un modello ed elaborare le inference requests. Le MLOps sono il cappello più ampio che comprende il serving, ma includono anche le fasi di addestramento, governance e monitoraggio.
- MLOps vs. AutoML: L'Automated Machine Learning (AutoML) si concentra sull'automazione del processo di creazione del modello (ad esempio, la selezione degli algoritmi). Le MLOps gestiscono il ciclo di vita di quel modello dopo che è stato creato e rendono operativo il pipeline che esegue gli strumenti di AutoML.






