TensorFlow 라이트 런타임 - AWS IoT Greengrass

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

TensorFlow 라이트 런타임

TensorFlow Lite 런타임 구성 요소 (variant.TensorFlowLite) 에는 장치의 가상 환경에 TensorFlow Lite 버전 2.5.0과 해당 종속성을 설치하는 스크립트가 포함되어 있습니다. TensorFlow Lite 이미지 분류TensorFlow Lite 개체 감지 구성 요소는 이 런타임 구성 요소를 Lite 설치를 위한 종속 항목으로 사용합니다. TensorFlow

참고

TensorFlow Lite 런타임 구성 요소 v2.5.6 이상은 Lite 런타임의 기존 설치와 해당 종속성을 다시 설치합니다. TensorFlow 이렇게 다시 설치하면 코어 기기가 호환되는 버전의 Lite 및 해당 종속 항목을 실행하도록 하는 데 도움이 됩니다. TensorFlow

다른 런타임을 사용하려면 이 구성 요소의 레시피를 템플릿으로 사용하여 사용자 지정 기계 학습 구성 요소를 만들 수 있습니다.

버전

이 구성 요소의 버전은 다음과 같습니다.

  • 2.5.x

유형

구성 요소는 일반 구성 요소 () aws.greengrass.generic 입니다. Greengrass 핵은 구성 요소의 라이프사이클 스크립트를 실행합니다.

자세한 정보는 구성 요소 유형을 참조하세요.

운영 체제

이 구성 요소는 다음 운영 체제를 실행하는 코어 디바이스에 설치할 수 있습니다.

  • Linux

  • Windows

요구 사항

이 구성 요소의 요구 사항은 다음과 같습니다.

  • Amazon Linux 2 또는 우분투 18.04를 실행하는 Greengrass 코어 디바이스의 경우 GNU C 라이브러리 (glibc) 버전 2.27 이상이 디바이스에 설치되어 있습니다.

  • 라즈베리 파이와 같은 ARMv7L 디바이스에서는 OpenCV-Python에 대한 종속성이 디바이스에 설치되어 있습니다. 다음 명령을 실행하여 종속 항목을 설치합니다.

    sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  • 라즈베리파이 OS Bullseye를 실행하는 라즈베리파이 디바이스는 다음 요구사항을 충족해야 합니다.

    • NumPy 1.22.4 이상이 디바이스에 설치되었습니다. Raspberry Pi OS Bullseye에는 이전 버전이 포함되어 있으므로 다음 명령을 실행하여 디바이스에서 업그레이드할 수 있습니다. NumPy NumPy

      pip3 install --upgrade numpy
    • 기기에서 레거시 카메라 스택이 활성화되었습니다. Raspberry Pi OS Bullseye에는 기본적으로 활성화되고 호환되지 않는 새로운 카메라 스택이 포함되어 있으므로 레거시 카메라 스택을 활성화해야 합니다.

      레거시 카메라 스택을 활성화하려면
      1. 다음 명령을 실행하여 Raspberry Pi 구성 도구를 엽니다.

        sudo raspi-config
      2. 인터페이스 옵션을 선택합니다.

      3. 레거시 카메라를 선택하여 레거시 카메라 스택을 활성화합니다.

      4. Raspberry Pi를 재부팅합니다.

엔드포인트 및 포트

기본적으로 이 구성 요소는 코어 기기에서 사용하는 플랫폼에 따라 설치 프로그램 스크립트를 사용하여 apt yumbrew,, 및 pip 명령을 사용하여 패키지를 설치합니다. 이 구성 요소는 설치 스크립트를 실행하기 위해 다양한 패키지 인덱스 및 리포지토리에 대한 아웃바운드 요청을 수행할 수 있어야 합니다. 프록시 또는 방화벽을 통해 이 구성 요소의 아웃바운드 트래픽을 허용하려면 코어 장치가 설치에 연결되는 패키지 색인 및 리포지토리의 엔드포인트를 식별해야 합니다.

