Note di rilascio della libreria SageMaker Model Parallelism. - 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à.

Note di rilascio della libreria SageMaker Model Parallelism.

Consulta le seguenti note di rilascio per tracciare gli ultimi aggiornamenti per la libreria SageMaker Model Parallelism (SMP). Se hai altre domande sulla libreria SMP, contatta il team di assistenza SMP all’indirizzo sm-model-parallel-feedback@amazon.com.

Libreria SageMaker Model Parallelism v2.8.0

Data: 01 aprile 2025

Aggiornamenti della libreria SMP

Correzioni di bug

  • Il clipping della norma del gradiente di SMP ora supporta l’offload di attivazione.

Container Docker ed Enroot di SMP

Il team della libreria SMP distribuisce i container Docker in sostituzione dei container dei framework SageMaker PyTorch. Se si utilizza la classe dello strumento di stima PyTorch in SageMaker Python SDK e si specifica la configurazione dell’implementazione per utilizzare SMP v2, SageMaker AI rende automaticamente effettivi i container Docker di SMP. Per utilizzare questa versione di SMP v2, aggiorna il SageMaker Python SDK a v2.243.0 o versioni successive.

Aggiornamenti sulla valuta

  • Aggiunta del supporto per PyTorch v2.5.1

  • Supporto CUDA aggiornato alla v12.4

  • Supporto NCCL aggiornato alla v2.23.4

  • Libreria SMDDP aggiornata alla v2.6.0

Dettagli container

  • Container Docker di SMP per PyTorch v2.5.1 con CUDA v12.4

    658645717510.dkr.ecr.<us-west-2>.amazonaws.com/smdistributed-modelparallel:2.5.1-gpu-py311-cu124
  • Container Enroot di SMP per PyTorch v2.5.1 con CUDA v12.4

    https://sagemaker-distributed-model-parallel.s3.<us-west-2>.amazonaws.com/enroot/2.5.1-gpu-py311-cu124.sqsh
  • Pacchetti preinstallati

    • Libreria SMP v2.8.0

    • Libreria SMDDP v2.6.0

    • CUDNN v9.4.0

    • FlashAttention v2.5.8

    • TransformerEngine v1.10

    • Megatron v0.8.0

    • Hugging Face Transformers v4.44.2

    • Libreria Hugging Face Datasets v2.19.0

    • EFA v1.36.0

    • NCCL v2.23.4

    • AWS-OFI-NCCL v1.13.2

Canale Conda di SMP

Il seguente bucket S3 è il canale Conda pubblico della libreria SMP ospitata dal team di assistenza SMP. Se desideri installare la libreria SMP v2 in un ambiente come i cluster SageMaker HyperPod, utilizza questo canale Conda per eseguirne correttamente l’installazione.

  • https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/

Per ulteriori informazioni sui canali Conda in generale, consulta Canali nella documentazione di Conda.

Libreria SageMaker Model Parallelism v2.7.0

Data: 04 dicembre 2024

Aggiornamenti della libreria SMP

Nuove funzionalità

Container Docker ed Enroot di SMP

Il team della libreria SMP distribuisce i container Docker ed Enroot in sostituzione dei container dei framework SageMaker PyTorch. Se si utilizza la classe dello strumento di stima PyTorch in SageMaker Python SDK e si specifica la configurazione dell’implementazione per utilizzare SMP v2, SageMaker rende automaticamente effettivi i container Docker di SMP. Per utilizzare questa versione di SMP v2, aggiorna il SageMaker Python SDK a v2.237.0 o versioni successive.

Dettagli container

  • Container Docker di SMP per PyTorch v2.4.1 con CUDA v12.1

    658645717510.dkr.ecr.<us-west-2>.smdistributed-modelparallel:2.4.1-gpu-py311-cu121
  • Container Enroot di SMP per PyTorch v2.4.1 con CUDA v12.1

    https://sagemaker-distributed-model-parallel.s3.<us-west-2>.amazonaws.com/enroot/2.4.1-gpu-py311-cu121.sqsh
  • Pacchetti preinstallati

    • Libreria SMP v2.7.0

    • Libreria SMDDP v2.5.0

    • CUDNN v9.4.0

    • FlashAttention v2.5.8

    • TransformerEngine v1.10

    • Megatron v0.8.0

    • Hugging Face Transformers v4.44.2

    • Libreria Hugging Face Datasets v2.19.0

    • EFA v1.32.0

    • NCCL v2.21.5

