Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Versionshinweise für die SageMaker Modellparallelitätsbibliothek
In den folgenden Versionshinweisen finden Sie die neuesten Updates für die SageMaker Modellparallelismus-Bibliothek (SMP). Wenn Sie weitere Fragen zur SMP-Bibliothek haben, wenden Sie sich an das SMP-Serviceteam unter. sm-model-parallel-feedback@amazon.com
Die SageMaker Modellparallelismus-Bibliothek v2.7.0
Datum: 4. Dezember 2024
Aktualisierungen der SMP-Bibliothek
Neue Features
-
Unterstützung für SageMaker HyperPod rezepte hinzugefügt.
SMP-Docker-Container
Das SMP-Bibliotheksteam verteilt Docker- und Enroot-Container als Ersatz für die Framework-Container. SageMaker PyTorch Wenn Sie die PyTorch Estimator-Klasse im SageMaker Python-SDK verwenden und die Verteilungskonfiguration für die Verwendung von SMP v2 angeben, SageMaker werden die SMP-Docker-Container automatisch übernommen. Um diese Version von SMP v2 zu verwenden, aktualisieren Sie Ihr SageMaker Python-SDK auf v2.237.0
oder höher.
Details zum Container
-
SMP Docker-Container für PyTorch v2.4.1 mit CUDA v12.1
658645717510.dkr.ecr.
<us-west-2>
.smdistributed-modelparallel:2.4.1-gpu-py311-cu121 -
SMP Enroot-Container für v2.4.1 mit CUDA v12.1 PyTorch
https://sagemaker-distributed-model-parallel.s3.
<us-west-2>
.amazonaws.com/enroot/2.4.1-gpu-py311-cu121.sqsh -
Vorinstallierte Pakete
-
Die SMP-Bibliothek v2.7.0
-
Die SMDDP-Bibliothek v2.5.0
-
CUDNN v9.4.0
-
FlashAttention v2.5.8
-
TransformerEngine v1.10
-
Megatron v0.8.0
-
Transformers mit umarmtem Gesicht v4.44.2
-
Hugging Face Datasets-Bibliothek v2.19.0
-
EFA v1.32.0
-
NCCL v2.21.5
-
SMP Conda-Kanal
Der folgende S3-Bucket ist der öffentliche Conda-Kanal der SMP-Bibliothek, der vom SMP-Serviceteam gehostet wird. Wenn Sie die SMP v2-Bibliothek in einer Conda-Umgebung wie SageMaker HyperPod Clustern installieren möchten, verwenden Sie diesen Conda-Kanal, um die SMP-Bibliothek ordnungsgemäß zu installieren.
-
https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/
Die SageMaker Modellparallelismus-Bibliothek v2.6.1
Datum: 31. Oktober 2024
Aktualisierungen der SMP-Bibliothek
Fehlerkorrekturen
-
Es wurde ein
ImportError
Problem behoben, das bei der Verwendung älterer Trainingsskripte mit SMP v2.6.0 auftrat. Dies behebt die Abwärtsinkompatibilität mit SMP v2.6.0. -
torch.sagemaker.distributed.fsdp.checkpoint
Ein für hinzugefügt.DeprecationWarning
Dieses Modul wird in SMP v2.7.0 nicht mehr unterstützt und entfernt. Wenn Sie derzeittorch.sagemaker.distributed.fsdp.checkpoint
in Ihrem Code verwenden, sollten Sie planen, Ihre Skripts vor der Veröffentlichung von SMP v2.7.0 zu aktualisieren, um future Probleme zu vermeiden. -
Ein in SMP v2.6.0 festgestelltes Problem mit der Abwärtskompatibilität wurde behoben. Dieses Problem stand im Zusammenhang mit der veralteten
USE_PG_WITH_UTIL
Checkpoint-Methode in SMP v2.6.0, wodurch die Abwärtskompatibilität mit früheren Versionen von Trainingsskripten beeinträchtigt wurde. Um dieses Problem zu beheben, führen Sie Ihre PyTorch Trainingsjobs erneut aus, um den neuesten SMP-Container zu verwenden, der in SMP v2.6.1 enthalten ist.
SMP-Docker-Container
Das SMP-Bibliotheksteam verteilt Docker-Container als Ersatz für die Framework-Container. SageMaker PyTorch Wenn Sie die PyTorch Estimator-Klasse im SageMaker Python-SDK verwenden und die Verteilungskonfiguration für die Verwendung von SMP v2 angeben, nimmt SageMaker KI die SMP-Docker-Container automatisch auf.
Details zum Container
-
SMP Docker-Container für v2.4.1 mit CUDA v12.1 PyTorch
658645717510.dkr.ecr.
<us-west-2>
.amazonaws.com/smdistributed-modelparallel:2.4.1-gpu-py311-cu121 -
Vorinstallierte Pakete
-
Die SMP-Bibliothek v2.6.1
-
Die SMDDP-Bibliothek v2.5.0
-
CUDNN v9.4.0
-
FlashAttention v2.5.8
-
TransformerEngine v1.10
-
Megatron v0.8.0
-
Transformers mit umarmtem Gesicht v4.44.2
-
Hugging Face Datasets-Bibliothek v2.19.0
-
EFA v1.32.0
-
NCCL v2.21.5
-
SMP Conda-Kanal
Der folgende S3-Bucket ist der öffentliche Conda-Kanal der SMP-Bibliothek, der vom SMP-Serviceteam gehostet wird. Wenn Sie die SMP v2-Bibliothek in einer Umgebung mit hochgradig anpassbaren Rechenressourcen wie SageMaker HyperPod Clustern installieren möchten, verwenden Sie diesen Conda-Kanal, um die SMP-Bibliothek ordnungsgemäß zu installieren.
-
https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/
Weitere Informationen zu Conda-Kanälen im Allgemeinen finden Sie unter Kanäle
Die SageMaker Modellparallelismus-Bibliothek v2.6.0
Datum: 17. Oktober 2024
Aktualisierungen der SMP-Bibliothek
Neue Features
-
Unterstützung für die folgenden LLM-Modellkonfigurationen wurde hinzugefügt. Sie können mit der Verwendung von Kontext-Parallelität und Tensor-Parallelität beginnen.
-
Tensor-ParallelitätUnterstützung für die folgenden Mixtral-Modellkonfigurationen wurde hinzugefügt.
-
Es wurde Unterstützung für eine AllGather basierte Implementierung von Kontextparallelität hinzugefügt, die das AllGather Kommunikationskollektiv nutzt, um die vollständige Sequenz von Tensoren zu erhalten. key-and-value Verfügbare Implementierungen sind und.
p2p
all_gather
Diep2p
Implementierung verwendet peer-to-peer Sende- und Empfangsrufe für die Akkumulation von key-and-value (KV) -Tensoren während der Aufmerksamkeitsberechnung. Sie laufen asynchron und ermöglichen es, dass sich die Kommunikation mit der Berechnung überschneidet. Andererseits verwendet dieall_gather
Implementierung die kollektiveAllGather
Kommunikationsoperation für die KV-Tensorakkumulation. Informationen zur Anwendung dieser Implementierungen der Kontextparallelität finden Sie unter. Kontext-Parallelität -
Unterstützung für die Einstellung des Theta-Werts (Rotary Position Embedding, RoPE) wurde hinzugefügt.
Fehlerkorrekturen
-
Es wurde ein Fehler behoben, bei dem Rotary Position Embedding (ROPe) vor dem Training nicht richtig initialisiert wurde, wenn der verzögerte Parameter aktiviert war.
Bekannte Probleme
-
Transformer Engine unterstützt derzeit keine Kontextparallelität oder FP8 wenn die Aufmerksamkeit durch verschiebbares Fenster aktiviert ist. Daher unterstützt die SMP-Version von Mistral Transformers keine Kontextparallelität oder FP8 Training, wenn die Konfiguration des Schiebefensters auf einen Wert ungleich Null gesetzt ist.
SMP Docker-Container
Das SMP-Bibliotheksteam verteilt Docker-Container als Ersatz für die Framework-Container. SageMaker PyTorch Wenn Sie die PyTorch Estimator-Klasse im SageMaker Python-SDK verwenden und die Verteilungskonfiguration für die Verwendung von SMP v2 angeben, nimmt SageMaker KI die SMP-Docker-Container automatisch auf.
Aktualisierungen der Währungen
-
Auf PyTorch v2.4.1 aktualisiert
-
Megatron wurde auf v0.8.0 aktualisiert
-
Die Bibliothek wurde auf v1.10 aktualisiert TransformerEngine
-
Transformers wurde auf v4.44.2 aktualisiert
-
cuDNN auf v9.4.0.58 aktualisiert
Details zum Container
-
SMP Docker-Container für v2.4.1 mit CUDA v12.1 PyTorch
658645717510.dkr.ecr.
<us-west-2>
.amazonaws.com/smdistributed-modelparallel:2.4.1-gpu-py311-cu121 -
Vorinstallierte Pakete
-
Die SMP-Bibliothek v2.6.0
-
Die SMDDP-Bibliothek v2.5.0
-
CUDNN v9.4.0
-
FlashAttention v2.5.8
-
TransformerEngine v1.10
-
Megatron v0.8.0
-
Transformers mit umarmtem Gesicht v4.44.2
-
Hugging Face Datasets-Bibliothek v2.19.0
-
EFA v1.32.0
-
NCCL v2.21.5
-
SMP Conda-Kanal
Der folgende S3-Bucket ist der öffentliche Conda-Kanal der SMP-Bibliothek, der vom SMP-Serviceteam gehostet wird. Wenn Sie die SMP v2-Bibliothek in einer Umgebung mit hochgradig anpassbaren Rechenressourcen wie SageMaker HyperPod Clustern installieren möchten, verwenden Sie diesen Conda-Kanal, um die SMP-Bibliothek ordnungsgemäß zu installieren.
-
https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/
Weitere Informationen zu Conda-Kanälen im Allgemeinen finden Sie unter Kanäle
Die SageMaker Modellparallelismus-Bibliothek v2.5.0
Datum: 28. August 2024
Aktualisierungen der SMP-Bibliothek
Neue Features
-
Unterstützung für Training mit gemischter Genauigkeit unter Verwendung des FP8 Datenformats auf P5-Instances für das Mixtral-Modell hinzugefügt.
-
Die unterstützten Mixtral-Konfigurationen sind 8x7B und 8x22B. Weitere Informationen hierzu finden Sie unter Training mit gemischter Präzision FP8 auf P5-Instanzen mithilfe der Transformer Engine.
-
-
Unterstützung für die folgenden Modellkonfigurationen Kontext-Parallelität wurde hinzugefügt.
-
LLama-v2:7B und 70B
-
LLama-v3:8B und 70B
-
GPT-Neox: 20 B
-
-
Unterstützung für das asynchrone Speichern von Checkpoints wurde hinzugefügt. Weitere Informationen hierzu finden Sie unter Checkpointing mit SMP.
-
Support für das direkte Speichern von Checkpoints in S3, ohne Amazon EBS oder Dateiserver zu verwenden.
-
Fehlerkorrekturen
-
Es wurde ein Problem behoben, das bei der Lama-Feinabstimmung zu einem unerwartet hohen Anfangsverlust führte, wenn ein vorab trainierter Modell-Checkpoint geladen und Tensorparallelität verwendet wurde.
Hinweise
-
Um das Aktivierungs-Checkpointing für Mixtral mit FP8 gemischter Präzision zu verwenden, müssen Sie die Aufmerksamkeits- und Expertenebene separat überprüfen. Ein Beispiel für die korrekte Einrichtung finden Sie im Beispiel-Trainingsskript
im Amazon SageMaker AI Examples Repository.
Bekannte Probleme
-
Der Balancing-Typ „Balancing Load Balancing“ in der MoE-Konfiguration (torch.sagemaker.moe.moe_config.MoEConfig) ist derzeit nicht mit dem Aktivierungs-Checkpointing kompatibel.
-
Aufgrund der Kontextparallelität weist GPT-Neox sowohl vor dem Training als auch bei der Feinabstimmung Leistungsrückgänge auf.
-
Bei GPT-Neox auf P4-Instances führt das direkte Laden von Gewichten aus einem transformierten Modell mit verzögertem Parameter in ein Hugging Face Face-Transformatormodell zu einer Verlustanpassung im ersten Schritt.
SMP Docker-Container
Das SMP-Bibliotheksteam verteilt Docker-Container als Ersatz für die Framework-Container. SageMaker PyTorch Wenn Sie die PyTorch Estimator-Klasse im SageMaker Python-SDK verwenden und die Verteilungskonfiguration für die Verwendung von SMP v2 angeben, nimmt SageMaker KI die SMP-Docker-Container automatisch auf. Um diese Version von SMP v2 zu verwenden, aktualisieren Sie Ihr SageMaker Python-SDK auf Version 2.224.0 oder höher.
Aktualisierungen der Währungen
-
Die FlashAttention Bibliothek wurde auf Version 2.5.8 aktualisiert
-
Die Transformer Engine-Bibliothek wurde auf Version 1.8 aktualisiert
Details zum Container
-
PyTorch SMP Docker-Container für v2.3.1 mit CUDA v12.1
658645717510.dkr.ecr.
<region>
.amazonaws.com/smdistributed-modelparallel:2.3.1-gpu-py311-cu121Eine vollständige Liste der unterstützten Regionen finden Sie unter AWS-Regionen.
-
Vorinstallierte Pakete
-
Die SMP-Bibliothek v2.5.0
-
Die SMDDP-Bibliothek v2.3.0
-
CUDNN v8.9.7.29
-
FlashAttention v2.5.8
-
TransformerEngine v1.8
-
Megatron v0.7.0
-
Transformers mit umarmtem Gesicht v4.40.1
-
Hugging Face Datasets-Bibliothek v2.19.0
-
EFA v1.32.0
-
NCCL v2.21.5
-
SMP Conda-Kanal
Der folgende S3-Bucket ist der öffentliche Conda-Kanal der SMP-Bibliothek, der vom SMP-Serviceteam gehostet wird. Wenn Sie die SMP v2-Bibliothek in einer Umgebung mit hochgradig anpassbaren Rechenressourcen wie SageMaker HyperPod Clustern installieren möchten, verwenden Sie diesen Conda-Kanal, um die SMP-Bibliothek ordnungsgemäß zu installieren.
-
https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/
Weitere Informationen zu Conda-Kanälen im Allgemeinen finden Sie unter Kanäle
Die SageMaker Modellparallelismus-Bibliothek v2.4.0
Datum: 20. Juni 2024
Aktualisierungen der SMP-Bibliothek
Fehlerkorrekturen
-
Es wurde ein Fehler behoben, der zu falschen Logit-Formen führte, wenn Labels bei der Verwendung des SMP Transformer nicht im Forward-Durchlauf übergeben wurden.
Währungsaktualisierungen
-
Unterstützung für PyTorch v2.3.1 hinzugefügt.
-
Unterstützung für Python v3.11 hinzugefügt.
-
Unterstützung für die Hugging Face Transformers-Bibliothek v4.40.1 hinzugefügt.
Veraltete Versionen
-
Die Unterstützung für Python v3.10 wurde eingestellt.
-
Die Unterstützung für die Hugging Face Transformers-Bibliotheksversionen vor Version 4.40.1 wurde eingestellt.
Andere Änderungen
-
Es wurde ein Patch hinzugefügt, mit dem das Speichern deduplizierter Tensoren auf verschiedenen Rängen umgeschaltet werden kann. Weitere Informationen finden Sie im Diskussionsthread im Repository
. PyTorch GitHub
Bekannte Probleme
-
Bei der Feinabstimmung von Llama-3 70B mit Tensorparallelität besteht ein bekanntes Problem, bei dem der Verlust stark ansteigen und dann bei einem höheren Verlustwert wieder aufgenommen werden kann.
SMP Docker-Container
Das SMP-Bibliotheksteam verteilt Docker-Container als Ersatz für die Framework-Container. SageMaker PyTorch Wenn Sie die PyTorch Estimator-Klasse im SageMaker Python-SDK verwenden und die Verteilungskonfiguration für die Verwendung von SMP v2 angeben, nimmt SageMaker KI die SMP-Docker-Container automatisch auf. Um diese Version von SMP v2 zu verwenden, aktualisieren Sie Ihr SageMaker Python-SDK auf Version 2.224.0 oder höher.
Aktualisierungen der Währungen
-
Die SMDDP-Bibliothek wurde auf Version 2.3.0 aktualisiert.
-
Die NCCL-Bibliothek wurde auf Version 2.21.5 aktualisiert.
-
Die EFA-Software wurde auf Version 1.32.0 aktualisiert.
Veraltete Versionen
-
Die Installation der Bibliothek Torch Distributed Experimental (TorchDistX
) wurde eingestellt.
Details zum Container
-
SMP Docker-Container für v2.3.1 mit CUDA v12.1 PyTorch
658645717510.dkr.ecr.
us-west-2
.amazonaws.com/smdistributed-modelparallel:2.3.1-gpu-py311-cu121 -
Vorinstallierte Pakete
-
Die SMP-Bibliothek v2.4.0
-
Die SMDDP-Bibliothek v2.3.0
-
CUDNN v8.9.7.29
-
FlashAttention v2.3.3
-
TransformerEngine v1.2.1
-
Transformers mit umarmtem Gesicht v4.40.1
-
Hugging Face Datasets-Bibliothek v2.19.0
-
EFA v1.32.0
-
NCCL v2.21.5
-
SMP Conda-Kanal
Der folgende S3-Bucket ist der öffentliche Conda-Kanal der SMP-Bibliothek, der vom SMP-Serviceteam gehostet wird. Wenn Sie die SMP v2-Bibliothek in einer Umgebung mit hochgradig anpassbaren Rechenressourcen wie SageMaker HyperPod Clustern installieren möchten, verwenden Sie diesen Conda-Kanal, um die SMP-Bibliothek ordnungsgemäß zu installieren.
-
https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/
Weitere Informationen zu Conda-Kanälen im Allgemeinen finden Sie unter Kanäle
Die SageMaker Modellparallelismus-Bibliothek v2.3.1
Datum: 9. Mai 2024
Fehlerkorrekturen
-
Ein
ImportError
Problem bei der Verwendung vonmoe_load_balancing=balanced
In torch.sagemaker.moe.moe_config.MoEConfig für Expertenparallelität wurde behoben. -
Es wurde ein Problem mit der Feinabstimmung behoben, bei dem der torch.sagemaker.transform Anruf ausgelöst wurde,
KeyError
wenn er aktiviert warload_state_dict_from_rank0
. -
Es wurde ein out-of-memory (OOM) -Fehler behoben, der beim Laden großer Mixture of Experts (MoE) -Modelle wie Mixtral 8x22B zur Feinabstimmung auftrat.
SMP-Docker-Container
Das SMP-Bibliotheksteam verteilt Docker-Container als Ersatz für die Framework-Container. SageMaker PyTorch Diese Version enthält die oben genannten Bugfixes in das folgende SMP-Docker-Image.
-
SMP Docker-Container für PyTorch v2.2.0 mit CUDA v12.1
658645717510.dkr.ecr.
us-west-2
.amazonaws.com/smdistributed-modelparallel:2.2.0-gpu-py310-cu121
Die SageMaker Modellparallelismus-Bibliothek v2.3.0
Datum: 11. April 2024
Neue Features
-
Es wurde eine neue Kernfunktion hinzugefügt, die Expertenparallelität, zur Unterstützung von Mixture of Experts-Transformatormodellen. Weitere Informationen hierzu finden Sie unter Parallelität für Experten.
SMP Docker-Container
Das SMP-Bibliotheksteam verteilt Docker-Container als Ersatz für die Framework-Container. SageMaker PyTorch Wenn Sie die PyTorch Estimator-Klasse im SageMaker Python-SDK verwenden und die Verteilungskonfiguration für die Verwendung von SMP v2 angeben, SageMaker werden die SMP-Docker-Container automatisch übernommen. Um diese Version von SMP v2 zu verwenden, aktualisieren Sie Ihr SageMaker Python-SDK auf Version 2.214.4 oder höher.
-
SMP Docker-Container für v2.2.0 mit CUDA v12.1 PyTorch
658645717510.dkr.ecr.
us-west-2
.amazonaws.com/smdistributed-modelparallel:2.2.0-gpu-py310-cu121-
Vorinstallierte Pakete in diesem Docker-Container
-
Die SMDDP-Bibliothek v2.2.0
-
CUDNN v8.9.5.29
-
FlashAttention v2.3.3
-
TransformerEngine v1.2.1
-
Transformers mit umarmtem Gesicht v4.37.1
-
Hugging Face Datasets-Bibliothek v2.16.1
-
Megatron-Kern 0.5.0
-
EFA v1.30.0
-
NCCL v2.19.4
-
-
Die Modellparallelitätsbibliothek v2.2.0 SageMaker
Datum: 7. März 2024
Neue Funktionen
-
Unterstützung für das FP8 Training der folgenden Hugging Face Face-Transformer-Modelle auf P5-Instances mit Transformer Engine-Integration hinzugefügt:
-
GPT-NeoX
-
Lama 2
-
Fehlerbehebungen
-
Es wurde ein Fehler behoben, bei dem vor dem
AllGather
Sammelaufruf während des Tensorparallelitätstrainings nicht garantiert wurde, dass Tensoren zusammenhängend waren.
Aktualisierungen der Währungen
-
Unterstützung für PyTorch v2.2.0 hinzugefügt.
-
Die SMDDP-Bibliothek wurde auf Version 2.2.0 aktualisiert.
-
Die Bibliothek wurde auf Version 2.3.3 FlashAttention aktualisiert.
-
Die NCCL-Bibliothek wurde auf Version 2.19.4 aktualisiert.
Veraltet
-
Die Unterstützung für Transformer Engine-Versionen vor v1.2.0 wurde eingestellt.
Bekannte Probleme
-
Die Aktivierung, Entladung SMP-Funktion funktioniert derzeit nicht. Verwenden Sie stattdessen das native PyTorch Aktivierungs-Offloading.
Andere Änderungen
-
Es wurde ein Patch zur Behebung der Leistungsregression hinzugefügt, die im Problemthread unter https://github.com/pytorch/pytorch/issues/117748
im Repository besprochen wurde. PyTorch GitHub
SMP-Docker-Container
Das SMP-Bibliotheksteam verteilt Docker-Container als Ersatz für die Framework-Container. SageMaker PyTorch Wenn Sie die PyTorch Estimator-Klasse im SageMaker Python-SDK verwenden und die Verteilungskonfiguration für die Verwendung von SMP v2 angeben, nimmt SageMaker KI die SMP-Docker-Container automatisch auf. Um diese Version von SMP v2 zu verwenden, aktualisieren Sie Ihr SageMaker Python-SDK auf Version 2.212.0 oder höher.
-
SMP Docker-Container für v2.2.0 mit CUDA v12.1 PyTorch
658645717510.dkr.ecr.
us-west-2
.amazonaws.com/smdistributed-modelparallel:2.2.0-gpu-py310-cu121-
Verfügbar für P4d-, P4de- und P5-Instances
-
Vorinstallierte Pakete in diesem Docker-Container
-
Die SMDDP-Bibliothek v2.2.0
-
CUDNN v8.9.5.29
-
FlashAttention v2.3.3
-
TransformerEngine v1.2.1
-
Transformers mit umarmtem Gesicht v4.37.1
-
Hugging Face Datasets-Bibliothek v2.16.1
-
EFA v1.30.0
-
NCCL v2.19.4
-
-
Die Modellparallelitätsbibliothek v2.1.0 SageMaker
Datum: 6. Februar 2024
Währungsaktualisierungen
-
Unterstützung für PyTorch v2.1.2 hinzugefügt.
Veraltet
-
Die Unterstützung für Hugging Face Transformers v4.31.0 wurde eingestellt.
Bekannte Probleme
-
Es wurde ein Problem festgestellt, dass die Feinabstimmung des Hugging Face Llama 2-Modells mit
attn_implementation=flash_attention_2
und FSDP dazu führt, dass das Modell divergiert. Weitere Informationen finden Sie im Issue-Ticketim Hugging Face GitHub Transformers-Repository. Um das Divergenzproblem zu vermeiden, verwenden Sie. attn_implementation=sdpa
Verwenden Sie alternativ die Implementierung des SMP-Transformermodells, indem Sie einrichten.use_smp_implementation=True
SMP-Docker-Container
Das SMP-Bibliotheksteam verteilt Docker-Container als Ersatz für die Framework-Container. SageMaker PyTorch Wenn Sie die PyTorch Estimator-Klasse im SageMaker Python-SDK verwenden und die Verteilungskonfiguration für die Verwendung von SMP v2 angeben, SageMaker werden die SMP-Docker-Container automatisch übernommen. Um diese Version von SMP v2 zu verwenden, aktualisieren Sie Ihr SageMaker Python-SDK auf Version 2.207.0 oder höher.
-
SMP Docker-Container für v2.1.2 mit CUDA v12.1 PyTorch
658645717510.dkr.ecr.
us-west-2
.amazonaws.com/smdistributed-modelparallel:2.1.2-gpu-py310-cu121-
Verfügbar für P4d-, P4de- und P5-Instances
-
Vorinstallierte Pakete in diesem Docker-Container
-
Die SMDDP-Bibliothek v2.1.0
-
CUDNN v8.9.5.29
-
FlashAttention v2.3.3
-
TransformerEngine v1.2.1
-
Transformers mit umarmtem Gesicht v4.37.1
-
Hugging Face Datasets-Bibliothek v2.16.1
-
EFA v1.30.0
-
-
SMP Conda-Kanal
Der folgende S3-Bucket ist ein öffentlicher Conda-Kanal, der vom SMP-Serviceteam gehostet wird. Wenn Sie die SMP v2-Bibliothek in einer Umgebung mit hochgradig anpassbaren Rechenressourcen wie SageMaker HyperPod Clustern installieren möchten, verwenden Sie diesen Conda-Kanal, um die SMP-Bibliothek ordnungsgemäß zu installieren.
-
https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/
Weitere Informationen zu Conda-Kanälen im Allgemeinen finden Sie unter Kanäle
Die SageMaker Modellparallelismus-Bibliothek v2.0.0
Datum: 19. Dezember 2023
Neue Features
Die SageMaker Modellparallelismus-Bibliothek (SMP) v2.0.0 wurde mit den folgenden neuen Angeboten veröffentlicht.
-
Ein neues
torch.sagemaker
Paket, das gegenüber dem vorherigen Paket in SMP v1.x komplett überarbeitet wurde.smdistributed.modelparallel.torch
-
Support für PyTorch 2.0.1.
-
Support für PyTorch FSDP.
-
Implementierung der Tensor-Parallelität durch Integration in die Transformer Engine-Bibliothek.
-
Support sowohl für SageMaker Schulungen als auch SageMaker HyperPod.
Bahnbrechende Änderungen
-
SMP v2 hat das APIs komplett überarbeitet und bietet das
torch.sagemaker
Paket. Meist müssen Sie nur mit demtorch.sagemaker.init()
Modul initialisieren und die parallel Konfigurationsparameter des Modells übergeben. Mit diesem neuen Paket können Sie Codeänderungen in Ihrem Trainingsskript erheblich vereinfachen. Weitere Informationen zur Anpassung Ihres Trainingsskripts an die Verwendung von SMP v2 finden Sie unterVerwenden Sie die SageMaker Modellparallelitätsbibliothek v2. -
Wenn Sie SMP v1 für das Training von Hugging Face Transformer-Modellen verwendet haben und die Modelle in SMP v2 wiederverwenden möchten, finden Sie weitere Informationen unter. Führen Sie ein Upgrade von SMP v1 auf SMP v2 durch
-
Für PyTorch FSDP-Schulungen sollten Sie SMP v2 verwenden.
Bekannte Probleme
-
Aktivierungsprüfpunkte funktionieren derzeit nur mit den folgenden Umschließungsrichtlinien mit FSDP.
-
auto_wrap_policy = functools.partial(transformer_auto_wrap_policy, ...)
-
-
Um ihn verwenden zu könnenAktivierung, Entladung, muss der Typ des FSDP-Aktivierungs-Checkpoints REENTRANT sein.
-
Wenn Sie mit aktiviertem Tensor Parallel laufen und der Grad für Sharded Data Parallel auf eingestellt ist
1
, müssen Sie Folgendes verwenden.backend = nccl
Diesmddp
Backend-Option wird in diesem Szenario nicht unterstützt. -
Die Transformer Engine
muss PyTorch zusammen mit der SMP-Bibliothek verwendet werden, auch wenn keine Tensorparallelität verwendet wird.
Andere Änderungen
-
Ab dieser Version ist die Dokumentation für die SageMaker Modellparallelismus-Bibliothek vollständig in diesem Amazon SageMaker AI Developer Guide verfügbar. Zugunsten dieses vollständigen Entwicklerhandbuchs für SMP v2 im Amazon SageMaker AI Developer Guide ist die zusätzliche Referenz für SMP v1.x
in der SageMaker Python SDK-Dokumentation veraltet. Wenn Sie die Dokumentation für SMP v1.x weiterhin benötigen, finden Sie das Entwicklerhandbuch für SMP v1.x unter(Archivierte) SageMaker Modellparallelismus-Bibliothek v1.x, und die Referenz zur SMP-Python-Bibliothek v1.x finden Sie in der Python SDK v2.199.0-Dokumentation. SageMaker
Veraltete Versionen
-
Der Support für wurde eingestellt. TensorFlow
-
In SMP v2 gibt es keine Unterstützung für Pipeline-Parallelität.
-
Es gibt keine Unterstützung für die DeepSpeed Bibliothek zugunsten von nativem FSDP. PyTorch
SMP Docker-Container
Das SMP-Bibliotheksteam verteilt Docker-Container als Ersatz für die Framework-Container. SageMaker PyTorch Wenn Sie die PyTorch Estimator-Klasse im SageMaker Python-SDK verwenden und die Verteilungskonfiguration für die Verwendung von SMP v2 angeben, nimmt SageMaker KI die SMP-Docker-Container automatisch auf. Um diese Version von SMP v2 zu verwenden, aktualisieren Sie Ihr SageMaker Python-SDK auf Version 2.207.0 oder höher.
-
SMP Docker-Container für v2.0.1 mit CUDA v12.1 PyTorch
658645717510.dkr.ecr.
us-west-2
.amazonaws.com/smdistributed-modelparallel:2.0.1-gpu-py310-cu121