Notes de mise à jour pour la bibliothèque de parallélisme des SageMaker modèles - Amazon SageMaker AI

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Notes de mise à jour pour la bibliothèque de parallélisme des SageMaker modèles

Consultez les notes de publication suivantes pour suivre les dernières mises à jour de la bibliothèque de parallélisme des SageMaker modèles (SMP). Si vous avez des questions supplémentaires concernant la bibliothèque SMP, contactez l’équipe du service SMP à l’adresse sm-model-parallel-feedback@amazon.com.

La bibliothèque de parallélisme des SageMaker modèles v2.8.0

Date : 1er avril 2025

Mises à jour de la bibliothèque SMP

Corrections de bugs

  • L’écrêtage des normes de gradient SMP prend désormais en charge le déchargement d’activation.

Conteneurs SMP Docker et Enroot

L'équipe de la bibliothèque SMP distribue des conteneurs Docker en remplacement des conteneurs du SageMaker PyTorch framework. Si vous utilisez la classe d' PyTorch estimateur dans le SDK SageMaker Python et que vous spécifiez la configuration de distribution pour utiliser SMP v2, SageMaker AI récupère automatiquement les conteneurs SMP Docker. Pour utiliser cette version de SMP v2, mettez à niveau votre SDK SageMaker Python vers une version ultérieurev2.243.0.

Mises à jour des devises

  • Ajout du support pour la PyTorch version 2.5.1

  • Mise à niveau du support CUDA vers la version 12.4

  • Mise à niveau du support NCCL vers la version 2.23.4

  • Mise à niveau de la bibliothèque SMDDP vers la version 2.6.0

Détails du conteneur

  • Conteneur Docker SMP pour PyTorch v2.5.1 avec CUDA v12.4

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

    https://sagemaker-distributed-model-parallel.s3.<us-west-2>.amazonaws.com/enroot/2.5.1-gpu-py311-cu124.sqsh
  • Packages préinstallés

    • Bibliothèque SMP v2.8.0

    • Bibliothèque SMDDP v2.6.0

    • CUDNN v9.4.0

    • FlashAttention v2.5.8

    • TransformerEngine v1.10

    • Megatron v0.8.0

    • Transformeurs Hugging Face v4.44.2

    • Bibliothèque Hugging Face de jeux de données v2.19.0

    • EFA v1.36.0

    • NCCL v2.23.4

    • AWS-OFI-NCCL v1.13.2

Canal Conda SMP

Le compartiment S3 suivant est le canal Conda public de la bibliothèque SMP, hébergé par l’équipe du service SMP. Si vous souhaitez installer la bibliothèque SMP v2 dans un environnement tel que des SageMaker HyperPod clusters, utilisez ce canal Conda pour installer correctement la bibliothèque SMP.

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

Pour plus d’informations sur les canaux Conda en général, consultez Channels dans la documentation Conda.

La bibliothèque de parallélisme des SageMaker modèles v2.7.0

Date : 04 décembre 2024

Mises à jour de la bibliothèque SMP

Nouvelles fonctionnalités

Conteneurs SMP Docker et Enroot

L'équipe de la bibliothèque SMP distribue les conteneurs Docker et Enroot en remplacement des conteneurs du SageMaker PyTorch framework. Si vous utilisez la classe d' PyTorch estimateur du SDK SageMaker Python et que vous spécifiez la configuration de distribution pour utiliser SMP v2, les conteneurs SMP SageMaker Docker sont automatiquement récupérés. Pour utiliser cette version de SMP v2, mettez à niveau votre SDK SageMaker Python vers une version ultérieurev2.237.0.

Détails du conteneur

  • Conteneur Docker SMP pour PyTorch v2.4.1 avec CUDA v12.1

    658645717510.dkr.ecr.<us-west-2>.smdistributed-modelparallel:2.4.1-gpu-py311-cu121
  • Conteneur SMP Enroot pour PyTorch v2.4.1 avec CUDA v12.1

    https://sagemaker-distributed-model-parallel.s3.<us-west-2>.amazonaws.com/enroot/2.4.1-gpu-py311-cu121.sqsh
  • Packages préinstallés

    • Bibliothèque SMP v2.7.0

    • Bibliothèque SMDDP v2.5.0

    • CUDNN v9.4.0

    • FlashAttention v2.5.8

    • TransformerEngine v1.10

    • Megatron v0.8.0

    • Transformeurs Hugging Face v4.44.2

    • Bibliothèque Hugging Face de jeux de données v2.19.0

    • EFA v1.32.0

    • NCCL v2.21.5