Canale Conda di SMP

Il seguente bucket S3 è il canale Conda pubblico della libreria SMP ospitata dal team di assistenza SMP. Se desideri installare la libreria SMP v2 in un ambiente Conda come i cluster SageMaker HyperPod, utilizza questo canale Conda per installare correttamente la libreria SMP.

  • https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/

Per ulteriori informazioni sui canali Conda in generale, consulta Canali nella documentazione di Conda.

Libreria SageMaker Model Parallelism v2.6.1

Data: 31 ottobre 2024

Aggiornamenti della libreria SMP

Correzioni di bug

  • Risoluzione di un problema ImportError che si verificava durante l’utilizzo di script di addestramento precedenti con SMP v2.6.0. Questo corregge l’incompatibilità con le precedenti versioni di SMP v2.6.0.

  • Aggiunta di un DeprecationWarning per torch.sagemaker.distributed.fsdp.checkpoint. Questo modulo diventerà obsoleto e sarà rimosso in SMP v2.7.0. Se al momento stai utilizzando torch.sagemaker.distributed.fsdp.checkpoint nel tuo codice, dovresti pianificare l’aggiornamento degli script prima del rilascio di SMP v2.7.0 per evitare problemi futuri.

  • Risoluzione di un problema di compatibilità con le versioni precedenti identificato in SMP v2.6.0. Questo problema era correlato all’obsolescenza del metodo di checkpoint USE_PG_WITH_UTIL in SMP v2.6.0, che comprometteva la compatibilità con le versioni precedenti degli script di addestramento. Per risolvere il problema, esegui nuovamente i job di addestramento su PyTorch per ritirare l’ultimo container SMP fornito con SMP v2.6.1.

Container Docker di SMP

Il team della libreria SMP distribuisce i container Docker in sostituzione dei container dei framework SageMaker PyTorch. Se si utilizza la classe dello strumento di stima PyTorch in SageMaker Python SDK e si specifica la configurazione dell’implementazione per utilizzare SMP v2, SageMaker AI rende automaticamente effettivi i container Docker di SMP.

Dettagli container

  • Container Docker di SMP per PyTorch v2.4.1 con CUDA v12.1

    658645717510.dkr.ecr.<us-west-2>.amazonaws.com/smdistributed-modelparallel:2.4.1-gpu-py311-cu121
  • Pacchetti preinstallati

    • Libreria SMP v2.6.1

    • Libreria SMDDP v2.5.0

    • CUDNN v9.4.0

    • FlashAttention v2.5.8

    • TransformerEngine v1.10

    • Megatron v0.8.0

    • Hugging Face Transformers v4.44.2

    • Libreria Hugging Face Datasets v2.19.0

    • EFA v1.32.0

    • NCCL v2.21.5

Canale Conda di SMP

Il seguente bucket S3 è il canale Conda pubblico della libreria SMP ospitata dal team di assistenza SMP. Se desideri installare la libreria SMP v2 in un ambiente di risorse di calcolo altamente personalizzabili come i cluster SageMaker HyperPod, utilizza questo canale Conda per eseguirne correttamente l’installazione.

  • https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/

Per ulteriori informazioni sui canali Conda in generale, consulta Canali nella documentazione di Conda.

Libreria SageMaker Model Parallelism v2.6.0

Data: 17 ottobre 2024

Aggiornamenti della libreria SMP

