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.
Instance-Empfehlungen für Bereitstellungen von Multimodell-Endpunkten
Bei der Auswahl eines SageMaker AI ML-Instance-Typs für einen Endpunkt mit mehreren Modellen sind mehrere Punkte zu berücksichtigen:
-
Stellen Sie ausreichend Amazon Elastic Block Store (Amazon EBS)-Kapazität für alle Modelle bereit, die bereitgestellt werden müssen.
-
Wägen Sie Leistung (Minimierung von Kaltstarts) und Kosten (keine übermäßige Bereitstellung von Instance-Kapazität) gegeneinander auf. Informationen zur Größe des Speichervolumens, das SageMaker AI für jeden Instanztyp für einen Endpunkt und für einen Endpunkt mit mehreren Modellen anhängt, finden Sie unter. Instanz-Speichervolumen
-
Bei einem Container, der für die Ausführung im
MultiModel
-Modus konfiguriert ist, verfügt das für seine Instances bereitgestellte Speichervolume über mehr Speicher als im StandardmodusSingleModel
. Somit können mehr Modelle im Instance-Speicher zwischengespeichert werden als imSingleModel
-Modus.
Beachten Sie bei der Auswahl eines SageMaker AI ML-Instanztyps Folgendes:
-
Multimodell-Endpunkte werden derzeit für alle CPU-Instance-Typen und für Single-GPU-Instance-Typen unterstützt.
-
Bei der Datenverkehrsverteilung (Zugriffsmuster) auf die Modelle, die hinter dem Multimodell-Endpunkt gehostet werden sollen, zusammen mit der Modellgröße (wie viele Modelle in den Speicher der Instance geladen werden könnten) ist folgendes zu berücksichtigen:
-
Stellen Sie sich die Speichermenge auf einer Instanz als Cache-Speicherplatz für zu ladende Modelle vor und stellen Sie sich die Anzahl von v CPUs als die Parallelitätsgrenze für die Durchführung von Inferenzen auf die geladenen Modelle vor (vorausgesetzt, das Aufrufen eines Modells ist an die CPU gebunden).
-
Bei CPU-gestützten Instances CPUs wirkt sich die Anzahl von v auf Ihre maximale Anzahl gleichzeitiger Aufrufe pro Instanz aus (vorausgesetzt, das Aufrufen eines Modells ist an die CPU gebunden). Ein höherer Wert von v CPUs ermöglicht es Ihnen, mehr einzigartige Modelle gleichzeitig aufzurufen.
-
Bei GPU-gestützten Instances können Sie mit mehr Instance- und GPU-Speicher mehr Modelle laden und für Inference-Anfragen bereithalten.
-
Halten Sie für CPU- und GPU-gestützte Instances eine gewisse Menge an „Reservespeicher“ bereit, damit nicht genutzte Modelle entladen werden können, insbesondere bei Multimodell-Endpunkten mit mehreren Instances. Wenn eine Instance oder eine Availability Zone ausfällt, werden die Modelle dieser Instances an andere Instances hinter dem Endpunkt umgeleitet.
-
-
Bestimmen Sie Ihre Toleranz gegenüber Lade-/Herunterladezeiten:
-
Die Instance-Typfamilien d (z. B. m5d, c5d oder r5d) und g5s verfügen über eine SSD NVMe (Non-Volatile Memory Express), die eine hohe I/O-Leistung bietet und die Zeit reduzieren kann, die zum Herunterladen von Modellen auf das Speichervolume und zum Laden des Modells durch den Container vom Speichervolume benötigt wird.
-
Da die Instance-Typen d und g5 über einen NVMe SSD-Speicher verfügen, fügt SageMaker KI diesen ML-Compute-Instances, die den Multimodell-Endpunkt hosten, kein Amazon EBS-Speichervolume hinzu. Auto Scaling funktioniert am besten, wenn die Modelle ähnlich dimensioniert und homogen sind, d. h. wenn sie ähnliche Inference-Latenz- und Ressourcenanforderungen haben.
-
Sie können auch die folgenden Anleitungen verwenden, um das Laden von Modellen auf Ihre Multimodell-Endpunkte zu optimieren:
Wählen Sie einen Instance-Typ, der nicht alle Zielmodelle im Speicher aufnehmen kann
In einigen Fällen können Sie sich dafür entscheiden, die Kosten zu senken, indem Sie einen Instance-Typ wählen, der nicht alle Zielmodelle gleichzeitig im Arbeitsspeicher aufnehmen kann. SageMaker KI entlädt Modelle dynamisch, wenn der Speicherplatz knapp wird, um Platz für ein neues Zielmodell zu schaffen. Bei selten angeforderten Modellen verlieren Sie die dynamische Latenz beim Laden. In Fällen mit strengeren Latenzanforderungen können Sie sich für größere Instance-Typen oder mehr Instances entscheiden. Wenn Sie vorab Zeit für Leistungstests und Analysen investieren, können Sie Produktionsbereitstellungen erfolgreich durchführen.
Auswertung der Treffer im Modell-Cache
CloudWatch Amazon-Metriken können Ihnen bei der Bewertung Ihrer Modelle helfen. Weitere Informationen zu Kennzahlen, die Sie mit Multimodell-Endpunkten verwenden können, finden Sie unter CloudWatch Metriken für Endpunktbereitstellungen mit mehreren Modellen .
Sie können mithilfe der Average
-Statistik der Metrik ModelCacheHit
das Verhältnis von Anforderungen überwachen, bei denen das Modell bereits geladen ist. Sie können mithilfe der SampleCount
-Statistik für die Metrik ModelUnloadingTime
die Anzahl der Entladungsanforderungen überwachen, die während eines Zeitraums an den Container gesendet werden. Wenn Modelle zu häufig entladen werden (ein Anzeichen für Thrashing, bei dem Modelle entladen und wieder geladen werden, da für den Arbeitssatz von Modellen nicht genügend Cache-Platz zur Verfügung steht), sollten Sie einen größeren Instance-Typ mit mehr Speicher verwenden oder die Anzahl der Instances hinter dem Multimodell-Endpunkt erhöhen. Beachten Sie bei Multimodell-Endpunkten mit mehreren Instances, dass ein Modell möglicherweise auf mehr als eine Instance geladen wird.