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 Modellparallelism () -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.5.0
Datum: 28. August 2024
SMPAktualisierungen der 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 unter Verwendung 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 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 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.
SMPDocker-Container
Das SMP Bibliotheksteam verteilt Docker-Container als Ersatz für die SageMaker PyTorch Framework-Container. Wenn Sie die PyTorch Estimator-Klasse in SageMaker Python verwenden SDK und die Distributionskonfiguration 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.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
-
SMP PyTorch CUDADocker-Container für v2.3.1 mit 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
-
CUDNNv8.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
-
EFAv1.32.0
-
NCCLv2.21.5
-
SMPConda-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
SMPAktualisierungen der Bibliothek
Fehlerkorrekturen
-
Es wurde ein Fehler behoben, der bei Verwendung des SMP Transformers zu falschen Logit-Formen führte, wenn Labels im Forward-Durchlauf nicht ü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.
SMPDocker-Container
Das SMP Bibliotheksteam verteilt Docker-Container als Ersatz für die SageMaker PyTorch Framework-Container. Wenn Sie die PyTorch Estimator-Klasse in SageMaker Python verwenden SDK und die Distributionskonfiguration 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.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
-
SMPDocker-Container für v2.3.1 mit v12.1 PyTorch CUDA
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
-
CUDNNv8.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
-
EFAv1.32.0
-
NCCLv2.21.5
-
SMPConda-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 Fehler out-of-memory (OOM) behoben, der beim Laden großer Mixture of Experts (MoE) -Modelle wie Mixtral 8x22B zur Feinabstimmung auftrat.
SMPDocker-Container
Das SMP Bibliotheksteam verteilt Docker-Container als Ersatz für die SageMaker PyTorch Framework-Container. Diese Version enthält die oben genannten Bugfixes in das folgende SMP Docker-Image.
-
SMPDocker-Container für PyTorch v2.2.0 mit v12.1 CUDA
658645717510.dkr.ecr.
us-west-2
.amazonaws.com/smdistributed-modelparallel:2.2.0-gpu-py310-cu121
Die Modellparallelismus-Bibliothek v2.3.0 SageMaker
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.
SMPDocker-Container
Das SMP Bibliotheksteam verteilt Docker-Container als Ersatz für die SageMaker PyTorch Framework-Container. Wenn Sie die PyTorch Estimator-Klasse in SageMaker Python verwenden SDK und die Distributionskonfiguration 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.214.4 oder höher.
-
SMPDocker-Container für v2.2.0 mit v12.1 PyTorch CUDA
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
-
CUDNNv8.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
-
EFAv1.30.0
-
NCCLv2.19.4
-
-
Die SageMaker Modellparallelitätsbibliothek v2.2.0
Datum: 7. März 2024
Neue Funktionen
-
Unterstützung für das FP8Training 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 FlashAttention Bibliothek wurde auf Version 2.3.3 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 SMP Aktivierung, Entladung 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
SMPDocker-Container
Das SMP Bibliotheksteam verteilt Docker-Container als Ersatz für die SageMaker PyTorch Framework-Container. Wenn Sie die PyTorch Estimator-Klasse in SageMaker Python verwenden SDK und die Distributionskonfiguration 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.212.0 oder höher.
-
SMPDocker-Container für v2.2.0 mit v12.1 PyTorch CUDA
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
-
CUDNNv8.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
-
EFAv1.30.0
-
NCCLv2.19.4
-
-
Die SageMaker Modellparallelitätsbibliothek v2.1.0
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 entdeckt, bei dem die Feinabstimmung des Modells Hugging Face Llama 2 mit dem Modell übereinstimmt
attn_implementation=flash_attention_2
und zu FSDP Abweichungen führt. 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 Transformer-Modells durch Einrichtenuse_smp_implementation=True
.
SMPDocker-Container
Das SMP Bibliotheksteam verteilt Docker-Container als Ersatz für die SageMaker PyTorch Framework-Container. Wenn Sie die PyTorch Estimator-Klasse in SageMaker Python verwenden SDK und die Distributionskonfiguration 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.207.0 oder höher.
-
SMPDocker-Container für v2.1.2 mit v12.1 PyTorch CUDA
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
-
CUDNNv8.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
-
EFAv1.30.0
-
-
SMPConda-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 Model Parallelism (SMP) -Bibliothek v2.0.0 wurde mit den folgenden neuen Angeboten veröffentlicht.
-
Ein neues
torch.sagemaker
Paket, das gegenüber dem vorherigen Paket in v1.x komplett überarbeitet wurde.smdistributed.modelparallel.torch
SMP -
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
-
SMPv2 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 Version 2 finden Sie unterVerwenden Sie die SageMaker Modellparallelitätsbibliothek v2. -
Wenn Sie SMP Version 1 für das Training von Hugging Face Transformer-Modellen verwendet haben und die Modelle in SMP Version 2 wiederverwenden möchten, finden Sie weitere Informationen unter. Upgrade von Version SMP 1 auf SMP Version 2
-
Für das PyTorch FSDP Training sollten Sie v2 verwendenSMP.
Bekannte Probleme
-
Aktivierungsprüfpunkte funktionieren derzeit nur mit den folgenden Wrapping-Richtlinien mitFSDP.
-
auto_wrap_policy = functools.partial(transformer_auto_wrap_policy, ...)
-
-
Zur Verwendung Aktivierung, Entladung muss der FSDP Aktivierungs-Checkpoint-Typ sein. REENTRANT
-
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 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 Developer Guide verfügbar. Zugunsten dieses vollständigen Entwicklerhandbuchs für SMP v2 im Amazon SageMaker Developer Guide ist die zusätzliche Referenz für SMP v1.x
in der SageMaker SDKPython-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 SMP Python-Bibliothek v1.x-Referenz finden Sie in der SageMaker Python SDK v2.199.0-Dokumentation.
Veraltete Versionen
-
Der Support für wurde eingestellt. TensorFlow
-
In Version 2 gibt es keine Unterstützung für Pipeline-Parallelität. SMP
-
Es gibt keine Unterstützung für die DeepSpeed Bibliothek zugunsten von Native. PyTorch FSDP
SMPDocker-Container
Das SMP Bibliotheksteam verteilt Docker-Container als Ersatz für die SageMaker PyTorch Framework-Container. Wenn Sie die PyTorch Estimator-Klasse in SageMaker Python verwenden SDK und die Distributionskonfiguration 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.207.0 oder höher.
-
SMPDocker-Container für v2.0.1 mit v12.1 PyTorch CUDA
658645717510.dkr.ecr.
us-west-2
.amazonaws.com/smdistributed-modelparallel:2.0.1-gpu-py310-cu121