Nuove funzionalità

  • Aggiunta del supporto per le seguenti configurazioni del modello LLM. Puoi iniziare a utilizzare Parallelizzazione del contesto e Parallelizzazione tensoriale.

  • Aggiunta del supporto di Parallelizzazione tensoriale per le seguenti configurazioni del modello Mixtral.

  • Aggiunta del supporto per l’implementazione della parallelizzazione del contesto basata su AllGather che utilizza l’operazione collettiva di comunicazione AllGather per ottenere la sequenza completa di tensori chiave-valore. Le implementazioni disponibili sono p2p e all_gather. L’implementazione p2p utilizza chiamate di invio e ricezione peer-to-peer per l’accumulo di tensori chiave-valore (KV) durante il calcolo dell’attenzione e viene eseguita in modo asincrono, consentendo sovrapposizioni con il calcolo. L’implementazione all_gather utilizza invece l’operazione collettiva di comunicazione AllGather per l’accumulo di tensori KV. Per informazioni su come applicare l’implementazione della parallelizzazione del contesto, consulta Parallelizzazione del contesto.

  • Aggiunta del supporto per l’ottimizzazione del valore theta del Rotary Position Embedding (RoPE).

Correzioni di bug

  • Risoluzione di un bug che impediva la corretta inizializzazione del Rotary Position Embedding (RoPE) durante il preaddestramento quando il parametro di ritardo era abilitato.

Problemi noti

  • Transformer Engine attualmente non supporta la parallelizzazione del contesto o l’FP8 con l’attenzione alla finestra scorrevole abilitata. Pertanto, la versione SMP dei trasformatori Mistral non supporta la parallelizzazione del contesto o l’addestramento FP8 quando la configurazione della finestra scorrevole è impostata su un valore non nullo.

Container Docker di SMP

Il team della libreria SMP distribuisce i container Docker in sostituzione dei container dei framework SageMaker PyTorch. Se si utilizza la classe dello strumento di stima PyTorch in SageMaker Python SDK e si specifica la configurazione dell’implementazione per utilizzare SMP v2, SageMaker AI rende automaticamente effettivi i container Docker di SMP.

Aggiornamenti sulla valuta

  • PyTorch aggiornato alla v2.4.1

  • Megatron aggiornato alla v0.8.0

  • Libreria Transformer Engine aggiornata alla v1.10

  • Transformer aggiornati alla v4.44.2

  • cuDNN aggiornato alla v9.4.0.58

Dettagli container

  • Container Docker di SMP per PyTorch v2.4.1 con CUDA v12.1

    658645717510.dkr.ecr.<us-west-2>.amazonaws.com/smdistributed-modelparallel:2.4.1-gpu-py311-cu121
  • Pacchetti preinstallati

    • Libreria SMP v2.6.0

    • Libreria SMDDP v2.5.0

    • CUDNN v9.4.0

    • FlashAttention v2.5.8

    • TransformerEngine v1.10

    • Megatron v0.8.0

    • Hugging Face Transformers v4.44.2

    • Libreria Hugging Face Datasets v2.19.0

    • EFA v1.32.0

    • NCCL v2.21.5

Canale Conda di SMP

Il seguente bucket S3 è il canale Conda pubblico della libreria SMP ospitata dal team di assistenza SMP. Se desideri installare la libreria SMP v2 in un ambiente di risorse di calcolo altamente personalizzabili come i cluster SageMaker HyperPod, utilizza questo canale Conda per eseguirne correttamente l’installazione.

  • https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/

Per ulteriori informazioni sui canali Conda in generale, consulta Canali nella documentazione di Conda.

Libreria SageMaker Model Parallelism v2.5.0

Data: 28 agosto 2024

Aggiornamenti della libreria SMP

Nuove funzionalità

Correzioni di bug

  • Risoluzione di un problema che causava una perdita iniziale inaspettatamente elevata durante il fine-tuning di Llama durante il caricamento di un checkpoint del modello preaddestrato e l’utilizzo della parallelizzazione tensoriale.

Note

  • Per utilizzare il checkpoint di attivazione per Mixtral con precisione mista FP8, è necessario eseguire separatamente il checkpoint dei livelli Attenzione ed Esperto. Per un esempio di configurazione corretta, consulta lo script di addestramento di esempio nel repository Amazon SageMaker AI Examples.