Canal Conda SMP

Le compartiment S3 suivant est le canal Conda public de la bibliothèque SMP, hébergé par l’équipe du service SMP. Si vous souhaitez installer la bibliothèque SMP v2 dans un environnement Conda tel que des SageMaker HyperPod clusters, utilisez ce canal Conda pour installer correctement la bibliothèque SMP.

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

Pour plus d’informations sur les canaux Conda en général, consultez Channels dans la documentation Conda.

La bibliothèque de parallélisme des SageMaker modèles v2.6.1

Date : 31 octobre 2024

Mises à jour de la bibliothèque SMP

Corrections de bugs

  • Correction d’un problème ImportError qui se produisait lors de l’utilisation d’anciens scripts d’entraînement avec SMP v2.6.0. Cela corrige la rétro-incompatibilité avec SMP v2.6.0.

  • Ajout d’un DeprecationWarning pour torch.sagemaker.distributed.fsdp.checkpoint. Ce module sera obsolète et supprimé dans SMP v2.7.0. Si vous n’utilisez actuellement pas torch.sagemaker.distributed.fsdp.checkpoint dans votre code, vous devez prévoir de mettre à jour vos scripts avant la sortie de SMP v2.7.0 afin d’éviter de futurs problèmes.

  • Correction d’un problème de rétrocompatibilité identifié dans SMP v2.6.0. Ce problème était lié à l’obsolescence de la méthode de points de contrôle USE_PG_WITH_UTIL dans SMP v2.6.0, qui a rompu la rétrocompatibilité avec les versions précédentes des scripts d’entraînement. Pour résoudre ce problème, réexécutez vos tâches de PyTorch formation afin de récupérer le dernier conteneur SMP fourni avec SMP v2.6.1.

Conteneurs Docker SMP

L'équipe de la bibliothèque SMP distribue des conteneurs Docker en remplacement des conteneurs du SageMaker PyTorch framework. Si vous utilisez la classe d' PyTorch estimateur dans le SDK SageMaker Python et que vous spécifiez la configuration de distribution pour utiliser SMP v2, SageMaker AI récupère automatiquement les conteneurs SMP Docker.

Détails du conteneur

  • Conteneur Docker SMP pour PyTorch v2.4.1 avec CUDA v12.1

    658645717510.dkr.ecr.<us-west-2>.amazonaws.com/smdistributed-modelparallel:2.4.1-gpu-py311-cu121
  • Packages préinstallés

    • Bibliothèque SMP v2.6.1

    • Bibliothèque SMDDP v2.5.0

    • CUDNN v9.4.0

    • FlashAttention v2.5.8

    • TransformerEngine v1.10

    • Megatron v0.8.0

    • Transformeurs Hugging Face v4.44.2

    • Bibliothèque Hugging Face de jeux de données v2.19.0

    • EFA v1.32.0

    • NCCL v2.21.5

Canal Conda SMP

Le compartiment S3 suivant est le canal Conda public de la bibliothèque SMP, hébergé par l’équipe du service SMP. Si vous souhaitez installer la bibliothèque SMP v2 dans un environnement de ressources de calcul hautement personnalisables telles que des SageMaker HyperPod clusters, utilisez ce canal Conda pour installer correctement la bibliothèque SMP.

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

Pour plus d’informations sur les canaux Conda en général, consultez Channels dans la documentation Conda.

La bibliothèque de parallélisme des SageMaker modèles v2.6.0

Date : 17 octobre 2024

Mises à jour de la bibliothèque SMP

