Wählen Sie Ihre Cookie-Einstellungen aus

Wir verwenden essentielle Cookies und ähnliche Tools, die für die Bereitstellung unserer Website und Services erforderlich sind. Wir verwenden Performance-Cookies, um anonyme Statistiken zu sammeln, damit wir verstehen können, wie Kunden unsere Website nutzen, und Verbesserungen vornehmen können. Essentielle Cookies können nicht deaktiviert werden, aber Sie können auf „Anpassen“ oder „Ablehnen“ klicken, um Performance-Cookies abzulehnen.

Wenn Sie damit einverstanden sind, verwenden AWS und zugelassene Drittanbieter auch Cookies, um nützliche Features der Website bereitzustellen, Ihre Präferenzen zu speichern und relevante Inhalte, einschließlich relevanter Werbung, anzuzeigen. Um alle nicht notwendigen Cookies zu akzeptieren oder abzulehnen, klicken Sie auf „Akzeptieren“ oder „Ablehnen“. Um detailliertere Entscheidungen zu treffen, klicken Sie auf „Anpassen“.

Parallelität für Experten

Fokusmodus
Parallelität für Experten - Amazon SageMaker KI

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.

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.

Ein Modell der Expertenmischung (Mixture of Experts, MoE) ist eine Art Transformatormodell, das einen spärlichen Ansatz verwendet, sodass das Training im Vergleich zu herkömmlichen Modellen mit hoher Dichte leichter zu trainieren ist. In dieser neuronalen Netzwerkarchitektur von MoE wird für jede Eingabe nur eine Teilmenge der Komponenten des Modells, die als Experten bezeichnet werden, verwendet. Dieser Ansatz bietet mehrere Vorteile, darunter effizienteres Training und schnellere Inferenz, selbst bei einer größeren Modellgröße. Mit anderen Worten, mit demselben Rechenbudget für das Training eines Modells mit voller Dichte können Sie bei Verwendung von MoE ein größeres Modell oder einen größeren Datensatz anpassen.

Ein MoE-Modell besteht aus mehreren Experten, die jeweils aus einem neuronalen Netzwerk bestehen, in der Regel einem Feed-Forward-Netzwerk (FFN). Ein Gate-Netzwerk, das als Router bezeichnet wird, bestimmt, welche Token an welchen Experten gesendet werden. Diese Experten sind auf die Verarbeitung bestimmter Aspekte der Eingabedaten spezialisiert, sodass das Modell schneller trainiert werden kann, die Rechenkosten reduziert werden und gleichzeitig die gleiche Leistungsqualität wie das Modell mit hoher Dichte erreicht wird. Weitere Informationen zu Mixture of Experts im Allgemeinen finden Sie im Blog Applying Mixture of Experts in LLM Architectures auf der NVIDIA-Entwickler-Website.

Expertenparallelität ist eine Art von Parallelität, bei der Experten eines MoE-Modells auf verschiedene GPU-Geräte aufgeteilt werden.

SMP v2 ist in NVIDIA Megatron integriert, um Expertenparallelität zur Unterstützung von MoE-Schulungsmodellen zu implementieren, und läuft auf FSDP. PyTorch APIs Sie verwenden Ihren PyTorch FSDP-Trainingscode unverändert und aktivieren die SMP-Expertenparallelität für das Training von MoE-Modellen.

Hugging Face Transformer-Modelle, die mit der Parallelität von SMP Expert kompatibel sind

SMP v2 bietet derzeit Expertenunterstützung für Parallelität für die folgenden Hugging Face Face-Transformatormodelle.

Konfigurieren Sie Parallelität für Experten

Für expert_parallel_degree wählen Sie einen Wert für den Grad der Expertenparallelität aus. Der Wert muss die Anzahl der GPUs in Ihrem Cluster gleichmäßig verteilen. Um beispielsweise Ihr Modell zu teilen, während Sie eine Instanz mit 8 verwenden GPUs, wählen Sie 2, 4 oder 8. Wir empfehlen, mit einer kleinen Zahl zu beginnen und diese schrittweise zu erhöhen, bis das Modell in den GPU-Speicher passt.

Die folgenden Codefragmente zeigen, wie Sie das SMP-Initialisierungsmodul torch.sagemaker.init() zu Ihrem Trainingsskript hinzufügen und das SMP-Konfigurationswörterbuch im JSON-Format für den Trainingsjob-Launcher einrichten. Dabei folgen Sie dem unter beschriebenen zweistufigen Prozess. Verwenden Sie die SageMaker Modellparallelitätsbibliothek v2 Sie müssen keine Änderungen an Ihrem Modell oder Ihrer FSDP-Konfiguration vornehmen. PyTorch PyTorch Weitere Informationen zum Parameter expert_parallel_degree erhalten Sie unter Konfigurationsparameter für die Kernfunktion von SMP v2.

Anmerkung

Sie können Expertenparallelität mit verwenden. Parallelität hybrider Sharded Data Beachten Sie, dass die Expertenparallelität derzeit nicht mit der Tensorparallelität kompatibel ist.

Anmerkung

Diese Schulungsfunktion für Experten zur Parallelität ist in der folgenden Kombination aus Bibliotheken von und der Bibliothek verfügbar: SageMaker PyTorch

  • SMP v2.3.0 und höher

  • Das SageMaker Python SDK v2.214.4 und höher

  • PyTorch v2.2.0 und höher

In deinem Trainingsskript

Initialisieren Sie im Rahmen von Schritt 1 Ihr Skript mit, um SMP v2 torch.sagemaker.init() zu aktivieren, und schließen Sie Ihr Modell mit der torch.sagemaker.transform API zusammen. Fügen Sie der API den config Parameter hinzu, um MoE zu aktivieren. Der folgende Codeausschnitt zeigt, wie Sie SMP MoE für die generische Modellklasse aktivieren, die eine MoE-Transformator-Modellkonfiguration AutoModelForCausalLM abruft, indem Sie die Methode für das Training von Grund auf oder die from_config Methode für die Feinabstimmung verwenden. from_pretrained Weitere Informationen zur MoEConfig SMP-Klasse finden Sie unter. torch.sagemaker.moe.moe_config.MoEConfig

# Import the torch.sagemaker.transform API and initialize. import torch.sagemaker as tsm tsm.init() # Import transformers AutoModelForCausalLM class. from transformers import AutoModelForCausalLM # Import the SMP-implementation of MoE configuration class. from torch.sagemaker.moe.moe_config import MoEConfig # Define a transformer model with an MoE model configuration model = AutoModelForCausalLM.from_config(MoEModelConfig) # Wrap it by torch.sagemaker.transform with the SMP MoE configuration. model = tsm.transform( model, config=MoEConfig( smp_moe=True, random_seed=12345, moe_load_balancing="sinkhorn", global_token_shuffle=False, moe_all_to_all_dispatcher=True, moe_aux_loss_coeff=0.001, moe_z_loss_coeff=0.001 ) )

SMP-Konfiguration

Fügen Sie im Rahmen von Schritt 2 den folgenden Parameter zum SMP-Konfigurationswörterbuch für den SageMaker PyTorch Schätzer hinzu.

{ ..., # other SMP config parameters "expert_parallel_degree": 8 }
DatenschutzNutzungsbedingungen für die WebsiteCookie-Einstellungen
© 2025, Amazon Web Services, Inc. oder Tochtergesellschaften. Alle Rechte vorbehalten.