Problemi noti

  • Il tipo di bilanciamento del carico bilanciato nella configurazione MoE (torch.sagemaker.moe.moe_config.MoEConfig) è attualmente incompatibile con il checkpoint di attivazione.

  • Con la parallelizzazione del contesto, GPT-NeoX mostra una regressione delle prestazioni sia durante il preaddestramento che durante il fine-tuning.

  • Per quanto riguarda GPT-NeoX su istanze P4, il caricamento diretto dei pesi da un modello trasformato inizializzato con il parametro di ritardo in un modello di trasformatore Hugging Face comporta una discrepanza nelle perdite durante la prima fase.

Container Docker di SMP

Il team della libreria SMP distribuisce i container Docker in sostituzione dei container dei framework SageMaker PyTorch. Se si utilizza la classe dello strumento di stima PyTorch in SageMaker Python SDK e si specifica la configurazione dell’implementazione per utilizzare SMP v2, SageMaker AI rende automaticamente effettivi i container Docker di SMP. Per utilizzare questa versione di SMP v2, aggiorna il SageMaker Python SDK a v2.224.0 o versioni successive.

Aggiornamenti sulla valuta

  • Libreria FlashAttention aggiornata alla v2.5.8

  • Libreria Transformer Engine aggiornata alla v1.8

    • Se desideri installare Transformer Engine in un ambiente Conda, devi compilarlo dalla sorgente e selezionare le correzioni upstream specifiche (744624d, 27c6342, 7669bf3).

Dettagli container

  • Container Docker di SMP per PyTorch v2.3.1 con CUDA v12.1

    658645717510.dkr.ecr.<region>.amazonaws.com/smdistributed-modelparallel:2.3.1-gpu-py311-cu121

    Per un elenco completo delle aree supportate, vedere Regioni AWS.

  • Pacchetti preinstallati

    • Libreria SMP v2.5.0

    • Libreria SMDDP v2.3.0

    • CUDNN v8.9.7.29

    • FlashAttention v2.5.8

    • TransformerEngine v1.8

    • Megatron v0.7.0

    • Hugging Face Transformers v4.40.1

    • Libreria Hugging Face Datasets v2.19.0

    • EFA v1.32.0

    • NCCL v2.21.5

Canale Conda di SMP

Il seguente bucket S3 è il canale Conda pubblico della libreria SMP ospitata dal team di assistenza SMP. Se desideri installare la libreria SMP v2 in un ambiente di risorse di calcolo altamente personalizzabili come i cluster SageMaker HyperPod, utilizza questo canale Conda per eseguirne correttamente l’installazione.

  • https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/

Per ulteriori informazioni sui canali Conda in generale, consulta Canali nella documentazione di Conda.

Libreria SageMaker Model Parallelism v2.4.0

Data: 20 giugno 2024

Aggiornamenti della libreria SMP

Correzioni di bug

  • Correzione di un bug che causava forme di logit errate quando le etichette non venivano passate in avanti durante l’utilizzo di SMP Transformer.

Aggiornamenti sulla valuta

  • Aggiunta del supporto per PyTorch v2.3.1.

  • Aggiunta del supporto per Python v3.11.

  • Aggiunta del supporto per la libreria Hugging Face Transformers v4.40.1.

Raggiunta obsolescenza

  • Interruzione del supporto per Python v3.10.

  • Interruzione del supporto per le versioni della libreria Hugging Face Transformers precedenti alla v4.40.1.

Altre modifiche

  • Inclusione di una patch per attivare il salvataggio di tensori deduplicati in diverse classificazioni. Per ulteriori informazioni, consulta il thread di discussione nel repository PyTorch GitHub.

Problemi noti

  • È noto che la perdita potrebbe aumentare e poi riprendere a un valore di perdita più elevato durante il fine-tuning di Llama-3 70B con la parallelizzazione tensoriale.

Container Docker di SMP

Il team della libreria SMP distribuisce i container Docker in sostituzione dei container dei framework SageMaker PyTorch. Se si utilizza la classe dello strumento di stima PyTorch in SageMaker Python SDK e si specifica la configurazione dell’implementazione per utilizzare SMP v2, SageMaker AI rende automaticamente effettivi i container Docker di SMP. Per utilizzare questa versione di SMP v2, aggiorna il SageMaker Python SDK a v2.224.0 o versioni successive.