Nouvelles fonctionnalités

  • Ajout de la prise en charge des configurations de modèles LLM suivantes. Vous pouvez commencer à utiliser le Parallélisme de contexte et le Parallélisme de tenseur.

  • Ajout de la prise en charge du Parallélisme de tenseur pour les configurations des modèles Mixtral suivants.

  • Ajout de la prise en charge d'une implémentation AllGather basée sur le parallélisme contextuel qui utilise le collectif de AllGather communication pour obtenir la séquence complète des tenseurs. key-and-value Les implémentations disponibles sont p2p et all_gather. L'p2pimplémentation utilise des appels d' peer-to-peerenvoi/réception pour l'accumulation de tenseurs key-and-value (KV) pendant le calcul de l'attention, s'exécutant de manière asynchrone et permettant à la communication de se chevaucher avec le calcul. D’autre part, l’implémentation all_gather utilise l’opération de communication collective AllGather pour l’accumulation de tenseurs KV. Pour découvrir comment appliquer ces implémentations de parallélisme de contexte, consultez Parallélisme de contexte.

  • Ajout du support pour le réglage de la valeur thêta de la vectorisation de la position rotative (RoPE).

Corrections de bugs

  • Correction du bogue en raison duquel la vectorisation de la position rotative (RoPE) n’est pas correctement initialisée pendant le pré-entraînement lorsque le paramètre différé est activé.

Problèmes connus

  • Transformer Engine ne prend actuellement pas en charge le parallélisme contextuel ou l'activation de l'attention FP8 à la fenêtre coulissante. Ainsi, la version SMP des transformateurs Mistral ne prend pas en charge le parallélisme contextuel ni l' FP8 apprentissage lorsque la configuration des fenêtres coulissantes est définie sur une valeur non nulle.

Conteneurs Docker SMP

L'équipe de la bibliothèque SMP distribue des conteneurs Docker en remplacement des conteneurs du SageMaker PyTorch framework. Si vous utilisez la classe d' PyTorch estimateur dans le SDK SageMaker Python et que vous spécifiez la configuration de distribution pour utiliser SMP v2, SageMaker AI récupère automatiquement les conteneurs SMP Docker.

Mises à jour des devises

  • Mise à niveau PyTorch vers la version 2.4.1

  • Mise à niveau de Megatron vers la version 0.8.0

  • Mise à niveau de la TransformerEngine bibliothèque vers la version v1.10

  • Mise à niveau de Transformers vers la version 4.44.2

  • Mise à niveau de cuDNN vers la version 9.4.0.58

Détails du conteneur

  • Conteneur Docker SMP pour PyTorch v2.4.1 avec CUDA v12.1

    658645717510.dkr.ecr.<us-west-2>.amazonaws.com/smdistributed-modelparallel:2.4.1-gpu-py311-cu121
  • Packages préinstallés

    • Bibliothèque SMP v2.6.0

    • Bibliothèque SMDDP v2.5.0

    • CUDNN v9.4.0

    • FlashAttention v2.5.8

    • TransformerEngine v1.10

    • Megatron v0.8.0

    • Transformeurs Hugging Face v4.44.2

    • Bibliothèque Hugging Face de jeux de données v2.19.0

    • EFA v1.32.0

    • NCCL v2.21.5

Canal Conda SMP

Le compartiment S3 suivant est le canal Conda public de la bibliothèque SMP, hébergé par l’équipe du service SMP. Si vous souhaitez installer la bibliothèque SMP v2 dans un environnement de ressources de calcul hautement personnalisables telles que des SageMaker HyperPod clusters, utilisez ce canal Conda pour installer correctement la bibliothèque SMP.

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

Pour plus d’informations sur les canaux Conda en général, consultez Channels dans la documentation Conda.

La bibliothèque de parallélisme des SageMaker modèles v2.5.0

Date : 28 août 2024

Mises à jour de la bibliothèque SMP

Nouvelles fonctionnalités

  • Ajout de la prise en charge de l'entraînement à précision mixte utilisant le format de FP8 données sur les instances P5 pour le modèle Mixtral.

  • Ajout de la prise en charge du Parallélisme de contexte pour les configurations des modèles suivants.

    • Llama-v2 : 7B et 70B

    • Llama-v3 : 8B et 70B

    • GPT-NeoX : 20B

  • Ajout de la prise en charge de l’enregistrement des points de contrôle de façon asynchrone. Pour en savoir plus, consultez Points de contrôle à l’aide de la SMP.

    • Prise en charge de l’enregistrement des points de contrôle directement dans S3 sans utiliser Amazon EBS ni des serveurs de fichiers.

