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.
Agent ausführen
In diesem Abschnitt führen Sie den Agenten mit g als Binärdatei aus und überprüfenRPC, ob sowohl Ihr Gerät als auch Ihre Flotte funktionieren, und sammeln Beispieldaten.
-
Starten Sie den Agenten.
Der SageMaker Edge Manager-Agent kann als eigenständiger Prozess in Form einer ausführbaren Binärdatei im Executable and Linkable Format (ELF) ausgeführt oder als Dynamic Shared Object (.dll) verknüpft werden. Die Ausführung als eigenständige ausführbare Binärdatei ist der bevorzugte Modus und wird unter Linux unterstützt.
In diesem Beispiel wird g verwendetRPC, um den Agenten auszuführen. g RPC ist ein leistungsstarkes Open-Source-Framework für Remote Procedure Call (RPC), das in jeder Umgebung ausgeführt werden kann. Weitere Informationen zu g RPC finden Sie in der RPCg-Dokumentation
. Gehen Sie wie folgt vorRPC, um g zu verwenden:
-
Definieren Sie einen Dienst in einer .proto-Datei.
-
Generieren Sie mithilfe des Protokollpuffer-Compilers Server- und Client-Code.
-
Verwenden Sie Python (oder andere von g unterstützte SprachenRPC) RPCAPI, um den Server für Ihren Service zu schreiben.
-
Verwenden Sie Python (oder andere von g unterstützte SprachenRPC) RPCAPI, um einen Client für Ihren Service zu schreiben.
Das Release-Artefakt, das Sie heruntergeladen haben, enthält eine RPC G-Anwendung, mit der Sie den Agenten ausführen können. Das Beispiel befindet sich im
/bin
Verzeichnis Ihres Release-Artefakts. Die ausführbaresagemaker_edge_agent_binary
Binärdatei befindet sich in diesem Verzeichnis.Um den Agenten mit diesem Beispiel auszuführen, geben Sie den Pfad zu Ihrer Socket-Datei (.sock) und JSON zur .config-Datei an:
./bin/sagemaker_edge_agent_binary -a /tmp/sagemaker_edge_agent_example.sock -c sagemaker_edge_config.json
-
-
Überprüfen Sie Ihr Gerät.
Vergewissern Sie sich, dass Ihr Gerät angeschlossen ist Beispieldaten liest. Durch regelmäßige manuelle oder automatische Überprüfungen können Sie überprüfen, ob Ihr Gerät oder Ihre Flotte ordnungsgemäß funktioniert.
Geben Sie den Namen der Flotte an, zu der das Gerät gehört, und die eindeutige Gerätekennung. Führen Sie von Ihrem lokalen Rechner aus folgendes aus:
sagemaker_client.describe_device( DeviceName=device_name, DeviceFleetName=device_fleet_name )
Für das angegebene Modell können Sie den Namen, die Modellversion, den Zeitpunkt der letzten Probennahme und den Zeitpunkt der letzten Inference sehen.
{ "DeviceName": "sample-device", "DeviceFleetName": "demo-device-fleet", "IoTThingName": "sample-thing-name-1", "RegistrationTime": 1600977370, "LatestHeartbeat": 1600977370, "Models":[ { "ModelName": "mobilenet_v2.tar.gz", "ModelVersion": "1.1", "LatestSampleTime": 1600977370, "LatestInference": 1600977370 } ] }
Der
LastetHeartbeat
von bereitgestellte Zeitstempel gibt das letzte Signal an, das vom Gerät empfangen wurde.LatestSampleTime
undLatestInference
beschreiben den Zeitstempel der letzten Datenstichprobe bzw. Inference. -
Überprüfen Sie Ihre Flotte.
Prüfen Sie, ob Ihre Flotte mit
GetDeviceFleetReport
arbeitet. Geben Sie den Namen der Flotte an, zu der das Gerät gehört.sagemaker_client.get_device_fleet_report( DeviceFleetName=device_fleet_name )
Für ein bestimmtes Modell können Sie den Namen, die Modellversion, den Zeitpunkt der letzten Probennahme und den Zeitpunkt der letzten Schlussfolgerung sowie den Amazon S3 S3-Bucket sehen, URI in dem die Datenproben gespeichert sind.
# Sample output { "DeviceFleetName": "sample-device-fleet", "DeviceFleetArn": "arn:aws:sagemaker:us-west-2:9999999999:device-fleet/sample-fleet-name", "OutputConfig": { "S3OutputLocation": "s3://fleet-bucket/package_output", }, "AgentVersions":[{"Version": "1.1", "AgentCount": 2}]} "DeviceStats": {"Connected": 2, "Registered": 2}, "Models":[{ "ModelName": "sample-model", "ModelVersion": "1.1", "OfflineDeviceCount": 0, "ConnectedDeviceCount": 2, "ActiveDeviceCount": 2, "SamplingDeviceCount": 100 }] }