Aggiornamenti sulla valuta

  • Libreria SMDDP aggiornata alla v2.3.0.

  • Libreria NCCL aggiornata alla v2.21.5.

  • Software EFA aggiornato alla v1.32.0.

Raggiunta obsolescenza

Dettagli container

  • Container Docker di SMP per PyTorch v2.3.1 con CUDA v12.1

    658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.3.1-gpu-py311-cu121
  • Pacchetti preinstallati

    • Libreria SMP v2.4.0

    • Libreria SMDDP v2.3.0

    • CUDNN v8.9.7.29

    • FlashAttention v2.3.3

    • TransformerEngine v1.2.1

    • Hugging Face Transformers v4.40.1

    • Libreria Hugging Face Datasets v2.19.0

    • EFA v1.32.0

    • NCCL v2.21.5

Canale Conda di SMP

Il seguente bucket S3 è il canale Conda pubblico della libreria SMP ospitata dal team di assistenza SMP. Se desideri installare la libreria SMP v2 in un ambiente di risorse di calcolo altamente personalizzabili come i cluster SageMaker HyperPod, utilizza questo canale Conda per eseguirne correttamente l’installazione.

  • https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/

Per ulteriori informazioni sui canali Conda in generale, consulta Canali nella documentazione di Conda.

Libreria SageMaker Model Parallelism v2.3.1

Data: 9 maggio 2024

Correzioni di bug

  • Risoluzione di un problema ImportError relativo all’utilizzo di moe_load_balancing=balanced in torch.sagemaker.moe.moe_config.MoEConfig per la parallelizzazione degli esperti.

  • Risoluzione di un problema di fine-tuning nei casi in cui la chiamata torch.sagemaker.transform generava un KeyError quando load_state_dict_from_rank0 era abilitato.

  • Risoluzione di un errore di esaurimento della memoria (OOM) che si verificava durante il caricamento di modelli Mixture of Experts (MoE) di grandi dimensioni, come Mixtral 8x22B, per il fine-tuning.

Container Docker di SMP

Il team della libreria SMP distribuisce i container Docker in sostituzione dei container dei framework SageMaker PyTorch. Questa versione incorpora le correzioni di bug sopra citate nella seguente immagine Docker di SMP.

  • Container Docker di SMP per PyTorch v2.2.0 con CUDA v12.1

    658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.2.0-gpu-py310-cu121

Libreria SageMaker Model Parallelism v2.3.0

Data: 11 aprile 2024

Nuove funzionalità

  • Aggiunta di una nuova funzionalità di base, la parallelizzazione degli esperti, per supportare i modelli di trasformatori Mixture of Experts. Per ulteriori informazioni, consulta Parallelizzazione degli esperti.

Container Docker di SMP

Il team della libreria SMP distribuisce i container Docker in sostituzione dei container dei framework SageMaker PyTorch. Se si utilizza la classe dello strumento di stima PyTorch in SageMaker Python SDK e si specifica la configurazione dell’implementazione per utilizzare SMP v2, SageMaker rende automaticamente effettivi i container Docker di SMP. Per utilizzare questa versione di SMP v2, aggiorna il SageMaker Python SDK a v2.214.4 o versioni successive.

  • Container Docker di SMP per PyTorch v2.2.0 con CUDA v12.1

    658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.2.0-gpu-py310-cu121
    • Pacchetti preinstallati in questo container Docker

      • Libreria SMDDP v2.2.0

      • CUDNN v8.9.5.29

      • FlashAttention v2.3.3

      • TransformerEngine v1.2.1

      • Hugging Face Transformers v4.37.1

      • Libreria Hugging Face Datasets v2.16.1

      • Megatron-core 0.5.0

      • EFA v1.30.0

      • NCCL v2.19.4

Libreria SageMaker Model Parallelism v2.2.0

Data: 7 marzo 2024

Nuove funzionalità

  • Aggiunta del supporto per l’addestramento FP8 dei seguenti modelli di trasformatori Hugging Face su istanze P5 con integrazione di Transformer Engine:

    • GPT-Neox

    • Llama 2