Corrections de bugs

  • Résolution d’un problème qui provoquait une perte initiale étonnamment élevée pendant le peaufinage de Llama lors du chargement d’un point de contrôle de modèle pré-entraîné et de l’utilisation du parallélisme de tenseur.

Remarques

  • Pour utiliser le point de contrôle d'activation pour Mixtral avec une précision FP8 mixte, vous devez contrôler séparément la couche d'attention et la couche experte. Pour un exemple de configuration correcte, consultez l'exemple de script d'entraînement dans le référentiel Amazon SageMaker AI Examples.

Problèmes connus

  • Le type d’équilibrage de charge équilibré dans la configuration MoE (torch.sagemaker.moe.moe_config.MoEConfig) est actuellement incompatible avec les points de contrôle d’activation.

  • Avec le parallélisme de contexte, GPT-NeoX montre une régression des performances à la fois lors du pré-entraînement et lors du peaufinage.

  • Pour les instances GPT-NeoX sur P4, le chargement direct de poids à partir d’un modèle transformé initialisé à paramètres différés dans un modèle de transformeur Hugging Face entraîne un décalage de perte lors de la première étape.

Conteneurs Docker SMP

L'équipe de la bibliothèque SMP distribue des conteneurs Docker en remplacement des conteneurs du SageMaker PyTorch framework. Si vous utilisez la classe d' PyTorch estimateur dans le SDK SageMaker Python et que vous spécifiez la configuration de distribution pour utiliser SMP v2, SageMaker AI récupère automatiquement les conteneurs SMP Docker. Pour utiliser cette version de SMP v2, mettez à niveau votre SDK SageMaker Python vers la version 2.224.0 ou ultérieure.

Mises à jour des devises

  • Mise à niveau de la FlashAttention bibliothèque vers la version 2.5.8

  • Mise à niveau de la bibliothèque Transformer Engine vers la version 1.8

    • Si vous souhaitez installer Transformer Engine dans un environnement Conda, vous devez générer un build à partir du code source et sélectionner manuellement les correctifs spécifiques en amont (744624d, 27c6342, 7669bf3).

Détails du conteneur

  • Conteneur Docker SMP pour PyTorch v2.3.1 avec CUDA v12.1

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

    Pour obtenir la liste complète des régions prises en charge, consultez Régions AWS.

  • Packages préinstallés

    • Bibliothèque SMP v2.5.0

    • Bibliothèque SMDDP v2.3.0

    • CUDNN v8.9.7.29

    • FlashAttention v2.5.8

    • TransformerEngine v1.8

    • Megatron v0.7.0

    • Transformeurs Hugging Face v4.40.1

    • Bibliothèque Hugging Face de jeux de données v2.19.0

    • EFA v1.32.0

    • NCCL v2.21.5

Canal Conda SMP

Le compartiment S3 suivant est le canal Conda public de la bibliothèque SMP, hébergé par l’équipe du service SMP. Si vous souhaitez installer la bibliothèque SMP v2 dans un environnement de ressources de calcul hautement personnalisables telles que des SageMaker HyperPod clusters, utilisez ce canal Conda pour installer correctement la bibliothèque SMP.

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

Pour plus d’informations sur les canaux Conda en général, consultez Channels dans la documentation Conda.

La bibliothèque de parallélisme des SageMaker modèles v2.4.0

Date : 20 juin 2024

Mises à jour de la bibliothèque SMP

Corrections de bugs

  • Correction d’un bogue qui provoquait des formes logit incorrectes lorsque les étiquettes ne sont pas transmises lors de la transmission vers l’avant à l’aide du transformeur SMP.

Mises à jour des devises

  • Ajout du support pour la PyTorch version 2.3.1.

  • Ajout de la prise en charge de Python 3.11.

  • Ajout de la prise en charge de la bibliothèque des transformeurs Hugging Face v4.40.1.

Dépréciations

  • Arrêt de la prise en charge de Python v3.10.

  • Arrêt de la prise en charge des versions de la bibliothèque des transformeurs Hugging Face antérieures à v4.40.1.

