Vertex AI-Trainingscluster – Übersicht

Wenn Sie sich für Vertex AI-Trainingscluster interessieren, wenden Sie sich an Ihren Vertriebsmitarbeiter, um Zugriff zu erhalten.

Vertex AI-Trainingscluster ist ein Dienst von Google Cloud , der darauf ausgelegt ist, die größten und komplexesten KI-/ML-Arbeitslasten zu vereinfachen und zu beschleunigen. Es wurde speziell entwickelt, um Herausforderungen beim Training im großen Maßstab zu bewältigen, z. B. komplexe Clusterkonfigurationen, Framework-Optimierung, Umgang mit Hardwarefehlern und Integration unterschiedlicher Toolsets.

Wichtige Vorzüge und Funktionen

Der Model Development Service bietet mehrere wichtige Vorteile:

  • Open-Source-Slurm-UX und Cluster-Transparenz: Vertex AI-Trainingscluster bieten vertraute, flexible Tools zum Starten und Verwalten von Jobs über eine Open-Source-Slurm-Benutzeroberfläche. Slurm ist ein Branchenstandard, der für optimierte GPU-Planung, automatische Fehlertoleranz und vereinfachten Start paralleler Jobs bekannt ist.

  • Automatisierte Einrichtung und Konfiguration von Clustern: Mit Vertex AI-Trainingsclustern werden die Einrichtung und Konfiguration von Clustern automatisiert, um den Übergang von der Reservierung zum Produktionstraining innerhalb von Stunden zu ermöglichen. Nutzer können Cluster über die Google Cloud Console (mit Referenzarchitekturen oder Schritt-für-Schritt-Konfiguration) oder über API-Aufrufe mit JSON-Dateien erstellen.

  • Vorkonfigurierte Data-Science-Rezepte und ‑Workflows: Vertex AI-Trainingscluster enthalten speziell entwickelte Tools und optimierte Trainingsrezepte, um das Training für beliebte Anwendungsfälle wie Llama- und Gemma-Modelle zu beschleunigen. Sie decken Pre-Training, SFT (Supervised Fine-Tuning) und Reinforcement Learning (RL) ab. Diese Rezepte sind für die SOTA-Leistung (State-of-the-Art) auf Google CloudInfrastruktur vorkonfiguriert und bieten erhebliche Leistungssteigerungen.

  • Hardware-Resilienz und hohe Verfügbarkeit: Vertex AI-Trainingscluster sind mit Hardware-Resilienz konzipiert, um die Cluster-Uptime zu erhöhen. Es behebt Hardwareprobleme automatisch, erkennt und priorisiert verschiedene Fehlermodi (z. B. Korrektheitsprüfungen, Geschwindigkeitsprüfungen, ECC-Fehler (Error-Correcting Code), NVIDIA Data Center GPU Manager-Prüfungen (DCGM), Festplattenspeicherkapazität) und löst Abhilfemaßnahmen wie Neustarten, Reimaging oder Ersetzen fehlerhafter Knoten und Fortsetzen von Checkpoints aus. So lassen sich die erheblichen Kostensteigerungen und Verzögerungen, die durch Jobunterbrechungen und Hardwarefehler bei umfangreichen Trainings entstehen, vermeiden.

  • Architektur und Komponenten: Vertex AI-Trainingscluster werden in der Compute Engine-Infrastruktur ausgeführt, die GPUs und CPUs unterstützt. Dabei wird ein verwalteter Slurm-Orchestrator zum Bereitstellen und Verwalten von Compute-Knoten verwendet, einschließlich Anmelde- und Worker-Knoten. Der Dienst lässt sich in andere Google Cloud -Dienste wie Netzwerk und Speicher einbinden.

  • MLOps und Observability: Die Integration mit Vertex MLOps-Tools wie Vertex AI Model Registry ermöglicht die automatische Registrierung, das Tracking und die Versionsverwaltung von trainierten Workflows. Vertex AI Inference ermöglicht die Bereitstellung mit Autoscaling und automatisierten Messwerten. Trainingscluster bieten auch eine automatische Observability-Integration mit Vertex AI TensorBoard, um Trainingsprozesse zu visualisieren, Messwerte zu verfolgen und Probleme frühzeitig zu erkennen.

Trainingscluster können mit der Vertex AI Training Clusters API erstellt, abgerufen, aufgelistet, aktualisiert und gelöscht werden. Nach der Clustererstellung können Nutzer die Funktionalität des Clusters validieren, indem sie sich auf Knoten anmelden, grundlegende Slurm-Befehle ausführen (z. B. sinfo, sbatch) und GPU-bezogene Arbeitslasten ausführen (z. B. nvidia-smi). Das Tool „Cluster Health Scanner“ (CHS) ist vorinstalliert, um Diagnosen wie DCGM- und NCCL-Tests auszuführen und die Clusterbereitschaft zu prüfen.

