Glossario

Modello di servizio

Impara gli elementi essenziali del model serving: distribuisci i modelli AI per ottenere previsioni in tempo reale, scalabilità e integrazione perfetta nelle applicazioni.

Addestra i modelli YOLO semplicemente
con Ultralytics HUB

Per saperne di più

Una volta che un modello di Machine Learning (ML) è stato addestrato e convalidato, il passo successivo è renderlo disponibile per generare previsioni su nuovi dati. Questo processo è noto come Model Serving. Si tratta di distribuire un modello addestrato in un ambiente di produzione, in genere dietro un endpoint API, consentendo alle applicazioni o ad altri sistemi di richiedere previsioni in tempo reale. Il Model Serving funge da ponte tra il modello sviluppato e la sua applicazione pratica, trasformandolo da un file statico in un servizio attivo e generatore di valore all'interno del più ampio ciclo di vita del Machine Learning.

L'importanza del servizio di assistenza ai modelli

Il servizio del modello è fondamentale per rendere operativi i modelli di ML. Senza di esso, anche i modelli più accurati, come lo stato dell'arte di Ultralytics YOLO di Ulralytics, rimangono isolati negli ambienti di sviluppo e non sono in grado di influenzare i processi del mondo reale. Un model serving efficace garantisce:

Applicazioni del mondo reale

Il model serving abilita innumerevoli funzioni basate sull'intelligenza artificiale con cui interagiamo quotidianamente. Ecco due esempi:

  1. Raccomandazioni di prodotti per l'e-commerce: Quando navighi in un negozio online, il sistema di raccomandazione è alimentato da un backend che serve un modello. Prende in input la cronologia di navigazione o il profilo dell'utente e restituisce suggerimenti personalizzati sui prodotti in tempo reale.
  2. Assistenza alle diagnosi mediche: Nel settore sanitario, i modelli addestrati per l'analisi delle immagini mediche possono essere serviti tramite un'API. I medici possono caricare le scansioni dei pazienti (come radiografie o risonanze magnetiche) sul servizio, che restituisce potenziali anomalie o approfondimenti diagnostici, aiutando il processo decisionale clinico. Piattaforme come Ultralytics HUB facilitano la distribuzione di questi modelli specializzati.

Componenti chiave del servizio modello

L'implementazione di un robusto sistema di servizio dei modelli coinvolge diversi componenti:

  • Formato del modello: Il modello addestrato deve essere salvato in un formato adatto alla distribuzione, come ad esempio ONNX, TensorFlow SavedModel o formati ottimizzati come TensorRT.
  • Framework di Serving: Software come TensorFlow Serving, TorchServe o NVIDIA Triton Inference Server gestiscono il ciclo di vita del modello, gestiscono le richieste ed eseguono l'inferenza.
  • Endpoint API: Un'interfaccia (spesso gestita da un API Gateway) che espone le funzionalità di previsione del modello alle applicazioni client.
  • Infrastruttura: L'ambiente hardware e software sottostante, che può essere costituito da server on-premise, istanze di cloud computing o persino dispositivi di edge computing specializzati.
  • Monitoraggio: Gli strumenti e i processi di monitoraggio del modello tengono traccia delle prestazioni, della latenza, degli errori e della potenziale deriva dei dati per garantire che il modello servito rimanga efficace nel tempo.

Distribuzione del modello e servizio del modello

Anche se i termini Model Deployment e Model Serving sono spesso correlati, non sono identici. La distribuzione dei modelli è il concetto più ampio di rendere disponibile all'uso un modello addestrato. Questo può comprendere varie strategie, tra cui l'integrazione dei modelli direttamente nelle applicazioni, la distribuzione su dispositivi edge per l'inferenza offline o l'impostazione di pipeline di elaborazione batch che eseguono periodicamente le previsioni. Puoi esplorare diverse opzioni di distribuzione dei modelli in base alle tue esigenze.

Il model serving si riferisce specificamente alla distribuzione di un modello come servizio di rete, solitamente accessibile tramite un'API, progettato per gestire le richieste di previsione on-demand, spesso in tempo reale. Si tratta di un tipo specifico di distribuzione del modello che si concentra sulla fornitura di funzionalità di inferenza continua con considerazioni di scalabilità e bassa latenza. Per molte applicazioni interattive che richiedono previsioni immediate, il model serving è il metodo di distribuzione preferito.

Leggi tutto