View a markdown version of this page

Durée d'exécution du DLR - AWS IoT Greengrass

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Durée d'exécution du DLR

Le composant d'exécution DLR (variant.DLR) contient un script qui installe Deep Learning Runtime (DLR) et ses dépendances dans un environnement virtuel sur votre appareil. Les Détection d'objets DLR composants Classification des images DLR et utilisent ce composant comme dépendance pour l'installation du DLR. La version 1.6.x du composant installe le DLR v1.6.0 et la version 1.3.x du composant installe le DLR v1.3.0.

Pour utiliser un autre environnement d'exécution, vous pouvez utiliser la recette de ce composant comme modèle pour créer un composant d'apprentissage automatique personnalisé.

Versions

Les versions de ce composant sont les suivantes :

  • 1.6.x

  • 1.3.x

Type

Ce composant est un composant générique (aws.greengrass.generic). Le noyau Greengrass exécute les scripts de cycle de vie du composant.

Pour de plus amples informations, veuillez consulter Types de composant.

Système d’exploitation

Ce composant peut être installé sur les appareils principaux qui exécutent les systèmes d'exploitation suivants :

  • Linux

  • Windows

Exigences

Ce composant répond aux exigences suivantes :

  • Sur les appareils principaux de Greengrass exécutant Amazon Linux 2 ou Ubuntu 18.04, la version 2.27 ou ultérieure de la bibliothèque GNU C (glibc) est installée sur l'appareil.

  • Sur les appareils ARMv7L, tels que le Raspberry Pi, les dépendances sont OpenCV-Python installées sur l'appareil. Exécutez la commande suivante pour installer les dépendances.

    sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  • Les appareils Raspberry Pi qui exécutent Raspberry Pi OS Bullseye doivent répondre aux exigences suivantes :

    • NumPy 1.22.4 ou version ultérieure installée sur l'appareil. Le Raspberry Pi OS Bullseye inclut une version antérieure de NumPy, vous pouvez donc exécuter la commande suivante pour effectuer la mise à niveau NumPy sur l'appareil.

      pip3 install --upgrade numpy
    • L'ancienne pile de caméras activée sur l'appareil. Le Raspberry Pi OS Bullseye inclut une nouvelle pile de caméras qui est activée par défaut et qui n'est pas compatible. Vous devez donc activer l'ancienne pile de caméras.

      Pour activer l'ancienne pile de caméras
      1. Exécutez la commande suivante pour ouvrir l'outil de configuration du Raspberry Pi.

        sudo raspi-config
      2. Sélectionnez Options d'interface.

      3. Sélectionnez Caméra héritée pour activer la pile de caméras héritée.

      4. Redémarrez l'appareil Raspberry Pi.

Points de terminaison et ports

Par défaut, ce composant utilise un script d'installation pour installer les packages à l'aide des pip commandes apt yumbrew,, et, en fonction de la plate-forme utilisée par le périphérique principal. Ce composant doit être capable d'effectuer des requêtes sortantes vers différents index de packages et référentiels pour exécuter le script d'installation. Pour autoriser le trafic sortant de ce composant via un proxy ou un pare-feu, vous devez identifier les points de terminaison des index de packages et des référentiels auxquels votre périphérique principal se connecte pour l'installation.

Lorsque vous identifiez les points de terminaison requis pour le script d'installation de ce composant, tenez compte des points suivants :

  • Les terminaux dépendent de la plate-forme de l'appareil principal. Par exemple, un périphérique principal qui exécute Ubuntu utilise apt plutôt que yum oubrew. En outre, les appareils qui utilisent le même index de packages peuvent avoir des listes de sources différentes, de sorte qu'ils peuvent récupérer des packages depuis différents référentiels.

  • Les points de terminaison peuvent différer entre plusieurs appareils utilisant le même index de package, car chaque appareil possède ses propres listes de sources qui définissent où récupérer les packages.

  • Les points de terminaison peuvent changer au fil du temps. Chaque index de packages fournit les URL des référentiels dans lesquels vous téléchargez des packages, et le propriétaire d'un package peut modifier les URL fournies par l'index de packages.

