View a markdown version of this page

Ottimizzazione dell'inferenza per i modelli di SageMaker intelligenza artificiale di Amazon - Amazon SageMaker AI

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Ottimizzazione dell'inferenza per i modelli di SageMaker intelligenza artificiale di Amazon

Amazon SageMaker AI offre due approcci per ottimizzare l'inferenza del modello di intelligenza artificiale generativa:

  • Raccomandazioni di inferenza. SageMaker L'intelligenza artificiale analizza automaticamente il modello e il carico di lavoro, valuta i tipi di istanze, applica ottimizzazioni e restituisce configurazioni convalidate e pronte per l'implementazione con metriche prestazionali reali. Questo è l'approccio consigliato per la maggior parte dei clienti. Per iniziare, consulta Raccomandazioni di inferenza AI generativa ottimizzate.

  • Ottimizzazione manuale. Per i clienti che desiderano un approccio fai-da-te, è possibile applicare tecniche di ottimizzazione individuali come la quantizzazione, la decodifica speculativa e la compilazione. Scegliete quali tecniche applicare, eseguite lavori di ottimizzazione e valutate voi stessi i risultati. Dopo aver ottimizzato il modello, puoi eseguire una valutazione per visualizzare le metriche prestazionali relative a latenza, throughput e prezzo.

Per molti modelli, l' SageMaker intelligenza artificiale fornisce anche diverse versioni preottimizzate, ognuna delle quali soddisfa le diverse esigenze delle applicazioni in termini di latenza e produttività. Per tali modelli, è possibile implementare una delle versioni ottimizzate senza dover prima ottimizzare il modello autonomamente.

Tecniche di ottimizzazione

Amazon SageMaker AI supporta le seguenti tecniche di ottimizzazione.

Compilazione

La compilazione ottimizza il modello per ottenere le migliori prestazioni disponibili sul tipo di hardware scelto senza compromettere la precisione. Puoi applicare la compilazione di modelli per ottimizzare gli LLM per hardware accelerato, come istanze GPU, istanze AWS Trainium o istanze Inferentia. AWS

Quando ottimizzi un modello con la compilazione, usufruisci dei vantaggi offerti da una compilazione anticipata. I tempi di implementazione del modello e la latenza del dimensionamento automatico si riducono, perché i pesi del modello non richiedono la compilazione just-in-time quando il modello viene implementato su una nuova istanza.

Se scegli di compilare il modello per un'istanza GPU, AI utilizza la libreria per eseguire la compilazione. SageMaker TensorRT-LLM Se scegli di compilare il modello per un'istanza AWS Trainium o AWS Inferentia, l' SageMaker IA utilizza l'SDK Neuron per eseguire la AWS compilazione.

Quantizzazione

La quantizzazione è una tecnica che consente di ridurre i requisiti hardware di un modello utilizzando un tipo di dati meno preciso per i pesi e le attivazioni. Dopo aver ottimizzato un modello con la quantizzazione, è possibile ospitarlo su GPU meno costose e più disponibili. Tuttavia, il modello quantizzato potrebbe essere meno preciso del modello di origine ottimizzato.

I formati di dati supportati dall' SageMaker IA per la quantizzazione variano da modello a modello. I formati supportati sono i seguenti:

  • INT4-AWQ — Un formato di dati a 4 bit. Activation-aware La quantizzazione del peso (AWQ) è una tecnica di quantizzazione per LLM efficiente, accurata, a basso bit e basata solo sul peso.

  • FP8: Floating Point a 8 bit (FP8) è un formato a bassa precisione per numeri in virgola mobile. Bilancia l’efficienza della memoria e la precisione del modello rappresentando valori con un minor numero di bit rispetto al formato a virgola mobile FP16 standard.

  • INT8-SmoothQuant — Un formato di dati a 8 bit. SmoothQuant è un metodo di quantizzazione a precisione mista che scala le attivazioni e i pesi in modo congiunto bilanciandone gli intervalli dinamici.

Decodifica speculativa

La decodifica speculativa è una tecnica che consente di accelerare il processo di decodifica di LLM di grandi dimensioni. Ottimizza i modelli per la latenza senza compromettere la qualità del testo generato.

Questa tecnica utilizza un modello più piccolo ma più veloce, chiamato modello di bozza. Il modello di bozza genera token candidati, che vengono poi convalidati dal modello di destinazione, più grande ma più lento. A ogni iterazione, il modello di bozza genera più token candidati. Il modello di destinazione verifica i token e, se rileva che un determinato token non è accettabile, lo rifiuta e lo rigenera. Quindi, il modello di destinazione verifica i token e ne genera una piccola quantità.

Il modello di bozza è notevolmente più veloce del modello di destinazione. Genera rapidamente tutti i token e quindi li invia in batch al modello di destinazione per la verifica. Il modello di destinazione li valuta tutti in parallelo, accelerando così la risposta finale.

SageMaker L'intelligenza artificiale offre una bozza di modello predefinita che puoi utilizzare, quindi non devi crearne uno tuo. Se preferisci utilizzare il tuo modello di bozza personalizzato, l' SageMaker intelligenza artificiale supporta anche questa opzione.

Caricamento rapido dei modelli

La tecnica di caricamento rapido del modello prepara un LLM in modo che l' SageMaker IA possa caricarlo su un'istanza ML più rapidamente.

Per preparare il modello, l' SageMaker intelligenza artificiale lo suddivide in anticipo dividendolo in porzioni che possono risiedere ciascuna su una GPU separata per l'inferenza distribuita. Inoltre, l' SageMaker intelligenza artificiale memorizza i pesi del modello in blocchi di dimensioni uguali che l'IA può caricare contemporaneamente sull'istanza. SageMaker

Quando l' SageMaker intelligenza artificiale carica il modello ottimizzato sull'istanza, trasmette i pesi del modello direttamente da Amazon S3 alle GPU dell'istanza. Trasmettendo in streaming i pesi, l' SageMaker intelligenza artificiale omette diversi passaggi che normalmente sono necessari in termini di tempo. Queste fasi includono il download su disco degli artefatti del modello da Amazon S3, il caricamento degli artefatti del modello nella memoria host e lo sharding del modello sull’host prima di caricare definitivamente gli shard sulle GPU.

Dopo aver ottimizzato il modello per un caricamento più rapido, puoi implementarlo più rapidamente su un endpoint di intelligenza artificiale. SageMaker Inoltre, se configuri l’endpoint per utilizzare il dimensionamento automatico, questo aumenta orizzontalmente in modo più rapido per adattarsi all’aumento del traffico.