이 구성 요소의 설치 스크립트에 필요한 엔드포인트를 식별할 때는 다음 사항을 고려하십시오.

  • 엔드포인트는 코어 디바이스의 플랫폼에 따라 다릅니다. 예를 들어, Ubuntu를 실행하는 코어 기기는 또는 apt 대신 사용합니다. yum brew 또한 동일한 패키지 색인을 사용하는 기기는 소스 목록이 다를 수 있으므로 서로 다른 저장소에서 패키지를 가져올 수 있습니다.

  • 각 기기에는 패키지를 검색할 위치를 정의하는 자체 소스 목록이 있기 때문에 동일한 패키지 색인을 사용하는 여러 장치 간에 엔드포인트가 다를 수 있습니다.

  • 엔드포인트는 시간이 지남에 따라 변경될 수 있습니다. 각 패키지 색인은 패키지를 다운로드하는 저장소의 URL을 제공하며, 패키지 소유자는 패키지 색인이 제공하는 URL을 변경할 수 있습니다.

이 구성 요소가 설치하는 종속성 및 설치 프로그램 스크립트를 사용하지 않도록 설정하는 방법에 대한 자세한 내용은 구성 매개 변수를 참조하십시오. UseInstaller

기본 작동에 필요한 엔드포인트 및 포트에 대한 자세한 내용은 을 참조하십시오. 프록시 또는 방화벽을 통한 장치 트래픽 허용

의존성

구성 요소를 배포하면 호환되는 버전의 종속 AWS IoT Greengrass 항목도 배포됩니다. 즉, 구성 요소를 성공적으로 배포하려면 구성 요소 및 해당 종속성에 대한 요구 사항을 모두 충족해야 합니다. 이 섹션에는 이 구성 요소의 릴리스된 버전에 대한 종속성과 각 종속성에 대한 구성 요소 버전을 정의하는 시맨틱 버전 제약 조건이 나열되어 있습니다. 콘솔에서 구성 요소의 각 버전에 대한 종속성을 볼 수도 있습니다.AWS IoT Greengrass 구성 요소 세부 정보 페이지에서 종속성 목록을 찾아보십시오.

2.5.14 and 2.5.15

다음 표에는 이 구성 요소의 버전 2.5.14 및 2.5.15에 대한 종속성이 나와 있습니다.

종속성 호환되는 버전 종속성 유형
그린그래스 핵 >=2.0.0 <2.13.0 소프트
2.5.13

다음 표에는 이 구성 요소의 버전 2.5.13에 대한 종속성이 나와 있습니다.

종속성 호환되는 버전 종속성 유형
그린그래스 핵 >=2.0.0 <2.12.0 소프트
2.5.12

다음 표에는 이 구성 요소의 버전 2.5.12에 대한 종속성이 나와 있습니다.

종속성 호환되는 버전 종속성 유형
그린그래스 핵 >=2.0.0 <2.11.0 소프트
2.5.11

다음 표에는 이 구성 요소의 버전 2.5.11에 대한 종속성이 나와 있습니다.

종속성 호환되는 버전 종속성 유형
그린그래스 핵 >=2.0.0 <2.10.0 소프트
2.5.10

다음 표에는 이 구성 요소의 버전 2.5.10에 대한 종속성이 나와 있습니다.

종속성 호환되는 버전 종속성 유형
그린그래스 핵 >=2.0.0 <2.9.0 소프트
2.5.9

다음 표에는 이 구성 요소의 버전 2.5.9에 대한 종속성이 나와 있습니다.

종속성 호환되는 버전 종속성 유형
그린그래스 핵 >=2.0.0 <2.8.0 소프트
2.5.8

다음 표에는 이 구성 요소의 버전 2.5.8에 대한 종속성이 나와 있습니다.

종속성 호환되는 버전 종속성 유형
그린그래스 핵 >=2.0.0 <2.7.0 소프트
2.5.5 - 2.5.7

다음 표에는 이 구성 요소의 버전 2.5.5~2.5.7에 대한 종속성이 나와 있습니다.

종속성 호환되는 버전 종속성 유형
그린그래스 핵 >=2.0.0 <2.6.0 소프트
2.5.3 and 2.5.4

다음 표에는 이 구성 요소의 버전 2.5.3 및 2.5.4에 대한 종속성이 나와 있습니다.