Correzioni di bug

  • Risoluzione di un bug per cui non era garantito che i tensori fossero contigui prima della chiamata collettiva AllGather durante l’addestramento per la parallelizzazione tensoriale.

Aggiornamenti sulla valuta

  • Aggiunta del supporto per PyTorch v2.2.0.

  • Libreria SMDDP aggiornata alla v2.2.0.

  • Libreria FlashAttention aggiornata alla v2.3.3.

  • Libreria NCCL aggiornata alla v2.19.4.

Raggiunta obsolescenza

  • Interruzione del supporto per le versioni di Transformer Engine precedenti alla v1.2.0.

Problemi noti

  • La funzionalità Offload di attivazione di SMP al momento non funziona. Puoi utilizzare invece l’offload di attivazione nativo di PyTorch.

Altre modifiche

Container Docker di SMP

Il team della libreria SMP distribuisce i container Docker in sostituzione dei container dei framework SageMaker PyTorch. Se si utilizza la classe dello strumento di stima PyTorch in SageMaker Python SDK e si specifica la configurazione dell’implementazione per utilizzare SMP v2, SageMaker AI rende automaticamente effettivi i container Docker di SMP. Per utilizzare questa versione di SMP v2, aggiorna il SageMaker Python SDK a v2.212.0 o versioni successive.

  • Container Docker di SMP per PyTorch v2.2.0 con CUDA v12.1

    658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.2.0-gpu-py310-cu121
    • Disponibile per istanze P4d, P4de e P5

    • Pacchetti preinstallati in questo container Docker

      • Libreria SMDDP v2.2.0

      • CUDNN v8.9.5.29

      • FlashAttention v2.3.3

      • Transformer Engine v1.2.1

      • Hugging Face Transformers v4.37.1

      • Libreria Hugging Face Datasets v2.16.1

      • EFA v1.30.0

      • NCCL v2.19.4

Libreria SageMaker Model Parallelism v2.1.0

Data: 6 febbraio 2024

Aggiornamenti sulla valuta

  • Aggiunta del supporto per PyTorch v2.1.2.

Raggiunta obsolescenza

  • Interruzione del supporto per Hugging Face Transformers v4.31.0.

Problemi noti

  • Rilevamento di un problema in cui il fine-tuning di Hugging Face Llama 2 con attn_implementation=flash_attention_2 e FSDP causa la divergenza del modello. Per riferimento, consulta il ticket del problema nel repository GitHub di Hugging Face Transformers. Per evitare il problema della divergenza, utilizza attn_implementation=sdpa. In alternativa, utilizza l’implementazione del modello di trasformatore SMP configurando use_smp_implementation=True.

Container Docker di SMP

Il team della libreria SMP distribuisce i container Docker in sostituzione dei container dei framework SageMaker PyTorch. Se si utilizza la classe dello strumento di stima PyTorch in SageMaker Python SDK e si specifica la configurazione dell’implementazione per utilizzare SMP v2, SageMaker rende automaticamente effettivi i container Docker di SMP. Per utilizzare questa versione di SMP v2, aggiorna il SageMaker Python SDK a v2.207.0 o versioni successive.

  • Container Docker di SMP per PyTorch v2.1.2 con CUDA v12.1

    658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.1.2-gpu-py310-cu121
    • Disponibile per istanze P4d, P4de e P5

    • Pacchetti preinstallati in questo container Docker

      • Libreria SMDDP v2.1.0

      • CUDNN v8.9.5.29

      • FlashAttention v2.3.3

      • TransformerEngine v1.2.1

      • Hugging Face Transformers v4.37.1

      • Libreria Hugging Face Datasets v2.16.1

      • EFA v1.30.0

Canale Conda di SMP

Il seguente bucket S3 è un canale Conda pubblico ospitato dal team di assistenza SMP. Se desideri installare la libreria SMP v2 in un ambiente di risorse di calcolo altamente personalizzabili come i cluster SageMaker HyperPod, utilizza questo canale Conda per eseguirne correttamente l’installazione.

  • https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/

