Verwaltete Trainingscluster auf der Gemini Enterprise Agent Platform sind ein Dienst von Google Cloud , der die größten und komplexesten KI/ML-Arbeitslasten vereinfachen und beschleunigen soll. Sie wurde speziell entwickelt, um Herausforderungen beim Training im großen Maßstab zu bewältigen, z. B. komplexe Clusterkonfiguration, Framework-Optimierung, Umgang mit Hardwarefehlern und Integration unterschiedlicher Toolsets.
Wichtige Vorzüge und Funktionen
Verwaltete Trainingscluster bieten mehrere wichtige Vorteile:
Open-Source-Slurm-UX und Clustertransparenz: Managed Training Clusters bietet vertraute, flexible Tools zum Starten und Verwalten von Jobs über eine Open-Source-Slurm-Benutzeroberfläche. Slurm ist ein Branchenstandard, der für optimiertes GPU-Scheduling, automatisierte Fehlertoleranz und vereinfachtes paralleles Starten von Jobs bekannt ist.
Automatisierte Einrichtung und Konfiguration von Clustern: Managed Training Clusters automatisiert die Einrichtung und Konfiguration von Clustern, 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 schrittweiser Konfiguration) oder über API-Aufrufe mit JSON-Dateien erstellen.
Vorkonfigurierte Data-Science-Rezepte und ‑Workflows: Verwaltete Trainingscluster enthalten speziell entwickelte Tools und optimierte Trainingsrezepte, um das Training für gängige Anwendungsfälle wie Llama- und Gemma-Modelle zu beschleunigen. Dazu gehören Vortraining, überwachte Feinabstimmung (SFT) und Reinforcement Learning (RL). Diese Rezepte sind für eine hohe Leistung in der Google Cloud-Infrastruktur vorkonfiguriert und zeigen erhebliche Leistungssteigerungen.
Hardwareresilienz und hohe Verfügbarkeit: Managed Training Clusters sind auf Hardwareresilienz ausgelegt, um die Clusterverfügbarkeit zu erhöhen. Es behebt automatisch Hardwareprobleme, erkennt und priorisiert verschiedene Fehlermodi (z. B. Korrektheitsprüfungen, Geschwindigkeitsprüfungen, ECC-Fehler (Error-Correcting Code), NVIDIA Data Center GPU Manager (DCGM)-Prüfungen, Speicherplatzkapazität) und löst Abhilfemaßnahmen wie Neustart, Neuinstallation oder Ersetzen fehlerhafter Knoten und Fortsetzen von Prüfpunkten aus. So lassen sich die erheblichen Kostensteigerungen und Verzögerungen durch Jobunterbrechungen und Hardwarefehler bei umfangreichen Trainings minimieren.
Architektur und Komponenten: Verwaltete Trainingscluster werden auf der Compute Engine-Infrastruktur ausgeführt, die GPUs und CPUs unterstützt. Es nutzt einen verwalteten Slurm-Orchestrator, um Compute-Knoten, einschließlich Anmelde- und Worker-Knoten, bereitzustellen und zu verwalten. Der Dienst ist in andere Google Cloud -Dienste wie Netzwerk und Speicher eingebunden.
MLOps und Beobachtbarkeit: Integration in MLOps-Tools der Agent Platform wie die Gemini Enterprise Agent Platform Model Registry für die automatische Registrierung, das Tracking und die Versionsverwaltung trainierter Workflows sowie Gemini Enterprise Agent Platform Inference für die Bereitstellung mit Autoscaling und automatisierten Messwerten. Verwaltete Trainingscluster bieten außerdem eine automatische Einbindung von Beobachtbarkeit in Vertex AI TensorBoard, um Trainingsprozesse zu visualisieren, Messwerte zu verfolgen und Probleme frühzeitig zu erkennen.
Trainingscluster können mit der Gemini Enterprise Agent Platform Training Clusters API erstellt, abgerufen, aufgelistet, aktualisiert und gelöscht werden. Sie können Ihre
Cluster auch in der Google Cloud Console ansehen, die
Cloud Monitoring-Dashboards für den Cluster hinzufügt. Nach der Clustererstellung können Nutzer die Funktionalität prüfen, indem sie sich bei Knoten anmelden, grundlegende Slurm-Befehle ausführen (z. B. sinfo, sbatch) und GPU-bezogene Arbeitslasten ausführen (z. B. nvidia-smi). Mit der Slurm Job API können Sie Slurm-Jobs direkt über die Agent Platform API verwalten.
Managed Training Clusters bietet eine API zum Starten von vordefinierten LLM-Jobs mit optimierten Rezepten für Modelle wie Llama und Gemma. Dabei werden Vortraining und kontinuierliches Vortraining von Prüfpunkten unterstützt. Das Job-Monitoring ist möglich, indem Sie sich beim Login-Knoten anmelden und Ausgabedateien und Slurm-Befehle wie squeue prüfen.
Terminologie
In diesem Abschnitt finden Sie Definitionen der wichtigsten Begriffe und Konzepte, die für das Verständnis und die effektive Nutzung von verwalteten Trainingsclustern erforderlich sind. Diese Begriffe umfassen wichtige Dienstkomponenten, architektonische Überlegungen, integrierte Speichertechnologien sowie grundlegende Konzepte für maschinelles Lernen (ML) und MLOps, die die Grundlage Ihrer Trainingsumgebung bilden.
Wichtige Dienstkonzepte
Knoten
- Eine einzelne virtuelle Maschine (Compute Engine-Instanz) innerhalb eines Clusters. Im Kontext des verwalteten Trainings auf reservierten Clustern bezieht sich ein Knoten auf eine einzelne virtuelle Maschine (VM), die als einzelne Recheneinheit in Ihrem Cluster dient. Sie können sich diese als eine der dedizierten Worker-Maschinen vorstellen, auf denen 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. Sie arbeiten alle koordiniert zusammen, um umfangreiche, verteilte Trainingsaufgaben zu bewältigen.
Login-Knoten
- Ein Login-Knoten ist der Haupteinstiegspunkt für einen Nutzer, um auf den Cluster zuzugreifen, Jobs einzureichen und Dateien zu verwalten. Weitere Informationen finden Sie unter Was ist Hochleistungs-Computing?.
Partition
- In Slurm eine logische Gruppierung von Knoten, die häufig verwendet wird, um Knoten mit unterschiedlichen Hardwarekonfigurationen zu trennen.
recipe
- Im Kontext von verwaltetem 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 Login-Knoten sowie mehrere Worker-Knoten enthalten, die für die Ausführung von Trainingsjobs konfiguriert sind. Weitere Informationen finden Sie unter Slurm Workload Manager.
Worker-Knoten
- Ein Worker-Knoten ist eine einzelne Maschine oder Compute-Instanz innerhalb eines Clusters, die für die Ausführung von Tasks oder die Erledigung von Arbeit zuständig ist. In Systemen wie Kubernetes- oder Ray-Clustern sind Knoten die grundlegenden Recheneinheiten. Weitere Informationen finden Sie unter Was ist Hochleistungs-Computing (HPC)?.
Architektur und Netzwerke
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 Drittanbieter-Dienstleistern. Damit können VM-Instanzen in Ihrem VPC-Netzwerk über interne IP-Adressen mit diesen Diensten kommunizieren, ohne dass sie dem öffentlichen Internet ausgesetzt sind. Weitere Informationen finden Sie unter Zugriff auf private Dienste.
VPC-Netzwerk-Peering
- Eine Netzwerkverbindung, die zwei VPC-Netzwerken die private Kommunikation ermöglicht. Im Kontext des verwalteten Trainings auf reservierten Clustern ist VPC-Netzwerk-Peering eine wichtige Komponente für die Einbindung wichtiger Dienste. Dies ist beispielsweise die erforderliche Methode, um die VPC Ihres Clusters mit einer Filestore-Instanz zu verbinden, die das erforderliche freigegebene Verzeichnis „/home“ für alle Knoten in Ihrem Cluster bereitstellt.
Zone
- Ein bestimmter Bereitstellungsbereich innerhalb einer Google Cloud-Region. Im Kontext von verwaltetem Training auf reservierten Clustern sollten für eine optimale Leistung alle Komponenten des Dienstes (der Cluster, Filestore und verwaltete Lustre-Instanzen) in derselben Zone erstellt werden.
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, leistungsstarker Dateispeicherdienst von Google Cloud, der häufig für Anwendungen verwendet wird, die ein freigegebenes Dateisystem erfordern. 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 ML- und MLOps-Konzepte
Prüfpunkt
- Daten, die den Zustand der Parameter eines Modells entweder während des Trainings oder nach Abschluss des Trainings erfassen. Während des Trainings können Sie beispielsweise Folgendes tun: 1. Das Training wird beendet, entweder absichtlich oder aufgrund bestimmter Fehler. 2. Prüfpunkt erfassen. 3. Später laden Sie den Prüfpunkt 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 (SFT)
- Eine Technik des maschinellen Lernens, 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 Machine-Learning-Modell (ML) verwenden können, um Inferenzen aus neuen, unbekannten Daten zu ziehen. Vertex AI bietet Dienste zum Bereitstellen von Modellen für die Inferenz. Weitere Informationen finden Sie unter Inferenzen 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, Fehler im Modelltraining beheben und Leistungsmesswerte über die vertraute Open-Source-TensorBoard-Oberfläche verfolgen können. Er lässt sich nahtlos in Vertex AI Training und andere Dienste einbinden, bietet nichtflüchtigen Speicher für Testdaten und ermöglicht die gemeinsame Analyse der Modellentwicklung. Weitere Informationen finden Sie unter Einführung in Vertex AI TensorBoard.