종속성 호환되는 버전 종속성 유형
그린그래스 핵 >=2.0.0 <2.5.0 소프트
2.5.2

다음 표에는 이 구성 요소의 버전 2.5.2에 대한 종속성이 나와 있습니다.

종속성 호환되는 버전 종속성 유형
그린그래스 핵 >=2.0.0 <2.4.0 소프트
2.5.1

다음 표에는 이 구성 요소의 버전 2.5.1에 대한 종속성이 나와 있습니다.

종속성 호환되는 버전 종속성 유형
그린그래스 핵 >=2.0.0 <2.3.0 소프트
2.5.0

다음 표에는 이 구성 요소의 버전 2.5.0에 대한 종속성이 나와 있습니다.

종속성 호환되는 버전 종속성 유형
그린그래스 핵 >=2.0.0 <2.2.0 소프트

구성 요소 종속성에 대한 자세한 내용은 구성 요소 레시피 참조를 참조하십시오.

구성

이 구성 요소는 구성 요소를 배포할 때 사용자 지정할 수 있는 다음과 같은 구성 매개 변수를 제공합니다.

MLRootPath

(선택 사항) 추론 구성 요소가 이미지를 읽고 추론 결과를 쓰는 Linux 코어 디바이스의 폴더 경로입니다. 이 값을 이 구성 요소를 실행하는 사용자에게 읽기/쓰기 권한이 있는 장치의 모든 위치로 수정할 수 있습니다.

기본값: /greengrass/v2/work/variant.TensorFlowLite/greengrass_ml

WindowsMLRootPath

이 기능은 이 구성 요소의 v1.6.6 이상에서 사용할 수 있습니다.

(선택 사항) 추론 구성 요소가 이미지를 읽고 추론 결과를 쓰는 Windows 코어 장치의 폴더 경로입니다. 이 값을 이 구성 요소를 실행하는 사용자에게 읽기/쓰기 권한이 있는 장치의 모든 위치로 수정할 수 있습니다.

기본값: C:\greengrass\v2\\work\\variant.DLR\\greengrass_ml

UseInstaller

(선택 사항) 이 구성 요소의 설치 스크립트를 사용하여 TensorFlow Lite 및 해당 종속 항목을 설치할지 여부를 정의하는 문자열 값입니다. 지원되는 값은 truefalse입니다.

TensorFlow Lite 설치에 false 사용자 지정 스크립트를 사용하거나 미리 빌드된 Linux 이미지에 런타임 종속성을 포함하려는 경우 이 값을 로 설정하십시오. 이 구성 요소를 AWS-제공된 TensorFlow Lite 추론 구성 요소와 함께 사용하려면 모든 종속성을 포함한 다음 라이브러리를 설치하고 ML 구성 요소를 실행하는 시스템 사용자 등 ggc_user 시스템 사용자가 사용할 수 있도록 해야 합니다.

기본값: true

사용량

UseInstaller구성 파라미터를 로 설정한 상태에서 이 컴포넌트를 true 사용하면 기기에 TensorFlow Lite 및 해당 종속 항목을 설치할 수 있습니다. 구성 요소는 Lite에 필요한 OpenCV NumPy 및 라이브러리가 포함된 가상 환경을 장치에 설정합니다. TensorFlow

참고

또한 이 구성 요소의 설치 스크립트는 장치에 가상 환경을 구성하고 설치된 기계 학습 프레임워크를 사용하는 데 필요한 추가 시스템 라이브러리의 최신 버전을 설치합니다. 이렇게 하면 기기의 기존 시스템 라이브러리가 업그레이드될 수 있습니다. 이 구성 요소가 지원되는 각 운영 체제에 대해 설치하는 라이브러리 목록은 다음 표를 참조하십시오. 이 설치 프로세스를 사용자 지정하려면 UseInstaller 구성 매개 변수를 로 false 설정하고 자체 설치 스크립트를 개발하십시오.

플랫폼 장치 시스템에 설치된 라이브러리 가상 환경에 설치된 라이브러리
Armv7l build-essential, cmake, ca-certificates, git setuptools, wheel
Amazon Linux 2 mesa-libGL None
Ubuntu wget None