Per ulteriori informazioni sui canali Conda in generale, consulta Canali nella documentazione di Conda.

Libreria SageMaker Model Parallelism v2.0.0

Data: 19 dicembre 2023

Nuove funzionalità

Rilascio della libreria SageMaker Model Parallelism (SMP) v2.0.0 con le nuove offerte indicate di seguito.

  • Un pacchetto torch.sagemaker completamente rinnovato rispetto al pacchetto smdistributed.modelparallel.torch precedente di SMP v1.x.

  • Supporto per PyTorch 2.0.1.

  • Support per PyTorch FSDP.

  • Implementazione della parallelizzazione tensoriale mediante integrazione con la libreria Transformer Engine.

  • Supporto sia per SageMaker Training che per SageMaker HyperPod.

Modifiche importanti

  • SMP v2 ha completamente rinnovato le API e fornisce il pacchetto torch.sagemaker. In generale, è sufficiente eseguire l’inizializzazione con il modulo torch.sagemaker.init() e passare i parametri di configurazione della parallelizzazione dei modelli. Questo nuovo pacchetto consente di semplificare significativamente le modifiche al codice nello script di addestramento. Per ulteriori informazioni sull’adattamento dello script di addestramento per utilizzare SMP v2, consulta Utilizzo della libreria SageMaker Model Parallelism v2.

  • Se hai addestrato i modelli Hugging Face Transformer con SMP v1 e desideri riutilizzarli in SMP v2, consulta Aggiornamento da SMP v1 a SMP v2.

  • Per l’addestramento su PyTorch FSDP, dovresti utilizzare SMP v2.

Problemi noti

  • Attualmente, il checkpoint di attivazione funziona solo con le policy di wrapping con FSDP indicate di seguito.

    • auto_wrap_policy = functools.partial(transformer_auto_wrap_policy, ...)

  • Per utilizzare Offload di attivazione, il tipo di checkpoint di attivazione FSDP deve essere REENTRANT.

  • Durante l’esecuzione con la parallelizzazione dei tensori abilitata con il grado parallelo dei dati sottoposti a sharding impostato su 1, è necessario utilizzare backend = nccl. In questo scenario, l’opzione di backend smddp non è supportata.

  • Per utilizzare PyTorch con la libreria SMP, è necessario Transformer Engine anche quando non si utilizza la parallelizzazione tensoriale.

Altre modifiche

  • A partire da questa versione, la documentazione per la libreria SageMaker Model Parallelism è disponibile per intero in questa Guida per gli sviluppatori di Amazon SageMaker AI. Con l’introduzione di questa guida completa per gli sviluppatori per SMP v2 contenuta nella Guida per gli sviluppatori di Amazon SageMaker AI, il riferimento aggiuntivo per SMP v1.x nella documentazione di SageMaker AI Python SDK è obsoleto. Se hai ancora bisogno della documentazione per SMP v1.x, la guida per gli sviluppatori per SMP v1.x è disponibile all’indirizzo (Archiviata) Libreria SageMaker Model Parallelism v1.x e il riferimento alla libreria SMP Python v1.x è disponibile nella documentazione di SageMaker Python SDK v2.199.0.

Raggiunta obsolescenza

  • Interruzione del supporto per TensorFlow.

  • In SMP v2 non è previsto il supporto per la parallelizzazione delle pipeline.

  • Non è previsto il supporto per la libreria DeepSpeed a favore del PyTorch FSDP nativo.

Container Docker di SMP

Il team della libreria SMP distribuisce i container Docker in sostituzione dei container dei framework SageMaker PyTorch. Se si utilizza la classe dello strumento di stima PyTorch in SageMaker Python SDK e si specifica la configurazione dell’implementazione per utilizzare SMP v2, SageMaker AI rende automaticamente effettivi i container Docker di SMP. Per utilizzare questa versione di SMP v2, aggiorna il SageMaker Python SDK a v2.207.0 o versioni successive.

  • Container Docker di SMP per PyTorch v2.0.1 con CUDA v12.1

    658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.0.1-gpu-py310-cu121