Implementa modelli per l'inferenza - Amazon SageMaker AI

Implementa modelli per l'inferenza

Con Amazon SageMaker AI, puoi iniziare a ottenere previsioni o inferenze dai tuoi modelli di machine learning addestrati. SageMaker AI offre un’ampia selezione di infrastrutture ML e opzioni di implementazione dei modelli per soddisfare tutte le esigenze di inferenza ML. Con SageMaker AI Inference, è possibile non solo scalare l’implementazione dei modelli e gestirli in modo più efficace in produzione, ma anche ridurre il carico operativo. SageMaker AI offre diverse opzioni di inferenza, come endpoint in tempo reale per ottenere inferenze a bassa latenza, endpoint serverless per infrastrutture completamente gestite e dimensionamento automatico ed endpoint asincroni per batch di richieste. Sfruttando l’opzione di inferenza appropriata per il tuo caso d’uso, puoi garantire un’implementazione e un’inferenza efficienti del modello.

Scelta di una funzionalità.

Esistono diversi casi d’uso per l’implementazione di modelli ML con SageMaker AI. Questa sezione descrive tali casi d’uso e la funzionalità SageMaker AI che consigliamo per ognuno di essi.

Casi d'uso

Di seguito sono riportati i principali casi d’uso per l’implementazione di modelli ML con SageMaker AI.

  • Caso d’uso 1: implementazione di un modello di machine learning in un ambiente low code o no code. Gli utenti meno esperti o coloro che sono alle prime armi con SageMaker AI possono implementare modelli preaddestrati utilizzando Amazon SageMaker JumpStart tramite l’interfaccia di Amazon SageMaker Studio, senza la necessità di eseguire configurazioni complesse.

  • Caso d’uso 2: utilizzare il codice per implementare modelli di machine learning con livelli più elevati di flessibilità e controllo. I professionisti esperti in machine learning possono implementare i propri modelli con impostazioni personalizzate in base alle proprie esigenze applicative utilizzando la classe ModelBuilder di SageMaker AI Python SDK, che fornisce un controllo dettagliato su varie impostazioni, come i tipi di istanze, l’isolamento della rete e l’allocazione delle risorse.

  • Caso d’uso 3: implementazione di modelli di machine learning su larga scala. Per gli utenti avanzati e le organizzazioni che desiderano gestire modelli su larga scala in produzione, utilizza AWS SDK per Python (Boto3) e CloudFormation insieme agli strumenti Infrastructure as Code (IaC) e CI/CD desiderati per fornire le risorse e automatizzarne la gestione.

Nella tabella seguente sono descritti i compromessi e le considerazioni chiave per le funzionalità di SageMaker AI corrispondenti a ciascun caso d’uso.

Caso d'uso 1 Caso d'uso 2 Caso d'uso 3
Funzionalità di SageMaker AI Utilizza JumpStart in Studio per accelerare l’implementazione del modello di fondazione. Implementa i modelli utilizzando ModelBuilder da SageMaker Python SDK. Implementa e gestisci i modelli su larga scala con CloudFormation.
Descrizione Utilizza l’interfaccia utente di Studio per implementare modelli preaddestrati da un catalogo a endpoint di inferenza preconfigurati. Questa opzione è ideale per i citizen data scientist o per chiunque desideri implementare un modello senza configurare impostazioni complesse. Utilizza la classe ModelBuilder dell’Amazon SageMaker AI Python SDK per implementare il tuo modello e configurare le impostazioni di implementazione. Questa opzione è ideale per data scientist esperti o per chiunque abbia un proprio modello da implementare e richieda un controllo granulare. Utilizza CloudFormation e Infrastructure as Code (IaC) per il controllo programmatico e l’automazione per l’implementazione e la gestione dei modelli SageMaker AI. Questa opzione è ideale per utenti avanzati che richiedono implementazioni coerenti e ripetibili.
Ottimizzata per Implementazioni rapide e semplificate dei modelli open source più diffusi Implementazione di modelli personali Gestione continua dei modelli in produzione
Considerazioni Mancanza di personalizzazione per le impostazioni dei container e le esigenze specifiche delle applicazioni Nessuna interfaccia utente, richiede una certa competenza nello sviluppo e nella manutenzione del codice Python Richiede la gestione dell’infrastruttura e risorse organizzative e richiede, oltre a familiarità con AWS SDK per Python (Boto3) o con i modelli CloudFormation.
Ambiente consigliato Un dominio SageMaker AI Un ambiente di sviluppo Python configurato con le tue credenziali AWS e SageMaker Python SDK installato o un IDE SageMaker AI come SageMaker JupyterLab AWS CLI, un ambiente di sviluppo locale e strumenti Infrastructure as Code (IaC) e CI/CD

Opzioni aggiuntive

SageMaker AI offre diverse opzioni per i casi d’uso dell’inferenza, fornendoti un’ampia scelta di ampiezza e profondità tecnica per le tue implementazioni:

  • Implementazione di un modello su un endpoint. Durante l’implementazione del modello, valuta le seguenti opzioni:

    • Inferenza in tempo reale. L’inferenza in tempo reale è ideale per carichi di lavoro di inferenza in cui sono previsti requisiti interattivi e a bassa latenza.

    • Distribuire modelli con Inferenza serverless Amazon SageMaker. Utilizza l’inferenza serverless per implementare modelli senza configurare o gestire alcuna infrastruttura sottostante. Questa opzione è ideale per carichi di lavoro che presentano periodi di inattività tra picchi di traffico e possono tollerare avvii a freddo.

    • Inferenza asincrona. Mette in coda le richieste in entrata e le elabora in modo asincrono. Questa opzione è ideale per richieste con payload di grandi dimensioni (fino a 1 GB), tempi di elaborazione lunghi (fino a un'ora) e requisiti di latenza quasi in tempo reale.

  • Ottimizzazione dei costi. Per ottimizzare i costi di inferenza, valuta le seguenti opzioni:

    • Ottimizzazione delle prestazioni dei modelli con SageMaker Neo. Utilizza SageMaker Neo per ottimizzare ed eseguire i modelli di machine learning con prestazioni ed efficienza migliori e ridurre al minimo i costi di calcolo ottimizzando automaticamente i modelli per l’esecuzione in ambienti come i chip AWS Inferentia.

    • Dimensionamento automatico dei modelli di Amazon SageMaker AI. Ricorri alla scalabilità automatica per regolare dinamicamente le risorse di calcolo per i tuoi endpoint in base ai modelli di traffico in entrata, contribuendo a ottimizzare i costi pagando solo le risorse che utilizzi in un determinato momento.