Pour plus d'informations sur les dépendances installées par ce composant et sur la manière de désactiver le script d'installation, consultez le paramètre UseInstaller de configuration.

Pour plus d'informations sur les terminaux et les ports requis pour le fonctionnement de base, consultezAutoriser le trafic des appareils via un proxy ou un pare-feu.

Dépendances

Lorsque vous déployez un composant, déploie AWS IoT Greengrass également des versions compatibles de ses dépendances. Cela signifie que vous devez répondre aux exigences relatives au composant et à toutes ses dépendances pour pouvoir le déployer avec succès. Cette section répertorie les dépendances pour les versions publiées de ce composant et les contraintes de version sémantiques qui définissent les versions des composants pour chaque dépendance. Vous pouvez également consulter les dépendances pour chaque version du composant dans la AWS IoT Greengrass console. Sur la page des détails des composants, recherchez la liste des dépendances.

1.6.11 - 1.6.16

Le tableau suivant répertorie les dépendances pour les versions 1.6.11 à 1.6.16 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 3,0,0 Flexible
1.6.10

Le tableau suivant répertorie les dépendances pour la version 1.6.10 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,9,0 Flexible
1.6.9

Le tableau suivant répertorie les dépendances de la version 1.6.9 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,8,0 Flexible
1.6.8

Le tableau suivant répertorie les dépendances pour la version 1.6.8 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,7,0 Flexible
1.6.6 and 1.6.7

Le tableau suivant répertorie les dépendances pour les versions 1.6.6 et 1.6.7 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,6,0 Flexible
1.6.4 and 1.6.5

Le tableau suivant répertorie les dépendances pour les versions 1.6.4 et 1.6.5 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,5,0 Flexible
1.6.3

Le tableau suivant répertorie les dépendances pour la version 1.6.3 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,4,0 Flexible
1.6.2

Le tableau suivant répertorie les dépendances pour la version 1.6.2 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,3,0 Flexible
1.6.1

Le tableau suivant répertorie les dépendances de la version 1.6.1 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass > = 2,0,0 < 2,2,0 Flexible
1.3.x

Le tableau suivant répertorie les dépendances pour la version 1.3.x de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau Greengrass ~2,0,0 Flexible

Pour plus d'informations sur les dépendances des composants, consultez la référence des recettes des composants.

Configuration

Ce composant fournit les paramètres de configuration suivants que vous pouvez personnaliser lorsque vous déployez le composant.

MLRootPath

(Facultatif) Le chemin du dossier sur les périphériques principaux Linux dans lequel les composants d'inférence lisent les images et écrivent les résultats d'inférence. Vous pouvez modifier cette valeur en fonction de n'importe quel emplacement de votre appareil auquel l'utilisateur exécutant ce composant a read/write accès.

Valeur par défaut : /greengrass/v2/work/variant.DLR/greengrass_ml

WindowsMLRootPath

Cette fonctionnalité est disponible dans les versions 1.6.6 et ultérieures de ce composant.

(Facultatif) Le chemin du dossier sur le périphérique principal de Windows dans lequel les composants d'inférence lisent les images et écrivent les résultats d'inférence. Vous pouvez modifier cette valeur en fonction de n'importe quel emplacement de votre appareil auquel l'utilisateur exécutant ce composant a read/write accès.

Valeur par défaut : C:\greengrass\v2\\work\\variant.DLR\\greengrass_ml

UseInstaller

(Facultatif) Valeur de chaîne qui définit s'il faut utiliser le script d'installation de ce composant pour installer le DLR et ses dépendances. Les valeurs prises en charge sont true et false.

Définissez cette valeur sur false si vous souhaitez utiliser un script personnalisé pour l'installation du DLR ou si vous souhaitez inclure des dépendances d'exécution dans une image Linux prédéfinie. Pour utiliser ce composant avec les composants d'inférence DLR AWS fournis, installez les bibliothèques suivantes, y compris toutes les dépendances, et mettez-les à la disposition de l'utilisateur du système, par exempleggc_user, qui exécute les composants ML.

Valeur par défaut : true

Usage