추론 구성 요소를 배포할 때 이 런타임 구성 요소는 먼저 기기에 TensorFlow Lite와 해당 종속 항목이 이미 설치되어 있는지 확인합니다. 그렇지 않은 경우 런타임 구성 요소가 자동으로 설치합니다.

로컬 로그 파일

이 구성 요소는 다음 로그 파일을 사용합니다.

Linux
/greengrass/v2/logs/variant.TensorFlowLite.log
Windows
C:\greengrass\v2\logs\variant.TensorFlowLite.log
이 구성 요소의 로그를 보려면
  • 코어 기기에서 다음 명령을 실행하여 이 구성 요소의 로그 파일을 실시간으로 확인합니다. /greengrass/v2또는 C:\greengrass\v2 를 AWS IoT Greengrass 루트 폴더 경로로 바꿉니다.

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

Changelog

다음 표에는 각 구성 요소 버전의 변경 사항이 설명되어 있습니다.

버전

변경

2.5.15

그린그래스 뉴클리어스 2.12.5 릴리스를 위해 버전이 업데이트되었습니다.

2.5.14

그린그래스 뉴클리어스 버전 2.12.0 릴리스를 위해 버전이 업데이트되었습니다.

2.5.13

그린그래스 뉴클리어스 버전 2.11.0 릴리스를 위해 버전이 업데이트되었습니다.

2.5.12

그린그래스 뉴클리어스 버전 2.10.0 릴리스를 위해 버전이 업데이트되었습니다.

2.5.11

Greengrass 뉴클리어스 버전 2.9.0 릴리스를 위해 버전이 업데이트되었습니다.

2.5.10

Greengrass 뉴클리어스 버전 2.8.0 릴리스를 위해 버전이 업데이트되었습니다.

2.5.9

Greengrass 뉴클리어스 버전 2.7.0 릴리스를 위해 버전이 업데이트되었습니다.

2.5.8

Greengrass 뉴클리어스 버전 2.6.0 릴리스를 위해 버전이 업데이트되었습니다.

2.5.7

버그 수정 및 개선
  • 특정 Linux 플랫폼에서 기본적으로 사용할 수 없는 LibGL을 설치하도록 UseInstaller 설치 스크립트를 업데이트합니다.

  • 이 컴포넌트의 가상 환경에서 항상 Python 3.9를 사용하도록 UseInstaller 설치 스크립트를 업데이트합니다. 이 변경은 다른 라이브러리와의 호환성을 보장하는 데 도움이 됩니다.

2.5.6

버그 수정 및 개선
  • 이 구성 요소를 업데이트하여 TensorFlow Lite 2.5.0 (tflite-runtime-2.5.0.post1) 의 최신 패치를 설치하므로 Python 3.9에서 이 구성 요소를 사용할 수 있습니다. 이 구성 요소가 해당 패치를 설치하지 못하면 대신 설치됩니다. tflite-runtime-2.5.0

  • 이 구성 요소를 업데이트하여 기존에 설치된 TensorFlow Lite 및 해당 종속 항목을 다시 설치합니다. 이번 변경은 코어 기기가 호환되는 버전의 TensorFlow Lite 및 해당 종속 항목을 실행하도록 하는 데 도움이 됩니다.

2.5.5

새로운 기능
  • Windows를 실행하는 핵심 장치에 대한 지원을 추가합니다.

  • Windows 핵심 장치에서 추론 결과 폴더를 구성하는 데 사용할 수 있는 새 WindowsMLRootPath 구성 매개 변수를 추가합니다.

2.5.4

새로운 기능
  • UseInstaller 구성 요소에서 설치 스크립트를 비활성화할 수 있는 새 구성 매개 변수를 추가합니다.

2.5.3

그린그래스 뉴클리어스 버전 2.4.0 릴리스를 위해 버전이 업데이트되었습니다.

2.5.2

그린그래스 뉴클리어스 버전 2.3.0 릴리스를 위해 버전이 업데이트되었습니다.

2.5.1

Greengrass 뉴클리어스 버전 2.2.0 릴리스를 위해 버전이 업데이트되었습니다.

2.5.0

초기 버전