Vertex AI-Trainingscluster bieten eine API zum Starten vordefinierter LLM-Jobs mit optimierten Rezepten für Modelle wie Llama und Gemma, die Vortraining und kontinuierliches Vortraining über Checkpoints unterstützen. Die Jobüberwachung ist möglich, indem Sie sich am Anmeldeknoten anmelden und Ausgabedateien und Slurm-Befehle wie squeue untersuchen.

Terminologie

In diesem Abschnitt finden Sie Definitionen der wichtigsten Begriffe und Konzepte, die für das Verständnis und die effektive Nutzung von Vertex AI-Trainingsclustern erforderlich sind. Diese Begriffe umfassen wichtige Dienstkomponenten, architektonische Überlegungen, integrierte Speichertechnologien sowie grundlegende Konzepte für maschinelles Lernen (ML) und MLOps, die Ihrer Trainingsumgebung zugrunde liegen.

Wichtige Dienstkonzepte

Knoten
  • Eine einzelne VM (Compute Engine-Instanz) in einem Cluster. Im Kontext von Managed Training auf reservierten Clustern bezieht sich ein Knoten auf eine einzelne virtuelle Maschine (VM), die als einzelne Recheneinheit in Ihrem Cluster dient. Stellen Sie sich das als eine der dedizierten Worker-Maschinen vor, auf der ein Teil Ihres gesamten Trainingsjobs ausgeführt wird. Jeder Knoten ist mit bestimmten Ressourcen wie CPU, Arbeitsspeicher und Beschleunigern (z. B. A3- oder A4-GPUs) ausgestattet. Alle Knoten arbeiten koordiniert zusammen, um umfangreiche, verteilte Trainingsaufgaben zu bewältigen.
Anmeldeknoten
  • Ein Anmeldeknoten ist der Haupteinstiegspunkt für einen Nutzer, um auf den Cluster zuzugreifen, Jobs zu senden und Dateien zu verwalten. Weitere Informationen finden Sie unter Was ist High Performance Computing?.
partition
  • In Slurm eine logische Gruppierung von Knoten, die häufig verwendet wird, um Knoten mit unterschiedlichen Hardwarekonfigurationen zu trennen.
Rezept
  • Im Kontext von Managed Training ist ein Rezept ein umfassendes und wiederverwendbares Paket, das alles enthält, was zum Ausführen einer bestimmten umfangreichen Trainingsarbeitslast erforderlich ist.
Slurm-Cluster
  • Eine Sammlung von Compute Engine-Instanzen, die von Slurm verwaltet werden und einen Anmeldeknoten und mehrere Worker-Knoten umfasst, die für die Ausführung von Trainingsjobs konfiguriert sind. Weitere Informationen finden Sie unter Slurm-Arbeitslastmanager.
Worker-Knoten
  • Ein Worker-Knoten ist eine einzelne Maschine oder Recheninstanz in einem Cluster, die für die Ausführung von Aufgaben oder die Erledigung von Arbeiten verantwortlich ist. In Systemen wie Kubernetes- oder Ray-Clustern sind Knoten die Grundeinheiten für die Berechnung. Weitere Informationen finden Sie unter Was ist High Performance Computing (HPC)?.

Architektur und Vernetzung

Nutzer-VPC-Netzwerk
  • Ein Nutzer-VPC-Netzwerk ist eine Google Cloud Virtual Private Cloud (VPC), die privat auf einen Dienst zugreift, der in einer anderen VPC (der Ersteller-VPC) gehostet wird. Weitere Informationen finden Sie unter Private Service Connect.
Maximale Übertragungseinheit (MTU)
  • Die maximale Größe eines Datenpakets, das ein mit dem Netzwerk verbundenes Gerät übertragen kann. Größere MTU-Größen (Jumbo-Frames) können die Netzwerkleistung für bestimmte Arbeitslasten verbessern. Weitere Informationen finden Sie unter Maximale Übertragungseinheit.
Zugriff auf private Dienste
  • Der Zugriff auf private Dienste ist eine private Verbindung zwischen Ihrem VPC-Netzwerk (Virtual Private Cloud) und Netzwerken von Google oder Drittanbietern. Damit können VM-Instanzen in Ihrem VPC-Netzwerk über interne IP-Adressen mit diesen Diensten kommunizieren, ohne dem öffentlichen Internet ausgesetzt zu sein. Weitere Informationen finden Sie unter Zugriff auf private Dienste.
