Versionshinweise zur Modell-Parallelitätsbibliothek von SageMaker AI
In den folgenden Versionshinweisen finden Sie die neuesten Aktualisierungen der SageMaker-Modellparallelitätsbibliothek (SMP). Wenn Sie weitere Fragen zur SMP-Bibliothek haben, wenden Sie sich an das SMP-Serviceteam unter sm-model-parallel-feedback@amazon.com.
SageMaker-Modellparallelitätsbibliothek v2.8.0 oder später
Datum: 01. April 2025
Aktualisierungen der SMP-Bibliothek
Fehlerbehebungen
-
Das SMP-Gradientennorm-Clipping unterstützt jetzt die Aktivierungsauslagerung.
SMP-Docker- und Enroot-Container
Das SMP-Bibliotheksteam verteilt Docker-Container als Ersatz für die Framework-Container von SageMaker PyTorch. Wenn Sie die PyTorch-Schätzerklasse im SageMaker Python SDK verwenden und die Verteilungskonfiguration zur Verwendung von SMP v2 angeben, wählt SageMaker AI automatisch die SMP-Docker-Container aus. Um diese Version von SMP v2 zu verwenden, aktualisieren Sie Ihr SageMaker Python SDK auf v2.243.0 oder höher.
Aktualisierungen der Währungen
-
Unterstützung für PyTorch v2.5.1 hinzugefügt
-
Die CUDA-Unterstützung wurde auf v12.4 aktualisiert.
-
Die NCCL-Unterstützung wurde auf v2.23.4 aktualisiert.
-
Die SMDDP-Bibliothek wurde auf 2.6.0 aktualisiert.
Details zum Container
-
SMP-Docker-Container für PyTorch v2.5.1 mit CUDA v12.4
658645717510.dkr.ecr.<us-west-2>.amazonaws.com/smdistributed-modelparallel:2.5.1-gpu-py311-cu124 -
SMP-Enroot-Container für PyTorch v2.5.1 mit CUDA v12.4
https://sagemaker-distributed-model-parallel.s3.<us-west-2>.amazonaws.com/enroot/2.5.1-gpu-py311-cu124.sqsh -
Vorinstallierte Pakete
-
SMP-Bibliothek v2.8.0
-
SMDDP-Bibliothek v2.6.0
-
CUDNN v9.4.0
-
FlashAttention v2.5.8
-
TransformerEngine v1.10
-
Megatron v0.8.0
-
Hugging Face Transformers v4.44.2
-
Hugging Face Datensatz-Bibliothek v2.19.0
-
EFA v1.36.0
-
NCCL v2.23.4
-
AWS-OFI-NCCL v1.13.2
-
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 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
SageMaker-Modellparallelitätsbibliothek v2.7.0 oder später
Datum: 04. Dezember 2024
Aktualisierungen der SMP-Bibliothek
Neue Features
-
Unterstützung für SageMaker-HyperPod-Rezepte hinzugefügt.
SMP-Docker- und Enroot-Container
Das SMP-Bibliotheksteam verteilt Docker- und Enroot-Container als Ersatz für die Framework-Container von SageMaker PyTorch. Wenn Sie die PyTorch-Schätzerklasse im SageMaker Python SDK verwenden und die Verteilungskonfiguration zur Verwendung von SMP v2 angeben, wählt SageMaker automatisch die SMP-Docker-Container aus. 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 PyTorch v2.4.1 mit CUDA v12.1
https://sagemaker-distributed-model-parallel.s3.<us-west-2>.amazonaws.com/enroot/2.4.1-gpu-py311-cu121.sqsh -
Vorinstallierte Pakete
-
SMP-Bibliothek v2.7.0
-
SMDDP-Bibliothek v2.5.0
-
CUDNN v9.4.0
-
FlashAttention v2.5.8
-
TransformerEngine v1.10
-
Megatron v0.8.0
-
Hugging Face Transformers v4.44.2
-
Hugging Face Datensatz-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/
Weitere Informationen zu Conda-Kanälen im Allgemeinen finden Sie unter Kanäle
SageMaker-Modellparallelitätsbibliothek v2.6.1 oder später
Datum: 31. Oktober 2024
Aktualisierungen der SMP-Bibliothek
Fehlerbehebungen
-
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. -
Es wurde eine
DeprecationWarningfürtorch.sagemaker.distributed.fsdp.checkpointhinzugefügt. Dieses Modul wird in SMP v2.7.0 nicht mehr unterstützt und entfernt. Wenn Sie derzeittorch.sagemaker.distributed.fsdp.checkpointin Ihrem Code verwenden, sollten Sie Ihre Skripts vor der Veröffentlichung von SMP v2.7.0 aktualisieren, um zukünftige 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 Checkpoint-Methode
USE_PG_WITH_UTILin 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 abzurufen, der mit SMP v2.6.1 vorkonfiguriert ist.
SMP-Docker-Container
Das SMP-Bibliotheksteam verteilt Docker-Container als Ersatz für die Framework-Container von SageMaker PyTorch. Wenn Sie die PyTorch-Schätzerklasse im SageMaker Python SDK verwenden und die Verteilungskonfiguration zur Verwendung von SMP v2 angeben, wählt SageMaker AI automatisch die SMP-Docker-Container aus.
Details zum Container
-
SMP-Docker-Container für PyTorch v2.4.1 mit CUDA v12.1
658645717510.dkr.ecr.<us-west-2>.amazonaws.com/smdistributed-modelparallel:2.4.1-gpu-py311-cu121 -
Vorinstallierte Pakete
-
SMP-Bibliothek v2.6.1
-
SMDDP-Bibliothek v2.5.0
-
CUDNN v9.4.0
-
FlashAttention v2.5.8
-
TransformerEngine v1.10
-
Megatron v0.8.0
-
Hugging Face Transformers v4.44.2
-
Hugging Face Datensatz-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
SageMaker-Modellparallelitätsbibliothek v2.6.0 oder später
Datum: 17. Oktober 2024
Aktualisierungen der SMP-Bibliothek
Neue Features
-
Die folgenden LLM-Modellkonfigurationen werden nun unterstützt. Sie können mit der Verwendung von Kontextparallelität und Tensor-Parallelität beginnen.
-
Für die folgenden Mixtral-Modellkonfigurationen wird nun Tensor-Parallelität unterstützt.
-
Eine AllGather-basierte Implementierung von Kontextparallelität wird nun unterstützt, die die kollektive AllGather-Kommunikation nutzt, um die vollständige Sequenz von Schlüssel- und Wert-Tensoren zu erhalten. Verfügbare Implementierungen sind
p2pundall_gather. Diep2p-Implementierung verwendet Peer-to-Peer-Aufrufe zum Senden/Empfangen für die Ansammlung von Schlüssel- und Werte-Tensoren (KV) während der Aufmerksamkeitsberechnung. Sie läuft asynchron, sodass Überschneidungen von Kommunikation und Datenverarbeitung möglich sind. Andererseits verwendet dieall_gather-Implementierung die kollektiveAllGather-Kommunikationsoperation für die Ansammlung von KV-Tensoren. Informationen zur Anwendung dieser Implementierung von Kontextparallelität finden Sie unter Kontextparallelität. -
Die Einstellung des RoPE-Theta-Werts (Rotary Position Embedding) wird nun unterstützt.
Fehlerbehebungen
-
Es wurde ein Fehler behoben, bei dem Rotary Position Embedding (RoPE) beim Vortraining nicht richtig initialisiert wurde, wenn die verzögerte Parameterinitialisierung aktiviert war.
Bekannte Probleme
-
Transformer Engine unterstützt derzeit keine Kontextparallelität oder FP8 bei aktivierter Sliding Window Attention. Daher unterstützt die SMP-Version von Mistral Transformers keine Kontextparallelität und kein FP8-Training, wenn die Sliding-Window-Konfiguration auf einen Wert ungleich Null gesetzt ist.
SMP-Docker-Container
Das SMP-Bibliotheksteam verteilt Docker-Container als Ersatz für die Framework-Container von SageMaker PyTorch. Wenn Sie die PyTorch-Schätzerklasse im SageMaker Python SDK verwenden und die Verteilungskonfiguration zur Verwendung von SMP v2 angeben, wählt SageMaker AI automatisch die SMP-Docker-Container aus.
Aktualisierungen der Währungen
-
PyTorch wurde auf v2.4.1 upgegradet
-
Megatron auf v0.8.0 aktualisiert
-
TransformerEngine-Bibliothek auf v1.10 aktualisiert
-
Transformers auf v4.44.2 aktualisiert
-
cuDNN auf v9.4.0.58 aktualisiert
Details zum Container
-
SMP-Docker-Container für PyTorch v2.4.1 mit CUDA v12.1
658645717510.dkr.ecr.<us-west-2>.amazonaws.com/smdistributed-modelparallel:2.4.1-gpu-py311-cu121 -
Vorinstallierte Pakete
-
SMP-Bibliothek v2.6.0
-
SMDDP-Bibliothek v2.5.0
-
CUDNN v9.4.0
-
FlashAttention v2.5.8
-
TransformerEngine v1.10
-
Megatron v0.8.0
-
Hugging Face Transformers v4.44.2
-
Hugging Face Datensatz-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
SageMaker-Modellparallelitätsbibliothek v2.5.0 oder später
Datum: 28. August 2024
Aktualisierungen der SMP-Bibliothek
Neue Features
-
Das Training mit gemischter Präzision unter Verwendung des FP8-Datenformats auf P5-Instances für das Mixtral-Modell wird nun unterstützt.
-
Die unterstützten Mixtral-Konfigurationen sind 8x7B und 8x22B. Weitere Informationen hierzu finden Sie unter Training mit gemischter Präzision mit FP8 auf P5-Instances mithilfe der Transformer Engine.
-
-
Kontextparallelität wird nun für die folgenden Modellkonfigurationen unterstützt.
-
Llama-v2: 7B und 70B
-
Llama-v3: 8B und 70B
-
GPT-NeoX: 20B
-
-
Das asynchrone Speichern von Checkpoints wird nun unterstützt. Weitere Informationen hierzu finden Sie unter Checkpointing mit SMP.
-
Unterstützung für das direkte Speichern von Checkpoints in S3 ohne Amazon EBS oder Dateiserver
-
Fehlerbehebungen
-
Es wurde ein Problem behoben, das bei der Llama-Optimierung zu unerwartet hohen Anfangsverlusten führte, wenn ein vortrainierter Modell-Checkpoint geladen und die Tensorparallelität verwendet wurde.
Hinweise
-
Um das Aktivierungs-Checkpointing für Mixtral mit gemischter FP8-Präzision zu verwenden, müssen Sie die Aufmerksamkeits- und Expertenebenen separat überprüfen. Ein Beispiel für die korrekte Einrichtung finden Sie im Beispiel-Trainingsskript
im Beispiel-Repository von Amazon SageMaker AI.
Bekannte Probleme
-
Der Lastenausgleich in der MoE-Konfiguration (torch.sagemaker.moe.moe_config.MoEConfig) ist derzeit nicht mit dem Aktivierungs-Checkpoint kompatibel.
-
Bei der Kontextparallelität weist GPT-NeoX sowohl bei dem Vortraining als auch bei der Optimierung einen Leistungsrückgang auf.
-
Bei GPT-NeoX auf P4-Instances führt das direkte Laden von Gewichtungen aus einem transformierten Modell mit verzögerter Parameterinitialisierung in ein Transformer-Modell von Hugging Face zu einer Verlust-Fehlanpassung im ersten Schritt.
SMP-Docker-Container
Das SMP-Bibliotheksteam verteilt Docker-Container als Ersatz für die Framework-Container von SageMaker PyTorch. Wenn Sie die PyTorch-Schätzerklasse im SageMaker Python SDK verwenden und die Verteilungskonfiguration zur Verwendung von SMP v2 angeben, wählt SageMaker AI automatisch die SMP-Docker-Container aus. Um diese Version von SMP v2 zu verwenden, aktualisieren Sie Ihr SageMaker Python SDK auf v2.224.0 oder höher.
Aktualisierungen der Währungen
-
Die FlashAttention-Bibliothek wurde auf v2.5.8 aktualisiert.
-
TransformerEngine-Bibliothek auf v1.8 aktualisiert
Details zum Container
-
SMP-Docker-Container für PyTorch 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
-
SMP-Bibliothek v2.5.0
-
SMDDP-Bibliothek 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
-
Hugging Face Datensatz-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
SageMaker-Modellparallelitätsbibliothek v2.4.0 oder später
Datum: 20. Juni 2024
Aktualisierungen der SMP-Bibliothek
Fehlerbehebungen
-
Es wurde ein Fehler behoben, der zu falschen Logit-Formen führte, wenn bei der Verwendung des SMP-Transformers im Vorwärtsdurchlauf keine Beschriftungen übergeben wurden.
Aktualisierungen der Währungen
-
Unterstützung für PyTorch v2.3.1 hinzugefügt
-
Unterstützung für Python v3.11 hinzugefügt
-
Die Bibliothek Hugging Face Transformers v4.40.1 wird nun unterstützt.
Veraltungen
-
Die Unterstützung für Python v3.10 wurde eingestellt.
-
Die Unterstützung für die Versionen der Bibliothek Hugging Face Transformers vor v4.40.1 wurde eingestellt.
Weitere Änderungen
-
Es wurde ein Patch hinzugefügt, mit dem beim Speichern deduplizierter Tensoren zwischen verschiedenen Rängen gewechselt werden kann. Weitere Informationen finden Sie im Diskussionsthread
im PyTorch-GitHub-Repository.
Bekannte Probleme
-
Es ist bekannt, dass es bei der Optimierung von Llama-3 70B mit Tensorparallelität zu Verlustspitzen und dann zu einem höheren Verlustwert kommen kann.
SMP-Docker-Container
Das SMP-Bibliotheksteam verteilt Docker-Container als Ersatz für die Framework-Container von SageMaker PyTorch. Wenn Sie die PyTorch-Schätzerklasse im SageMaker Python SDK verwenden und die Verteilungskonfiguration zur Verwendung von SMP v2 angeben, wählt SageMaker AI automatisch die SMP-Docker-Container aus. Um diese Version von SMP v2 zu verwenden, aktualisieren Sie Ihr SageMaker Python SDK auf v2.224.0 oder höher.
Aktualisierungen der Währungen
-
Die SMDDP-Bibliothek wurde auf v2.3.0 aktualisiert.
-
Die NCCL-Bibliothek wurde auf v2.21.5 aktualisiert.
-
Die EFA-Software wurde auf v1.32.0 aktualisiert.
Veraltungen
-
Die Installation der Bibliothek Torch Distributed Experimental (torchdistX)
wurde eingestellt.
Details zum Container
-
SMP-Docker-Container für PyTorch v2.3.1 mit CUDA v12.1
658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.3.1-gpu-py311-cu121 -
Vorinstallierte Pakete
-
SMP-Bibliothek v2.4.0
-
SMDDP-Bibliothek v2.3.0
-
CUDNN v8.9.7.29
-
FlashAttention v2.3.3
-
TransformerEngine v1.2.1
-
Hugging Face Transformers v4.40.1
-
Hugging Face Datensatz-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
SageMaker-Modellparallelitätsbibliothek v2.3.1 oder später
Datum: 9. Mai 2024
Fehlerbehebungen
-
Es wurde ein
ImportError-Problem behoben, das bei der Verwendung vonmoe_load_balancing=balancedin torch.sagemaker.moe.moe_config.MoEConfig zur Expertenparallelität auftrat. -
Es wurde ein Problem bei der Optimierung behoben, bei dem beim Aufruf von torch.sagemaker.transform ein
KeyErrorausgelöst wurde, wennload_state_dict_from_rank0aktiviert war. -
Es wurde ein OOM-Fehler (Out-of-Memory) behoben, der beim Laden großer MoE-Modelle (Mixture of Experts) wie Mixtral 8x22B zur Optimierung auftrat.
SMP-Docker-Container
Das SMP-Bibliotheksteam verteilt Docker-Container als Ersatz für die Framework-Container von SageMaker PyTorch. Diese Version enthält die oben genannten Fehlerbehebungen im folgenden 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
SageMaker-Modellparallelitätsbibliothek v2.3.0 oder später
Datum: 11. April 2024
Neue Features
-
Zur Unterstützung von MoE-Transformer-Modellen (Mixture of Experts) wurde die Expertenparallelität als neue Kernfunktion hinzugefügt. Weitere Informationen hierzu finden Sie unter Expertenparallelität.
SMP-Docker-Container
Das SMP-Bibliotheksteam verteilt Docker-Container als Ersatz für die Framework-Container von SageMaker PyTorch. Wenn Sie die PyTorch-Schätzerklasse im SageMaker Python SDK verwenden und die Verteilungskonfiguration zur Verwendung von SMP v2 angeben, wählt SageMaker automatisch die SMP-Docker-Container aus. Um diese Version von SMP v2 zu verwenden, aktualisieren Sie Ihr SageMaker Python SDK auf v2.214.4 oder höher.
-
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-
Vorinstallierte Pakete in diesem Docker-Container
-
SMDDP-Bibliothek v2.2.0
-
CUDNN v8.9.5.29
-
FlashAttention v2.3.3
-
TransformerEngine v1.2.1
-
Hugging Face Transformers v4.37.1
-
Hugging Face Datensatz-Bibliothek v2.16.1
-
Megatron-Kern 0.5.0
-
EFA v1.30.0
-
NCCL v2.19.4
-
-
SageMaker-Modellparallelitätsbibliothek v2.2.0 oder später
Datum: 7. März 2024
Neue Features
-
Das FP8-Training der folgenden Transformer-Modelle von Hugging Face auf P5-Instances mit Transformer-Engine-Integration wird nun unterstützt:
-
GPT-NeoX
-
Llama 2
-
Fehlerbehebungen
-
Es wurde ein Fehler behoben, bei dem vor dem kollektiven
AllGather-Aufruf während des Tensorparallelitätstrainings nicht garantiert wurde, dass die Tensoren zusammenhängend waren.
Aktualisierungen der Währungen
-
Unterstützung für PyTorch v2.2.0 hinzugefügt
-
Die SMDDP-Bibliothek wurde auf v2.2.0 aktualisiert.
-
Die FlashAttention-Bibliothek wurde auf v2.3.3 aktualisiert.
-
Die NCCL-Bibliothek wurde auf v2.19.4 aktualisiert.
Ablehnung
-
Die Unterstützung für die Transformer-Engine-Versionen vor v1.2.0 wurde eingestellt.
Bekannte Probleme
-
Das SMP-Feature Aktivierung, Entladung funktioniert derzeit nicht. Verwenden Sie stattdessen die native PyTorch-Aktivierungsauslagerung.
Weitere Änderungen
-
Es wurde ein Patch zur Behebung des im Problem-Thread unter https://github.com/pytorch/pytorch/issues/117748
besprochenen Leistungsrückgangs in das PyTorch-GitHub-Repository aufgenommen.
SMP-Docker-Container
Das SMP-Bibliotheksteam verteilt Docker-Container als Ersatz für die Framework-Container von SageMaker PyTorch. Wenn Sie die PyTorch-Schätzerklasse im SageMaker Python SDK verwenden und die Verteilungskonfiguration zur Verwendung von SMP v2 angeben, wählt SageMaker AI automatisch die SMP-Docker-Container aus. Um diese Version von SMP v2 zu verwenden, aktualisieren Sie Ihr SageMaker Python SDK auf v2.212.0 oder höher.
-
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-
Verfügbar für P4d-, P4de- und P5-Instances
-
Vorinstallierte Pakete in diesem Docker-Container
-
SMDDP-Bibliothek v2.2.0
-
CUDNN v8.9.5.29
-
FlashAttention v2.3.3
-
TransformerEngine v1.2.1
-
Hugging Face Transformers v4.37.1
-
Hugging Face Datensatz-Bibliothek v2.16.1
-
EFA v1.30.0
-
NCCL v2.19.4
-
-
SageMaker-Modellparallelitätsbibliothek v2.1.0 oder später
Datum: 6. Februar 2024
Aktualisierungen der Währungen
-
Unterstützung für PyTorch v2.1.2 hinzugefügt
Ablehnung
-
Die Unterstützung für Hugging Face Transformers v4.31.0 wurde eingestellt.
Bekannte Probleme
-
Es wurde festgestellt, dass die Optimierung des Llama-2-Modells von Hugging Face mit
attn_implementation=flash_attention_2und FSDP zu Modellabweichungen führt. Weitere Informationen finden Sie im Problem-Ticketim GitHub-Repository von Hugging Face Transformers. Um das Divergenzproblem zu vermeiden, verwenden Sie attn_implementation=sdpa. Verwenden Sie alternativ die Implementierung des SMP-Transformer-Modells, indem Sieuse_smp_implementation=Trueeinrichten.
SMP-Docker-Container
Das SMP-Bibliotheksteam verteilt Docker-Container als Ersatz für die Framework-Container von SageMaker PyTorch. Wenn Sie die PyTorch-Schätzerklasse im SageMaker Python SDK verwenden und die Verteilungskonfiguration zur Verwendung von SMP v2 angeben, wählt SageMaker automatisch die SMP-Docker-Container aus. Um diese Version von SMP v2 zu verwenden, aktualisieren Sie Ihr SageMaker Python SDK auf v2.207.0 oder höher.
-
SMP-Docker-Container für PyTorch v2.1.2 mit CUDA v12.1
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
-
SMDDP-Bibliothek v2.1.0
-
CUDNN v8.9.5.29
-
FlashAttention v2.3.3
-
TransformerEngine v1.2.1
-
Hugging Face Transformers v4.37.1
-
Hugging Face Datensatz-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
SageMaker-Modellparallelitätsbibliothek v2.0.0 oder später
Datum: 19. Dezember 2023
Neue Features
Die SageMaker-Modellparallelitätsbibliothek (SMP) v2.0.0 mit den folgenden neuen Angeboten wurde veröffentlicht.
-
Ein neues
torch.sagemaker-Paket wurde gegenüber dem vorherigensmdistributed.modelparallel.torch-Paket in SMP v1.x vollständig überarbeitet. -
Unterstützung für PyTorch 2.0.1
-
Unterstützung für PyTorch FSDP
-
Implementierung der Tensorparallelität durch Integration in die Transformer-Engine
-Bibliothek -
Unterstützung für SageMaker Training und SageMaker HyperPod
Abwärtskompatible Änderungen
-
SMP v2 bietet eine vollständige Überarbeitung der APIs und stellt das
torch.sagemaker-Paket bereit. In den meisten Fällen sind nur die Initialisierung mit demtorch.sagemaker.init()-Modul und die Übergabe der Konfigurationsparameter zur Modellparallelität erforderlich. Mit diesem neuen Paket können Sie Codeänderungen in Ihrem Trainingsskript erheblich vereinfachen. Weitere Informationen zur Anpassung Ihres Trainingsskripts an SMP v2 finden Sie unter Verwendung der SageMaker-Modellparallelitätsbibliothek v2. -
Wenn Sie SMP v1 für das Training von Transformer-Modellen von Hugging Face verwendet haben und die Modelle in SMP v2 wiederverwenden möchten, finden Sie weitere Informationen unter Upgrade von SMP v1 auf SMP v2.
-
Für das PyTorch-FSDP-Training sollten Sie SMP v2 verwenden.
Bekannte Probleme
-
Aktivierungs-Checkpointing funktioniert derzeit nur mit den folgenden Wrapping-Richtlinien mit FSDP.
-
auto_wrap_policy = functools.partial(transformer_auto_wrap_policy, ...)
-
-
Für die Verwendung von Aktivierung, Entladung muss der Typ des FSDP-Aktivierungs-Checkpoints REENTRANT
sein. -
Bei der Ausführung mit aktivierter Tensorparallelität und dem Parallelitätsgrad
1der fragmentierten Daten müssen Siebackend = ncclverwenden. Diesmddp-Backend-Option wird in diesem Szenario nicht unterstützt. -
Transformer Engine
ist erforderlich, um PyTorch mit der SMP-Bibliothek zu verwenden, auch wenn keine Tensorparallelität verwendet wird.
Weitere Änderungen
-
Ab dieser Version ist die vollständige Dokumentation für die SageMaker-Modellparallelitätsbibliothek in diesem Entwicklerhandbuch für Amazon SageMaker AI verfügbar. Zu Gunsten des vollständigen Entwicklerhandbuchs für SMP v2, das im Entwicklerhandbuch für Amazon SageMaker AI enthalten ist, wird die Dokumentation für die zusätzliche Referenz für SMP v1.x
in der Dokumentation zum SageMaker Python SDK nicht mehr unterstützt. Wenn Sie die Dokumentation für SMP v1.x weiterhin benötigen, finden Sie das Entwicklerhandbuch für SMP v1.x unter (Archiviert) SageMaker-Modellparallelitätsbibliothek v1.x und die Referenz zur SMP-Python-Bibliothek v1.x finden Sie in der Dokumentation zum SageMaker Python SDK v2.199.0 .
Veraltungen
-
Die Unterstützung für TensorFlow wurde eingestellt.
-
Die Pipeline-Parallelität wird in SMP v2 nicht unterstützt.
-
Die DeepSpeed-Bibliothek wird zugunsten des nativen PyTorch FSDP nicht unterstützt.
SMP-Docker-Container
Das SMP-Bibliotheksteam verteilt Docker-Container als Ersatz für die Framework-Container von SageMaker PyTorch. Wenn Sie die PyTorch-Schätzerklasse im SageMaker Python SDK verwenden und die Verteilungskonfiguration zur Verwendung von SMP v2 angeben, wählt SageMaker AI automatisch die SMP-Docker-Container aus. Um diese Version von SMP v2 zu verwenden, aktualisieren Sie Ihr SageMaker Python SDK auf v2.207.0 oder höher.
-
SMP-Docker-Container für PyTorch v2.0.1 mit CUDA v12.1
658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.0.1-gpu-py310-cu121