Hinweis zum Ende des Supports: Am 7. Oktober 2026 AWS wird der Support für eingestellt. AWS IoT Greengrass Version 1 Nach dem 7. Oktober 2026 werden Sie nicht mehr auf die Ressourcen zugreifen können. AWS IoT Greengrass V1 Weitere Informationen finden Sie unter Migrieren von AWS IoT Greengrass Version 1.
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.
Durchführen von Machine Learning-Inferenzen
Diese Funktion ist für AWS IoT Greengrass Core v1.6 oder höher verfügbar.
Mit AWS IoT Greengrass können Sie mithilfe von in der Cloud trainierten Modellen am Edge Inferenzen für maschinelles Lernen (ML) an lokal generierten Daten durchführen. Sie können von der niedrigen Latenz und Kosteneinsparungen der Ausführung von lokaler Inferenz profitieren und trotzdem die Cloud-Rechenleistung für Schulungsmodelle und komplexe Verarbeitung nutzen.
Hinweise zur Durchführung von lokaler Inferenz finden Sie unter So konfigurieren Sie die Inferenz für maschinelles Lernen mit dem AWS-Managementkonsole.
Wie AWS IoT Greengrass ML-Inferenz funktioniert
Sie können Ihre Inferenzmodelle überall trainieren, sie lokal als Ressourcen für maschinelles Lernen in einer Greengrass-Gruppe bereitstellen und dann über Greengrass Lambda-Funktionen darauf zugreifen. Sie können beispielsweise Deep-Learning-Modelle in SageMaker KI erstellen und trainieren und sie in Ihrem
Das folgende Diagramm zeigt den AWS IoT Greengrass ML-Inferenz-Workflow.
AWS IoT Greengrass ML-Inferenz vereinfacht jeden Schritt des ML-Workflows, einschließlich:
-
Die Entwicklung und Bereitstellung von ML-Framework-Prototypen.
-
Der Zugriff auf Cloud-geschulte Modelle und die deren Bereitstellung in Greengrass Core-Geräten.
-
Erstellen von Inferenz-Apps, die auf Hardware-Beschleuniger (z. B. GPUs und FPGAs) als lokale Ressourcen zugreifen können.
Machine Learning-Ressourcen
Ressourcen für maschinelles Lernen stellen in der Cloud trainierte Inferenzmodelle dar, die in einem Core bereitgestellt werden. AWS IoT Greengrass Um Ressourcen für maschinelles Lernen bereitzustellen, fügen Sie die Ressourcen zunächst einer Greengrass-Gruppe hinzu und definieren dann, wie Lambda-Funktionen in der Gruppe auf sie zugreifen können. AWS IoT Greengrass Ruft während der Gruppenbereitstellung die Quellmodellpakete aus der Cloud ab und extrahiert sie in Verzeichnisse innerhalb des Lambda-Laufzeit-Namespaces. Anschließend verwenden Greengrass Lambda-Funktionen die lokal bereitgestellten Modelle, um Inferenzen durchzuführen.
Um ein lokal bereitgestelltes Modell zu aktualisieren, aktualisieren Sie zuerst das Quellmodell (in der Cloud), das mit der Machine Learning-Ressource übereinstimmt, und stellen Sie dann die Gruppe bereit. Während der Bereitstellung überprüft AWS IoT Greengrass die Quelle auf Änderungen. Wenn Änderungen erkannt werden, wird das lokale AWS IoT Greengrass Modell aktualisiert.
Unterstützte Modellquellen
AWS IoT Greengrass unterstützt SageMaker KI- und Amazon S3-Modellquellen für Ressourcen für maschinelles Lernen.
Die folgenden Anforderungen gelten für Modellquellen:
-
S3-Buckets, in denen Ihre SageMaker KI- und Amazon S3-Modellquellen gespeichert sind, dürfen nicht mit SSE-C verschlüsselt werden. Für Buckets, die serverseitige Verschlüsselung verwenden, unterstützt AWS IoT Greengrass ML-Inferenz derzeit nur die Verschlüsselungsoptionen SSE-S3 oder SSE-KMS . Weitere Informationen zu serverseitigen Verschlüsselungsoptionen finden Sie unter Schützen von Daten mithilfe serverseitiger Verschlüsselung im Amazon Simple Storage Service-Benutzerhandbuch.
-
Die Namen der S3-Buckets, die Ihre SageMaker KI- und Amazon S3-Modellquellen speichern, dürfen keine Punkte () enthalten.
.Weitere Informationen finden Sie in der Regel zur Verwendung von Buckets im virtuellen Hosting-Stil mit SSL unter Regeln für die Bucket-Benennung im Amazon Simple Storage Service-Benutzerhandbuch. -
Service-level AWS-Region Unterstützung muss sowohl für KI als auch AWS IoT Greengrass für KI verfügbar sein. SageMaker AWS IoT Greengrass Unterstützt derzeit SageMaker KI-Modelle in den folgenden Regionen:
-
US East (Ohio)
-
USA Ost (Nord-Virginia)
-
USA West (Oregon)
-
Asia Pacific (Mumbai)
-
Asia Pacific (Seoul)
-
Asien-Pazifik (Singapur)
-
Asien-Pazifik (Sydney)
-
Asien-Pazifik (Tokio)
-
Europe (Frankfurt)
-
Europa (Irland)
-
Europa (London)
-
-
AWS IoT Greengrass muss über die
readBerechtigung zur Modellquelle verfügen, wie in den folgenden Abschnitten beschrieben.
- SageMaker AI
-
AWS IoT Greengrass unterstützt Modelle, die als SageMaker KI-Trainingsjobs gespeichert sind. SageMaker AI ist ein vollständig verwalteter ML-Dienst, mit dem Sie Modelle mithilfe integrierter oder benutzerdefinierter Algorithmen erstellen und trainieren können. Weitere Informationen finden Sie unter Was ist SageMaker KI? im SageMaker AI-Entwicklerhandbuch.
Wenn Sie Ihre SageMaker KI-Umgebung konfiguriert haben, indem Sie einen Bucket erstellt haben, dessen Name Folgendes enthält
sagemaker, dann AWS IoT Greengrass verfügt er über ausreichende Berechtigungen, um auf Ihre SageMaker AI-Trainingsjobs zuzugreifen. Die verwaltete RichtlinieAWSGreengrassResourceAccessRolePolicyerlaubt den Zugriff auf Buckets, deren Name die Zeichenfolgesagemakerenthält. Diese Richtlinie ist der Greengrass-Servicerolle angefügt.Andernfalls müssen Sie die AWS IoT Greengrass
readErlaubnis für den Bucket erteilen, in dem Ihr Trainingsjob gespeichert ist. Betten Sie zu diesem Zweck die folgende eingebundene Richtlinie in die Greengrass-Servicerolle ein. Sie können mehrere Bucket-ARNs in einer Liste anzeigen. - Amazon S3
-
AWS IoT Greengrass unterstützt Modelle, die in Amazon S3 als
tar.gz.zipODER-Dateien gespeichert sind.Um den Zugriff auf Modelle AWS IoT Greengrass zu ermöglichen, die in Amazon S3-Buckets gespeichert sind, müssen Sie die AWS IoT Greengrass
readZugriffsberechtigung für die Buckets gewähren, indem Sie einen der folgenden Schritte ausführen:-
Speichern Sie Ihr Modell in einem Bucket, dessen Name
greengrassenthält.Die verwaltete Richtlinie
AWSGreengrassResourceAccessRolePolicyerlaubt den Zugriff auf Buckets, deren Name die Zeichenfolgegreengrassenthält. Diese Richtlinie ist der Greengrass-Servicerolle angefügt. -
Betten Sie eine eingebundene Richtlinie in die Greengrass-Service-Rolle ein.
Wenn Ihr Bucket-Name nicht
greengrassenthält, fügen Sie die folgende eingebundene Richtlinien der Service-Rolle hinzu. Sie können mehrere Bucket-ARNs in einer Liste anzeigen.Weitere Informationen finden Sie unter Einbetten von Inline-Richtlinien im IAM-Benutzerhandbuch.
-
Voraussetzungen
Die folgenden Anforderungen gelten für die Erstellung und Verwendung von Machine Learning-Ressourcen:
-
Sie müssen AWS IoT Greengrass Core v1.6 oder höher verwenden.
-
User-defined Lambda-Funktionen können unsere
read and writeOperationenreadan der Ressource ausführen. Berechtigungen für andere Operationen sind nicht verfügbar. Der Containerisierungsmodus der verbundenen Lambda-Funktionen bestimmt, wie Sie Zugriffsberechtigungen festlegen. Weitere Informationen finden Sie unter Greifen Sie über Lambda-Funktionen auf Ressourcen für maschinelles Lernen zu. -
Sie müssen den vollständigen Pfad der Ressource im Betriebssystem des Core-Geräts bereitstellen.
-
Der Name oder die ID einer Ressource kann maximal 128 Zeichen umfassen und muss dem Muster
[a-zA-Z0-9:_-]+entsprechen.
Laufzeiten und Bibliotheken für ML-Inferenz
Sie können die folgenden ML-Laufzeiten und -Bibliotheken mit verwenden. AWS IoT Greengrass
-
Apache MXNet
-
TensorFlow
Diese Laufzeiten und Bibliotheken können auf den Plattformen NVIDIA Jetson TX2, Intel Atom und Raspberry Pi installiert werden. Informationen zum Download finden Sie unter Unterstützte Machine Learning-Laufzeiten und -Bibliotheken. Sie können sie direkt auf Ihrem Core-Gerät installieren.
Lesen Sie die folgenden Informationen zu Kompatibilität und Einschränkungen.
SageMaker AI Neo Deep-Learning-Laufzeit
Sie können die Deep-Learning-Laufzeit von SageMaker AI Neo verwenden, um Inferenzen mit optimierten Modellen für maschinelles Lernen auf Ihren AWS IoT Greengrass Geräten durchzuführen. Diese Modelle werden mithilfe des Deep-Learning-Compilers von SageMaker AI Neo optimiert, um die Geschwindigkeit der Vorhersage von Inferenzen für maschinelles Lernen zu verbessern. Weitere Informationen zur Modelloptimierung in SageMaker KI finden Sie in der SageMaker AI Neo-Dokumentation.
Anmerkung
Derzeit können Sie Modelle für maschinelles Lernen mithilfe des Neo-Deep-Learning-Compilers nur in bestimmten Amazon Web Services-Regionen optimieren. Sie können die Neo-Deep-Learning-Laufzeit jedoch mit optimierten Modellen in allen Bereichen verwenden, in AWS-Region denen der AWS IoT Greengrass Kern unterstützt wird. Weitere Informationen finden Sie unter So konfigurieren Sie Optimized Machine Learning-Inferenz.
MXNet-Versioning
Apache MXNet stellt derzeit keine Aufwärtskompatibilität sicher, sodass Modelle, die Sie mit späteren Versionen des Frameworks schulen, möglicherweise in früheren Versionen des Frameworks nicht ordnungsgemäß funktionieren. Verwenden Sie zur Vermeidung von Konflikten zwischen den Modellschulungs- und Modellbereitstellungsstufen und für die Bereitstellung einer konsistenten End-to-End-Erfahrung in beiden Stufen dieselbe MXNet Framework Version.
MXNet auf Raspberry Pi
Greengrass Lambda-Funktionen, die auf lokale MXNet-Modelle zugreifen, müssen die folgende Umgebungsvariable setzen:
MXNET_ENGINE_TYPE=NativeEngine
Sie können die Umgebungsvariable im Funktionscode festlegen oder zur gruppenspezifischen Konfiguration der Funktion hinzufügen. Ein Bespiel, bei dem dieses im Rahmen der Konfigurationseinstellung hinzugefügt wird, finden Sie in diesem Schritt.
Anmerkung
Bei einer allgemeinen Verwendung des MXNet-Frameworks, beispielsweise bei der Ausführung eines Code-Beispiels eines Drittanbieters, muss die Umgebungsvariable auf dem Raspberry Pi konfiguriert werden.
TensorFlow Einschränkungen bei der Modellbereitstellung auf Raspberry Pi
Die folgenden Empfehlungen zur Verbesserung der Inferenzergebnisse basieren auf unseren Tests mit den TensorFlow 32-Bit-ARM-Bibliotheken auf der Raspberry Pi-Plattform. Diese Empfehlungen sind für erfahrene Benutzer nur zur Referenz ohne Gewährleistung jedweder Art bestimmt.
-
Modelle, die mit dem Checkpoint
-Format geschult werden, sollten vor der Bereitstellung im Protokollpufferformat "eingefroren" werden. Ein Beispiel finden Sie in der Modellbibliothek für die TensorFlow-Slim Bildklassifizierung. -
Verwenden Sie die TF-Slim Bibliotheken TF-Estimator und weder im Trainings- noch im Inferenzcode. Stattdessen verwenden Sie das Modellbereitstellungsmuster der
.pb-Datei wie im folgenden Beispiel gezeigt.graph = tf.Graph() graph_def = tf.GraphDef() graph_def.ParseFromString(pb_file.read()) with graph.as_default(): tf.import_graph_def(graph_def)
Anmerkung
Weitere Informationen zu den unterstützten Plattformen für TensorFlow finden Sie TensorFlow in der TensorFlow Dokumentation unter