Die Komponente der Client-Anwendung wird erstellt - Amazon Lookout für Vision

Hinweis zum Ende des Supports: Am 31. Oktober 2025 AWS wird der Support für Amazon Lookout for Vision eingestellt. Nach dem 31. Oktober 2025 können Sie nicht mehr auf die Lookout for Vision Vision-Konsole oder die Lookout for Vision Vision-Ressourcen zugreifen. Weitere Informationen finden Sie in diesem Blogbeitrag.

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.

Die Komponente der Client-Anwendung wird erstellt

Sie können die Client-Anwendungskomponente erstellen, sobald Sie Ihre gRPC-Stubs generiert haben und Ihren Client-Anwendungscode bereit haben. Die Komponente, die Sie erstellen, ist eine benutzerdefinierte Komponente, mit der Sie sie auf einem AWS IoT Greengrass Version 2 Kerngerät bereitstellen. AWS IoT Greengrass V2 Ein von Ihnen erstelltes Rezept beschreibt Ihre benutzerdefinierte Komponente. Das Rezept beinhaltet alle Abhängigkeiten, die ebenfalls bereitgestellt werden müssen. In diesem Fall geben Sie die Modellkomponente an, in der Sie erstellenVerpacken Ihres Amazon Lookout for Vision Vision-Modells. Weitere Informationen zu Komponentenrezepten finden Sie in der Referenz zu AWS IoT Greengrass Version 2 Komponentenrezepten.

Die Verfahren zu diesem Thema zeigen, wie Sie die Client-Anwendungskomponente aus einer Rezeptdatei erstellen und als AWS IoT Greengrass V2 benutzerdefinierte Komponente veröffentlichen. Sie können die AWS IoT Greengrass V2 Konsole oder das AWS SDK verwenden, um die Komponente zu veröffentlichen.

Ausführliche Informationen zum Erstellen einer benutzerdefinierten Komponente finden Sie im Folgenden in der AWS IoT Greengrass V2Dokumentation.

IAM-Berechtigungen für die Veröffentlichung einer Client-Anwendungskomponente

Um Ihre Client-Anwendungskomponente zu erstellen und zu veröffentlichen, benötigen Sie die folgenden IAM-Berechtigungen:

  • greengrass:CreateComponentVersion

  • greengrass:DescribeComponent

  • s3:PutObject

Das Rezept erstellen

In diesem Verfahren erstellen Sie das Rezept für eine einfache Client-Anwendungskomponente. Der darin enthaltene Code lookoutvision_edge_agent_example.py listet die Modelle auf, die auf dem Gerät bereitgestellt werden, und wird automatisch ausgeführt, nachdem Sie die Komponente auf dem Kerngerät bereitgestellt haben. Um die Ausgabe anzuzeigen, überprüfen Sie das Komponentenprotokoll, nachdem Sie die Komponente bereitgestellt haben. Weitere Informationen finden Sie unter Bereitstellen Ihrer Komponenten auf einem Gerät. Wenn Sie bereit sind, verwenden Sie dieses Verfahren, um das Rezept für den Code zu erstellen, der Ihre Geschäftslogik implementiert.

Sie erstellen das Rezept als Datei im JSON- oder YAML-Format. Sie laden auch den Client-Anwendungscode in einen Amazon S3 S3-Bucket hoch.