Autres modifications

  • Inclusion d’un patch pour basculer l’enregistrement des tenseurs dédupliqués sur différents rangs. Pour en savoir plus, consultez le fil de discussion dans le PyTorch GitHub référentiel.

Problèmes connus

  • Il existe un problème connu selon lequel la perte peut connaître un pic, puis reprendre à une valeur de perte plus élevée pendant le peaufinage du modèle Llama-3 70B avec le parallélisme de tenseur.

Conteneurs Docker SMP

L'équipe de la bibliothèque SMP distribue des conteneurs Docker en remplacement des conteneurs du SageMaker PyTorch framework. Si vous utilisez la classe d' PyTorch estimateur dans le SDK SageMaker Python et que vous spécifiez la configuration de distribution pour utiliser SMP v2, SageMaker AI récupère automatiquement les conteneurs SMP Docker. Pour utiliser cette version de SMP v2, mettez à niveau votre SDK SageMaker Python vers la version 2.224.0 ou ultérieure.

Mises à jour des devises

  • Mise à niveau de la bibliothèque SMDDP vers la version 2.3.0.

  • Mise à niveau de la bibliothèque NCCL vers la version 2.21.5.

  • Mise à niveau du logiciel EFA vers la version v1.32.0.

Dépréciations

Détails du conteneur

  • Conteneur Docker SMP pour PyTorch v2.3.1 avec CUDA v12.1

    658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.3.1-gpu-py311-cu121
  • Packages préinstallés

    • Bibliothèque SMP v2.4.0

    • Bibliothèque SMDDP v2.3.0

    • CUDNN v8.9.7.29

    • FlashAttention v2.3.3

    • TransformerEngine v1.2.1

    • Transformeurs Hugging Face v4.40.1

    • Bibliothèque Hugging Face de jeux de données v2.19.0

    • EFA v1.32.0

    • NCCL v2.21.5

Canal Conda SMP

Le compartiment S3 suivant est le canal Conda public de la bibliothèque SMP, hébergé par l’équipe du service SMP. Si vous souhaitez installer la bibliothèque SMP v2 dans un environnement de ressources de calcul hautement personnalisables telles que des SageMaker HyperPod clusters, utilisez ce canal Conda pour installer correctement la bibliothèque SMP.

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

Pour plus d’informations sur les canaux Conda en général, consultez Channels dans la documentation Conda.

La bibliothèque de parallélisme des SageMaker modèles v2.3.1

Date : 9 mai 2024

Corrections de bugs

  • Correction d’un problème ImportError lors de l’utilisation de moe_load_balancing=balanced dans torch.sagemaker.moe.moe_config.MoEConfig pour le parallélisme expert.

  • Correction d’un problème de peaufinage en raison duquel l’appel torch.sagemaker.transform génère KeyError quand load_state_dict_from_rank0 est activé.

  • Correction d'une erreur out-of-memory (OOM) générée lors du chargement de grands modèles Mixture of Experts (MoE), tels que Mixtral 8x22B, pour un réglage précis.

Conteneurs Docker SMP

L'équipe de la bibliothèque SMP distribue des conteneurs Docker en remplacement des conteneurs du SageMaker PyTorch framework. Cette version intègre les corrections de bogues susmentionnées dans l’image Docker SMP suivante.

  • Conteneur Docker SMP pour PyTorch v2.2.0 avec CUDA v12.1

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

La bibliothèque de parallélisme des SageMaker modèles v2.3.0

Date : 11 avril 2024

Nouvelles fonctionnalités

  • Ajout d’une nouvelle caractéristique de base, le parallélisme expert, pour prendre en charge les modèles de transformeurs MoE. Pour en savoir plus, consultez Parallélisme expert.

Conteneurs Docker SMP