Utilisez ce composant avec le paramètre UseInstaller de configuration défini sur true pour installer le DLR et ses dépendances sur votre appareil. Le composant configure un environnement virtuel sur votre appareil qui inclut l'OpenCV et les NumPy bibliothèques requises pour le DLR.

Note

Le script d'installation de ce composant installe également les dernières versions des bibliothèques système supplémentaires nécessaires à la configuration de l'environnement virtuel de votre appareil et à l'utilisation de la structure d'apprentissage automatique installée. Cela pourrait mettre à niveau les bibliothèques système existantes sur votre appareil. Consultez le tableau suivant pour obtenir la liste des bibliothèques que ce composant installe pour chaque système d'exploitation pris en charge. Si vous souhaitez personnaliser ce processus d'installation, définissez le paramètre UseInstaller de configuration sur false et développez votre propre script d'installation.

Plateforme Bibliothèques installées sur le système de l'appareil Bibliothèques installées dans l'environnement virtuel
Armv7l build-essential, cmake, ca-certificates, git setuptools, wheel
Amazon Linux 2 mesa-libGL Aucune
Ubuntu wget Aucune

Lorsque vous déployez votre composant d'inférence, ce composant d'exécution vérifie d'abord si le DLR et ses dépendances sont déjà installés sur votre appareil. Sinon, il les installe pour vous.

Fichier journal local

Ce composant utilise le fichier journal suivant.

Linux
/greengrass/v2/logs/variant.DLR.log
Windows
C:\greengrass\v2\logs\variant.DLR.log
Pour afficher les journaux de ce composant
  • Exécutez la commande suivante sur le périphérique principal pour afficher le fichier journal de ce composant en temps réel. Remplacez /greengrass/v2 ou C:\greengrass\v2 par le chemin du dossier AWS IoT Greengrass racine.

    Linux
    sudo tail -f /greengrass/v2/logs/variant.DLR.log
    Windows (PowerShell)
    Get-Content C:\greengrass\v2\logs\variant.DLR.log -Tail 10 -Wait

Journal des modifications

Le tableau suivant décrit les modifications apportées à chaque version du composant.

Version

Modifications

1.6,16

Version mise à jour pour Greengrass Nucleus version 2.12.5.

1.6,12

Corrections de bugs et améliorations
  • Corrige le script d'installation pour les utilisateurs du système d'exploitation Windows.

1.6.11

Version mise à jour pour la version 2.9.0 de Greengrass Nucleus.

1,6,10

Version mise à jour pour la version 2.8.0 de Greengrass Nucleus.

1,6,9

Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.

1,6.8

Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.

1.6.7

Corrections de bugs et améliorations
  • Met à jour le script UseInstaller d'installation pour installer LibGL, qui n'est pas disponible par défaut sur certaines plateformes Linux.

  • Met à jour le script d'UseInstallerinstallation pour toujours utiliser Python 3.9 dans l'environnement virtuel de ce composant. Cette modification permet de garantir la compatibilité avec les autres bibliothèques.

1.6.6

Nouvelles fonctionnalités
  • Ajoute la prise en charge des appareils principaux qui exécutent Windows.

  • Ajoute le nouveau paramètre WindowsMLRootPath de configuration que vous pouvez utiliser pour configurer le dossier des résultats d'inférence sur les appareils Windows Core.

1.6.5

Nouvelles fonctionnalités
  • Ajoute le nouveau paramètre de UseInstaller configuration que vous pouvez utiliser pour désactiver le script d'installation dans ce composant.

1.6.4

Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.

1.6.3

Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.

1.6.2

Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.

1.6.1

Nouvelles fonctionnalités
  • Installez Deep Learning Runtime v1.6.0 et ses dépendances.

  • Ajout de la prise en charge de l'installation de DLR sur les plateformes Armv8 (AArch64). Cela étend la prise en charge de l'apprentissage automatique aux principaux appareils Greengrass exécutant NVIDIA Jetson, tels que le Jetson Nano.

Corrections de bugs et améliorations
  • Installez-le Kit SDK des appareils AWS IoT dans l'environnement virtuel pour lire la configuration des composants et appliquer les modifications de configuration.

  • Corrections de bugs mineurs et améliorations supplémentaires.

1.3.2

Première version. Installe DLR v1.3.0.