Um das Rezept für die Komponente der Client-Anwendung zu erstellen
  1. Falls Sie dies noch nicht getan haben, erstellen Sie die gRPC-Stub-Dateien. Weitere Informationen finden Sie unter gRPC einrichten.

  2. Speichern Sie den folgenden Code in einer Datei mit dem Namen lookoutvision_edge_agent_example.py

    import grpc from edge_agent_pb2_grpc import EdgeAgentStub import edge_agent_pb2 as pb2 # Creating stub. with grpc.insecure_channel("unix:///tmp/aws.iot.lookoutvision.EdgeAgent.sock") as channel: stub = EdgeAgentStub(channel) # Add additional code that works with Edge Agent in this block to prevent resources leakage models_list_response = stub.ListModels( pb2.ListModelsRequest() ) for model in models_list_response.models: print(f"Model Details {model}")
  3. Erstellen Sie einen Amazon S3 S3-Bucket (oder verwenden Sie einen vorhandenen Bucket), um die Quelldateien für Ihre Client-Anwendungskomponente zu speichern. Der Bucket muss sich in Ihrem AWS Konto und in derselben AWS Region befinden, in der Sie Amazon Lookout for Vision verwendenAWS IoT Greengrass Version 2.

  4. Laden Sie lookoutvision_edge_agent_example.py edge_agent_pb2_grpc.py and edge_agent_pb2.py es in den Amazon S3 S3-Bucket hoch, den Sie im vorherigen Schritt erstellt haben. Notieren Sie sich den Amazon S3 S3-Pfad jeder Datei. Sie haben erstellt edge_agent_pb2_grpc.py und sind edge_agent_pb2.py dabeigRPC einrichten.

  5. Erstellen Sie in einem Editor die folgende JSON- oder YAML-Rezeptdatei.

    • model_componentzum Namen Ihrer Modellkomponente. Weitere Informationen finden Sie unter Einstellungen der Komponenten.

    • Ändern Sie die URI-Einträge in die S3-Pfade von lookoutvision_edge_agent_example.pyedge_agent_pb2_grpc.py, undedge_agent_pb2.py.

    JSON
    { "RecipeFormatVersion": "2020-01-25", "ComponentName": "com.lookoutvision.EdgeAgentPythonExample", "ComponentVersion": "1.0.0", "ComponentType": "aws.greengrass.generic", "ComponentDescription": "Lookout for Vision Edge Agent Sample Application", "ComponentPublisher": "Sample App Publisher", "ComponentDependencies": { "model_component": { "VersionRequirement": ">=1.0.0", "DependencyType": "HARD" } }, "Manifests": [ { "Platform": { "os": "linux" }, "Lifecycle": { "install": "pip3 install grpcio grpcio-tools protobuf Pillow", "run": { "script": "python3 {artifacts:path}/lookoutvision_edge_agent_example.py" } }, "Artifacts": [ { "Uri": "S3 path to lookoutvision_edge_agent_example.py" }, { "Uri": "S3 path to edge_agent_pb2_grpc.py" }, { "Uri": "S3 path to edge_agent_pb2.py" } ] } ], "Lifecycle": {} }
    YAML
    --- RecipeFormatVersion: 2020-01-25 ComponentName: com.lookoutvison.EdgeAgentPythonExample ComponentVersion: 1.0.0 ComponentDescription: Lookout for Vision Edge Agent Sample Application ComponentPublisher: Sample App Publisher ComponentDependencies: model_component: VersionRequirement: '>=1.0.0' DependencyType: HARD Manifests: - Platform: os: linux Lifecycle: install: |- pip3 install grpcio pip3 install grpcio-tools pip3 install protobuf pip3 install Pillow run: script: |- python3 {artifacts:path}/lookout_vision_agent_example.py Artifacts: - URI: S3 path to lookoutvision_edge_agent_example.py - URI: S3 path to edge_agent_pb2_grpc.py - URI: S3 path to edge_agent_pb2.py
  6. Speichern Sie die JSON- oder YAML-Datei auf Ihrem Computer.

  7. Erstellen Sie die Client-Anwendungskomponente, indem Sie einen der folgenden Schritte ausführen:

Veröffentlichen der Client-Anwendungskomponente (Konsole)

Sie können die AWS IoT Greengrass V2 Konsole verwenden, um die Client-Anwendungskomponente zu veröffentlichen.

Um die Client-Anwendungskomponente zu veröffentlichen
  1. Falls Sie es noch nicht getan haben, erstellen Sie das Rezept für Ihre Client-Anwendungskomponente, indem Sie Das Rezept erstellen

  2. Öffnen Sie die AWS IoT Greengrass Konsole unter https://console.aws.amazon.com/iot/

  3. Wählen Sie im linken Navigationsbereich unter Greengrass Components aus.

  4. Wählen Sie unter Meine Komponenten die Option Komponente erstellen aus.

  5. Wählen Sie auf der Seite Komponente erstellen die Option Rezept als JSON eingeben aus, wenn Sie ein Rezept im JSON-Format verwenden möchten. Wählen Sie „Rezept als YAML eingeben“, wenn Sie ein Rezept im YAML-Format verwenden möchten.

  6. Ersetzen Sie unter Rezept das vorhandene Rezept durch das JSON- oder YAML-Rezept, in dem Sie es erstellt haben. Das Rezept erstellen

  7. Wählen Sie Komponente erstellen aus.

  8. Stellen Sie als Nächstes Ihre Client-Anwendungskomponente bereit.

Veröffentlichen der Client-Anwendungskomponente (SDK)

Sie können die Client-Anwendungskomponente mithilfe der CreateComponentVersionAPI veröffentlichen.

Um die Client-Anwendungskomponente (SDK) zu veröffentlichen
  1. Falls Sie es noch nicht getan haben, erstellen Sie das Rezept für Ihre Client-Anwendungskomponente, indem Sie Das Rezept erstellen

  2. Geben Sie in der Befehlszeile den folgenden Befehl ein, um die Client-Anwendungskomponente zu erstellen. recipe-fileErsetzen Sie ihn durch den Namen der Rezeptdatei, in der Sie sie erstellt habenDas Rezept erstellen.

    aws greengrassv2 create-component-version --inline-recipe fileb://recipe-file

    Notieren Sie sich den ARN der Komponente in der Antwort. Sie benötigen diese im nächsten Schritt.

  3. Verwenden Sie den folgenden Befehl, um den Status der Client-Anwendungskomponente abzurufen. component-arnErsetzen Sie es durch den ARN, den Sie im vorherigen Schritt notiert haben. Die Client-Anwendungskomponente ist bereit, wenn der Wert von componentState istDEPLOYABLE.

    aws greengrassv2 describe-component --arn component-arn
  4. Stellen Sie als Nächstes Ihre Client-Anwendungskomponente bereit.