L'équipe de la bibliothèque SMP distribue des conteneurs Docker en remplacement des conteneurs du SageMaker PyTorch framework. Si vous utilisez la classe d' PyTorch estimateur du SDK SageMaker Python et que vous spécifiez la configuration de distribution pour utiliser SMP v2, les conteneurs SMP SageMaker Docker sont automatiquement récupérés. Pour utiliser cette version de SMP v2, mettez à niveau votre SDK SageMaker Python vers la version 2.214.4 ou ultérieure.

  • Conteneur Docker SMP pour PyTorch v2.2.0 avec CUDA v12.1

    658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.2.0-gpu-py310-cu121
    • Packages préinstallés dans ce conteneur Docker

      • Bibliothèque SMDDP v2.2.0

      • CUDNN v8.9.5.29

      • FlashAttention v2.3.3

      • TransformerEngine v1.2.1

      • Transformeurs Hugging Face v4.37.1

      • Bibliothèque Hugging Face de jeux de données v2.16.1

      • Megatron-core 0.5.0

      • EFA v1.30.0

      • NCCL v2.19.4

La bibliothèque de parallélisme des SageMaker modèles v2.2.0

Date : 07 mars 2024

Nouvelles fonctionnalités

  • Ajout de la prise en charge de l'FP8 entraînement des modèles de transformateurs Hugging Face suivants sur des instances P5 avec intégration de Transformer Engine :

    • GPT-NeoX

    • Llama 2

Correctifs de bogue

  • Correction d’un bogue en raison duquel la contiguïté des tenseurs n’était pas garantie avant l’appel collectif AllGather lors de l’entraînement de parallélisme de tenseur.

Mises à jour monétaires

  • Ajout du support pour la PyTorch version 2.2.0.

  • Mise à niveau de la bibliothèque SMDDP vers la version 2.2.0.

  • Mise à niveau de la FlashAttention bibliothèque vers la version 2.3.3.

  • Mise à niveau de la bibliothèque NCCL vers la version 2.19.4.

Obsolète

  • Arrêt de la prise en charge des versions de Transformer Engine antérieures à la version 1.2.0.

Problèmes connus

  • La caractéristique Déchargement d’activation SMP ne fonctionne pas actuellement. Utilisez plutôt le déchargement PyTorch d'activation natif.

Autres modifications

Conteneurs Docker SMP

L'équipe de la bibliothèque SMP distribue des conteneurs Docker en remplacement des conteneurs du SageMaker PyTorch framework. Si vous utilisez la classe d' PyTorch estimateur dans le SDK SageMaker Python et que vous spécifiez la configuration de distribution pour utiliser SMP v2, SageMaker AI récupère automatiquement les conteneurs SMP Docker. Pour utiliser cette version de SMP v2, mettez à niveau votre SDK SageMaker Python vers la version 2.212.0 ou ultérieure.

  • Conteneur Docker SMP pour PyTorch v2.2.0 avec CUDA v12.1

    658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.2.0-gpu-py310-cu121
    • Disponible pour les instances P4d, P4de et P5

    • Packages préinstallés dans ce conteneur Docker

      • Bibliothèque SMDDP v2.2.0

      • CUDNN v8.9.5.29

      • FlashAttention v2.3.3

      • TransformerEngine v1.2.1

      • Transformeurs Hugging Face v4.37.1

      • Bibliothèque Hugging Face de jeux de données v2.16.1

      • EFA v1.30.0

      • NCCL v2.19.4

La bibliothèque de parallélisme des SageMaker modèles v2.1.0

Date : 6 février 2024

Mises à jour monétaires

  • Ajout du support pour la PyTorch version 2.1.2.

Obsolète

  • Arrêt de la prise en charge des transformeurs Hugging Face v4.31.0.

Problèmes connus

  • Il a été découvert que le peaufinage du modèle Llama 2 Hugging Face avec attn_implementation=flash_attention_2 et FSDP entraîne une divergence du modèle. Pour référence, consultez le ticket d'émission dans le référentiel Hugging Face GitHub Transformers. Pour éviter le problème de divergence, utilisez attn_implementation=sdpa. Autrement, utilisez l’implémentation du modèle de transformeur SMP en configurant use_smp_implementation=True.

Conteneurs Docker SMP

