In dieser Anleitung erfahren Sie, wie Sie das Training für Reinforcement Learning (RL) mit mehreren Hosts in einem TPU-v6e-32-Cluster (Tensor Processing Unit) mit MaxText und Cluster Toolkit ausführen. Sie verwenden das Cluster Toolkit, um eine Trainingsarbeitslast mit mehreren Hosts auszuführen und die Ergebnisse für die Bereitstellung wieder in das Hugging Face-Format zu exportieren.
Ziele
- Installieren Sie das Cluster Toolkit und seine Abhängigkeiten.
- Cluster Toolkit-Cluster bereitstellen
- Hugging Face-Modell in das MaxText-Format konvertieren
- Führen Sie eine RL-Trainingsarbeitslast im TPU v6e-Cluster aus.
- Konvertieren Sie das feinabgestimmte Modell für die Bereitstellung zurück in das Hugging Face-Format.
Kosten
In diesem Dokument verwenden Sie die folgenden kostenpflichtigen Komponenten von Google Cloud:
Mit dem Preisrechner können Sie eine Kostenschätzung für Ihre voraussichtliche Nutzung vornehmen.
Nach Abschluss der in diesem Dokument beschriebenen Aufgaben können Sie weitere Kosten vermeiden, indem Sie die erstellten Ressourcen löschen. Weitere Informationen finden Sie unter Bereinigen.
Hinweis
Für diese Anleitung benötigen Sie ein Hugging Face-Zugriffstoken. Sie können sich unter Hugging Face für ein kostenloses Konto registrieren. Nachdem Sie ein Konto erstellt haben, können Sie ein Zugriffstoken generieren:
- Klicken Sie auf der Seite Welcome to Hugging Face (Willkommen bei Hugging Face) auf Ihren Konto-Avatar und wählen Sie Access tokens (Zugriffstokens) aus.
- Klicken Sie auf der Seite Zugriffstokens auf Neues Token erstellen.
- Wählen Sie den Tokentyp Lesen aus und geben Sie einen Namen für den Token ein.
- Ihr Zugriffstoken wird angezeigt. Speichern Sie das Token an einem sicheren Ort.
- Akzeptieren Sie auf der Hugging Face-Website die Lizenzvereinbarung für das Modell, das Sie trainieren möchten. In dieser Anleitung wird das Modell
qwen3-30b-a3bverwendet.
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für Ihr Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Ausführen dieser Anleitung benötigen:
- TPU-Administrator (
roles/tpu.admin) - Kubernetes Engine-Administrator (
roles/container.admin) - Compute-Administrator (
roles/compute.admin) - Storage-Administrator (
roles/storage.admin) - Service Account User (
roles/iam.serviceAccountUser) - Service Account Admin (
roles/iam.serviceAccountAdmin) - Projekt-IAM-Administrator (
roles/resourcemanager.projectIamAdmin) - Service Usage-Administrator ()
roles/serviceusage.serviceUsageAdmin
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
Umgebungsvariablen einrichten
Richten Sie die Umgebungsvariablen ein:
Ersetzen Sie Folgendes:
- YOUR_PROJECT_ID: die ID Ihres Projekts in Google Cloud .
- YOUR_REGION: Die Region, in der Sie Ihren Cluster bereitstellen möchten.
- YOUR_ZONE: die Zone, in der Sie Ihren Cluster bereitstellen möchten.
- YOUR_CLUSTER_NAME: Der Name Ihres Google Kubernetes Engine-Clusters (bis zu 20 Zeichen).
- YOUR_BUCKET_NAME: ein global eindeutiger Name für einen Cloud Storage-Bucket.
- YOUR_RESERVATION_NAME: der Name Ihrer Reservierung.
- YOUR_HF_TOKEN: Ihr Hugging Face-Zugriffstoken.
Cluster Toolkit-Abhängigkeiten installieren
Wenn Sie diese Anleitung auf einem Linux- oder macOS-Client oder einer Workstation ausführen möchten, folgen Sie der Anleitung unter Abhängigkeiten installieren in der Cluster Toolkit-Dokumentation.
Wenn Sie Cloud Shell verwenden, können Sie diesen Abschnitt überspringen.
Cluster Toolkit installieren
Installieren Sie das vorgefertigte Bundle für Cluster Toolkit in Ihrem aktuellen Arbeitsverzeichnis. Folgen Sie dazu der Anleitung unter Cluster Toolkit installieren.
Sie können das Bundle beispielsweise so herunterladen und in Ihr aktuelles Arbeitsverzeichnis extrahieren:
Wenn Sie das Bundle in Ihr aktuelles Arbeitsverzeichnis extrahieren, erhalten Sie die Binärdatei gcluster und die Blaupausen examples/, die Sie in den folgenden Schritten verwenden.
Cluster Toolkit-Cluster erstellen
So erstellen und stellen Sie einen Cluster mit 32 v6e-TPU-Chips mit dem Cluster Toolkit bereit:
Erstellen Sie einen Cloud Storage-Bucket:
Kopieren Sie den Cluster Toolkit-Blueprint in Ihr aktuelles Arbeitsverzeichnis:
Standardmäßig hat das Dienstkonto Ihres Cluster-Knotenpools nicht die erforderlichen Berechtigungen zum Schreiben in Ihren Cloud Storage-Bucket. Damit das Dienstkonto des Knotenpools in Ihren Cloud Storage-Bucket schreiben darf, müssen Sie ihm die Rolle
Storage Adminzuweisen. Um diese Rolle zuzuweisen, bearbeiten Sie die Dateigke-tpu-v6e-advanced.yaml, indem Sie das Modulservice-accountmit dem Namennode_pool_service_accountaktualisieren:Stellen Sie Ihren Cluster Toolkit-Cluster mit dem
gcluster deploy-Befehl bereit. Verwenden Sie dazu den Blueprintgke-tpu-v6e-advanced.yamlund übergeben Sie die erforderlichen Variablen mit dem Flag--vars:Konfigurieren Sie die Container Registry-Authentifizierung und weisen Sie Ihren GKE-Dienstkonten die Rolle „Storage-Administrator“ (
roles/storage.admin) zu:
Modell in das MaxText-Format konvertieren
Wenn Sie das Modell im MaxText-Format trainieren möchten, müssen Sie es vom Hugging Face-Format in das MaxText-Format konvertieren.
Verwenden Sie den
gcluster job config-Befehl, um Ihr Standardprojekt, Ihren Standardcluster und Ihren Standardstandort zu konfigurieren und nachfolgende Befehle zu vereinfachen:Verwenden Sie den Befehl
gcluster job submit, um das Modell vom Hugging Face-Format in das MaxText-Format zu konvertieren und in Ihrem Cloud Storage-Bucket zu speichern:Verwenden Sie den Befehl
gcluster job logs, um den Status des Konvertierungsjobs zu prüfen:Prüfen Sie, ob die konvertierten Modelldateien in Ihrem Cloud Storage-Bucket verfügbar sind:
Trainingsarbeitslast starten
Nachdem die Konvertierung abgeschlossen ist, starten Sie die RL-Trainingsarbeitslast:
So prüfen Sie den Status des Trainingsjobs:
So prüfen Sie, ob die Trainingsprüfpunkte in Ihrem Cloud Storage-Bucket generiert wurden:
Trainiertes Modell zurück in das Hugging Face-Format konvertieren
Nach Abschluss des Trainingsjobs konvertieren Sie das Modell zurück in das Hugging Face-Format:
So prüfen Sie den Status des Konvertierungsjobs:
So prüfen Sie, ob die trainierten Hugging Face-Modellgewichte und Konfigurationsdateien in Ihrem Cloud Storage-Bucket vorhanden sind:
Bereinigen
Verwenden Sie den gcluster destroy-Befehl, um die in dieser Anleitung erstellten Ressourcen zu löschen und zusätzliche Gebühren zu vermeiden:
Nächste Schritte
- Weitere Informationen zu Cloud TPU finden Sie unter Einführung in Cloud TPU.
- Details zur Architektur und Konfiguration der
v6e-32TPU finden Sie unter TPU v6e. - Weitere Informationen zum Cluster Toolkit finden Sie unter Cluster Toolkit – Übersicht.