VPC-Netzwerk-Peering
  • Eine Netzwerkverbindung, die es zwei VPC-Netzwerken ermöglicht, privat zu kommunizieren. Im Zusammenhang mit Managed Training auf reservierten Clustern ist VPC-Netzwerk-Peering eine wichtige Komponente für die Integration wichtiger Dienste. Dies ist beispielsweise die erforderliche Methode, um die VPC Ihres Clusters mit einer Filestore-Instanz zu verbinden, die das erforderliche freigegebene `/home`-Verzeichnis für alle Knoten in Ihrem Cluster bereitstellt.
zone
  • Ein bestimmter Bereitstellungsbereich in einer Google Cloud-Region. Im Zusammenhang mit Managed Training auf reservierten Clustern sollten alle Komponenten des Dienstes (der Cluster, Filestore und verwaltete Lustre-Instanzen) in derselben Zone erstellt werden, um die beste Leistung zu erzielen.

Integrierte Speichertechnologien

Cloud Storage Fuse
  • Ein Open-Source-FUSE-Adapter, mit dem Sie Cloud Storage-Buckets als Dateisystem auf Linux- oder macOS-Systemen bereitstellen können. Weitere Informationen finden Sie unter Cloud Storage Fuse.
Filestore
  • Ein vollständig verwalteter Hochleistungs-Dateispeicherdienst von Google Cloud, der häufig für Anwendungen verwendet wird, die ein freigegebenes Dateisystem benötigen. Weitere Informationen finden Sie unter Filestore-Übersicht.
Managed Lustre
  • Ein paralleles, verteiltes Dateisystem, das für Hochleistungs-Computing entwickelt wurde. Managed Lustre von Google Cloud bietet ein Dateisystem mit hohem Durchsatz für anspruchsvolle Arbeitslasten. Weitere Informationen finden Sie unter Managed Lustre – Übersicht.
Leistungsstufe
  • Eine Konfigurationseinstellung für eine Managed Lustre-Instanz, die die Durchsatzgeschwindigkeit (in MB/s pro TiB) definiert und sich auf die Mindest- und Höchstkapazität auswirkt.

Wichtige Konzepte für maschinelles Lernen und MLOps

checkpoint
  • Daten, die den Status der Parameter eines Modells während des Trainings oder nach Abschluss des Trainings erfassen. Während des Trainings können Sie beispielsweise: 1. Das Training wird beendet, möglicherweise absichtlich oder aufgrund bestimmter Fehler. 2. Erfassen Sie den Prüfpunkt. 3. Laden Sie den Prüfpunkt später neu, möglicherweise auf anderer Hardware. 4. Training neu starten In Gemini bezieht sich ein Prüfpunkt auf eine bestimmte Version eines Gemini-Modells, das mit einem bestimmten Dataset trainiert wurde.
Überwachte Feinabstimmung (Supervised Fine-Tuning, SFT)
  • Eine Machine-Learning-Technik, bei der ein vortrainiertes Modell mit einem kleineren, gelabelten Dataset weiter trainiert wird, um es an eine bestimmte Aufgabe anzupassen.
Vertex AI Inference
  • Ein Vertex AI-Dienst, mit dem Sie ein trainiertes Modell für maschinelles Lernen (ML) verwenden können, um Inferenz aus neuen, unbekannten Daten zu ziehen. Vertex AI bietet Dienste zum Bereitstellen von Modellen für die Inferenz. Weitere Informationen finden Sie unter Inferenz von einem benutzerdefiniert trainierten Modell abrufen.
Vertex AI Model Registry
  • Vertex AI Model Registry ist ein zentrales Repository, in dem Sie den Lebenszyklus Ihrer ML-Modelle verwalten können. Vertex AI Model Registry bietet eine Übersicht über Ihre Modelle, sodass Sie neue Versionen besser organisieren, verfolgen und trainieren können. Wenn Sie eine Modellversion haben, die Sie bereitstellen möchten, können Sie sie einem Endpunkt direkt aus der Registry zuweisen oder Modelle mithilfe von Aliassen auf einem Endpunkt bereitstellen. Weitere Informationen finden Sie unter Einführung in Vertex AI Model Registry.
Vertex AI TensorBoard
  • Vertex AI TensorBoard ist ein verwalteter, skalierbarer Dienst in Google Cloud, mit dem Data Scientists und ML-Entwickler ihre ML-Tests visualisieren, das Modelltraining debuggen und Leistungsmesswerte über die vertraute Open-Source-TensorBoard-Oberfläche verfolgen können. Es lässt sich nahtlos in Vertex AI Training und andere Dienste einbinden und bietet persistenten Speicher für Versuchsdaten sowie die Möglichkeit zur gemeinsamen Analyse der Modellentwicklung. Weitere Informationen finden Sie unter Einführung in Vertex AI TensorBoard.