L'équipe de la bibliothèque SMP distribue des conteneurs Docker en remplacement des conteneurs du SageMaker PyTorch framework. Si vous utilisez la classe d' PyTorch estimateur du SDK SageMaker Python et que vous spécifiez la configuration de distribution pour utiliser SMP v2, les conteneurs SMP SageMaker Docker sont automatiquement récupérés. Pour utiliser cette version de SMP v2, mettez à niveau votre SDK SageMaker Python vers la version 2.207.0 ou ultérieure.

  • Conteneur Docker SMP pour PyTorch v2.1.2 avec CUDA v12.1

    658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.1.2-gpu-py310-cu121
    • Disponible pour les instances P4d, P4de et P5

    • Packages préinstallés dans ce conteneur Docker

      • Bibliothèque SMDDP v2.1.0

      • CUDNN v8.9.5.29

      • FlashAttention v2.3.3

      • TransformerEngine v1.2.1

      • Transformeurs Hugging Face v4.37.1

      • Bibliothèque Hugging Face de jeux de données v2.16.1

      • EFA v1.30.0

Canal Conda SMP

Le compartiment S3 suivant est le canal Conda public hébergé par l’équipe du service SMP. Si vous souhaitez installer la bibliothèque SMP v2 dans un environnement de ressources de calcul hautement personnalisables telles que des SageMaker HyperPod clusters, utilisez ce canal Conda pour installer correctement la bibliothèque SMP.

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

Pour plus d’informations sur les canaux Conda en général, consultez Channels dans la documentation Conda.

La bibliothèque de parallélisme des SageMaker modèles v2.0.0

Date : 19 décembre 2023

Nouvelles fonctionnalités

Publication de la bibliothèque de parallélisme des SageMaker modèles (SMP) v2.0.0 avec les nouvelles offres suivantes.

  • Un nouveau package torch.sagemaker, entièrement remanié par rapport au package smdistributed.modelparallel.torch précédent dans SMP v1.x.

  • Support pour la version PyTorch 2.0.1.

  • Support pour le PyTorch FSDP.

  • Implémentation du parallélisme de tenseur en intégrant la bibliothèque Transformer Engine.

  • Support à la fois pour SageMaker la formation et SageMaker HyperPod.

Évolutions

  • SMP v2 l'a APIs entièrement remanié et fournit le package. torch.sagemaker La plupart du temps, il suffit d’initialiser avec le module torch.sagemaker.init() et de transmettre les paramètres de configuration du parallélisme des modèles. Avec ce nouveau package, vous pouvez considérablement simplifier les modifications de code dans votre script d’entraînement. Pour en savoir plus sur l’adaptation de votre script d’entraînement pour utiliser SMP v2, consultez Utiliser la bibliothèque de parallélisme des SageMaker modèles v2.

  • Si vous avez utilisé SMP v1 pour entraîner des modèles de transformeur Hugging Face et que vous souhaitez réutiliser les modèles dans SMP v2, consultez Mise à niveau de SMP v1 vers SMP v2.

  • Pour la formation PyTorch FSDP, vous devez utiliser le SMP v2.

Problèmes connus

  • Les points de contrôle d’activation ne fonctionnent actuellement qu’avec les politiques d’encapsulation suivantes avec FSDP.

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

  • Pour utiliser Déchargement d’activation, le type des points de contrôle d’activation FSDP doit être REENTRANT.

  • Lors d’une exécution avec le parallélisme de tenseur activé et le degré de parallélisme partitionné des données défini sur 1, vous devez utiliser backend = nccl. L’option de système dorsal smddp n’est pas prise en charge dans ce scénario.

  • Transformer Engine doit être utilisé PyTorch avec la bibliothèque SMP même si le parallélisme des tenseurs n'est pas utilisé.

Autres modifications

Dépréciations

  • Support interrompu pour TensorFlow.

  • Le parallélisme de pipeline n’est pas pris en charge dans SMP v2.

  • La DeepSpeed bibliothèque n'est pas prise en charge en faveur du PyTorch FSDP natif.

Conteneurs Docker SMP

L'équipe de la bibliothèque SMP distribue des conteneurs Docker en remplacement des conteneurs du SageMaker PyTorch framework. Si vous utilisez la classe d' PyTorch estimateur dans le SDK SageMaker Python et que vous spécifiez la configuration de distribution pour utiliser SMP v2, SageMaker AI récupère automatiquement les conteneurs SMP Docker. Pour utiliser cette version de SMP v2, mettez à niveau votre SDK SageMaker Python vers la version 2.207.0 ou ultérieure.

  • Conteneur Docker SMP pour PyTorch v2.0.1 avec CUDA v12.1

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