In dieser Anleitung erfahren Sie, wie Sie ein SDXL Bildgenerierungsmodell mit Tensor Processing Units (TPUs) in Google Kubernetes Engine (GKE) mitMaxDiffusion bereitstellen. In dieser Anleitung laden Sie das Modell aus Hugging Face herunter und stellen es in einem Autopilot- oder Standard-Cluster bereit. Dazu verwenden Sie einen Container, in dem MaxDiffusion ausgeführt wird.
Dieser Leitfaden ist ein guter Ausgangspunkt, wenn Sie bei der Bereitstellung und Zugänglichmachung Ihrer KI/ML-Arbeitslasten die detaillierte Kontrolle, Anpassung, Skalierbarkeit, Robustheit, Übertragbarkeit und Kosteneffizienz von verwaltetem Kubernetes benötigen. Wenn Sie eine einheitliche verwaltete KI-Plattform benötigen, um ML-Modelle schnell und kostengünstig zu erstellen und bereitzustellen, empfehlen wir Ihnen, unsere Bereitstellungslösung Vertex AI zu testen.
Hintergrund
Wenn Sie SDXL mit TPUs in GKE mit MaxDiffusion bereitstellen, können Sie eine robuste, produktionsreife Bereitstellungslösung mit allen Vorteilen von verwaltetem Kubernetes erstellen, einschließlich Kosteneffizienz. Skalierbarkeit und höhere Verfügbarkeit. In diesem Abschnitt werden die in dieser Anleitung verwendeten Schlüsseltechnologien beschrieben.
Stabile Diffusion XL (SDXL)
Stable Diffusion XL (SDXL) ist ein latentes Diffusionsmodell (LDM), das von MaxDiffusion für die Inferenz unterstützt wird. Für generative KI können Sie LDMs verwenden, um hochwertige Bilder aus Textbeschreibungen zu generieren. LDMs sind für Anwendungen wie die Bildersuche und die Bilduntertitelung nützlich.
SDXL unterstützt Inferenz mit einzelnen oder mehreren Hosts mit Fragmentierungsannotationen. So kann SDXL trainiert und auf mehreren Rechnern ausgeführt werden, was die Effizienz verbessern kann.
Weitere Informationen finden Sie im Generative Models by Stability AI-Repository und im SDXL-Artikel.
TPUs
TPUs sind von Google speziell entwickelte anwendungsspezifische integrierte Schaltungen (Application-Specific Integrated Circuits, ASICs), die verwendet werden, um das maschinelle Lernen und die KI-Modelle zu beschleunigen, die mit Frameworks wie folgenden erstellt wurden:TensorFlow, PyTorch und JAX.
Bevor Sie TPUs in GKE verwenden, sollten Sie den folgenden Lernpfad durcharbeiten:
- Lernen Sie mehr über die aktuelle Verfügbarkeit von TPU-Versionen unter Cloud TPU-Systemarchitektur.
- TPUs in GKE
In dieser Anleitung wird das Bereitstellen des SDXL-Modells beschrieben. GKE stellt das Modell auf TPUv5e-Knoten mit einem einzelnen Host bereit. Dabei werden TPU-Topologien basierend auf den Modellanforderungen für die Bereitstellung von Eingabeaufforderungen mit niedriger Latenz konfiguriert. In dieser Anleitung verwendet das Modell einen TPU v5e-Chip mit einer 1x1
-Topologie.
MaxDiffusion
MaxDiffusion ist eine Sammlung von Referenzimplementierungen, geschrieben in Python und Jax, von verschiedenen latenten Diffusionsmodellen, die auf XLA-Geräten ausgeführt werden, einschließlich TPUs und GPUs. MaxDiffusion ist ein Ausgangspunkt für Diffusion-Projekte für Forschung und Produktion.
Weitere Informationen finden Sie im MaxDiffusion-Repository.