

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 機器學習元件
<a name="machine-learning-components"></a>

AWS IoT Greengrass 提供下列機器學習元件，您可以將這些元件部署到支援的裝置，以使用在 Amazon SageMaker AI 中訓練的模型或儲存在 Amazon S3 中的您自己的預先訓練模型[來執行機器學習推論](perform-machine-learning-inference.md)。<a name="ml-component-types"></a>

AWS 提供以下類別的機器學習元件：
+ **模型元件** - 包含機器學習模型做為 Greengrass 成品。
+ **執行期元件** - 包含在 Greengrass 核心裝置上安裝機器學習架構及其相依性的指令碼。
+ **推論元件** - 包含推論程式碼，並包含元件相依性，以安裝機器學習架構並下載預先訓練的機器學習模型。

您可以在 AWS提供的機器學習元件中使用範例推論程式碼和預先訓練的模型，以使用 DLR 和 TensorFlow Lite 執行影像分類和物件偵測。若要使用存放在 Amazon S3 中的自有模型執行自訂機器學習推論，或使用不同的機器學習架構，您可以使用這些公有元件的配方做為範本來建立自訂機器學習元件。如需詳細資訊，請參閱[自訂您的機器學習元件](ml-customization.md)。

AWS IoT Greengrass 也包含 AWS提供的元件，可在 Greengrass 核心裝置上管理 SageMaker AI Edge Manager 代理程式的安裝和生命週期。透過 SageMaker AI Edge Manager，您可以直接在核心裝置上使用 Amazon SageMaker AI Neo 編譯模型。如需詳細資訊，請參閱[在 Greengrass 核心裝置上使用 Amazon SageMaker AI Edge Manager](use-sagemaker-edge-manager.md)。

下表列出 中可用的機器學習元件 AWS IoT Greengrass。

**注意**  <a name="component-nucleus-dependency-update-note"></a>
數個 AWS提供的元件取決於 Greengrass 核的特定次要版本。由於此相依性，當您將 Greengrass 核更新為新的次要版本時，您需要更新這些元件。如需每個元件所依賴之核的特定版本的資訊，請參閱對應的元件主題。如需更新核心的詳細資訊，請參閱 [更新 AWS IoT Greengrass 核心軟體 (OTA)](update-greengrass-core-v2.md)。

<a name="component-table-type-description"></a>當元件同時具有通用和 Lambda 的元件類型時，元件的目前版本是通用類型，而元件的先前版本是 Lambda 類型。


| 元件 | 說明 | [元件類型](develop-greengrass-components.md#component-types) | 支援的作業系統 | [開放原始碼](open-source.md) | 
| --- | --- | --- | --- | --- | 
| [SageMaker AI Edge Manager](sagemaker-edge-manager-component.md) | 在 Greengrass 核心裝置上部署 Amazon SageMaker AI Edge Manager 代理程式。 | 一般 | Linux、Windows | 否 | 
| [DLR 影像分類](dlr-image-classification-component.md) | 使用 DLR 影像分類模型存放區和 DLR 執行期元件做為相依性的推論元件，以安裝 DLR、下載範例影像分類模型，以及在支援的裝置上執行影像分類推論。 | 一般 | Linux、Windows | 否 | 
| [DLR 物件偵測](dlr-object-detection-component.md) | 使用 DLR 物件偵測模型存放區和 DLR 執行期元件做為相依性的推論元件，以安裝 DLR、下載範例物件偵測模型，以及在支援的裝置上執行物件偵測推論。 | 一般 | Linux、Windows | 否 | 
| [DLR 影像分類模型存放區](dlr-image-classification-model-store-component.md) | 模型元件，其中包含做為 Greengrass 成品的範例 ResNet-50 影像分類模型。 | 一般 | Linux、Windows | 否 | 
| [DLR 物件偵測模型存放區](dlr-object-detection-model-store-component.md) | 模型元件，其中包含做為 Greengrass 成品的範例 YOLOv3 物件偵測模型。 | 一般 | Linux、Windows | 否 | 
| [DLR 執行時間](dlr-component.md) | 包含安裝指令碼的執行期元件，用於在 Greengrass 核心裝置上安裝 DLR 及其相依性。 | 一般 | Linux、Windows | 否 | 
| [TensorFlow Lite 影像分類](tensorflow-lite-image-classification-component.md) | 使用 TensorFlow Lite 影像分類模型存放區和 TensorFlow Lite 執行期元件做為相依性的推論元件，以安裝 TensorFlow Lite、下載範例影像分類模型，以及在支援的裝置上執行影像分類推論。 | 一般 | Linux、Windows | 否 | 
| [TensorFlow Lite 物件偵測](tensorflow-lite-object-detection-component.md) | 使用 TensorFlow Lite 物件偵測模型存放區和 TensorFlow Lite 執行期元件做為相依性的推論元件，以安裝 TensorFlow Lite、下載範例物件偵測模型，以及在支援的裝置上執行物件偵測推論。 | 一般 | Linux、Windows | 否 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | 模型元件，其中包含做為 Greengrass 成品的範例 MobileNet v1 模型。 | 一般 | Linux、Windows | 否 | 
| [TensorFlow Lite 物件偵測模型存放區](tensorflow-lite-object-detection-model-store-component.md) | 模型元件，其中包含做為 Greengrass 成品的範例單一鏡頭偵測 (SSD) MobileNet 模型。 | 一般 | Linux、Windows | 否 | 
| [TensorFlow Lite 執行時間](tensorflow-lite-component.md) | 包含安裝指令碼的執行期元件，用於在 Greengrass 核心裝置上安裝 TensorFlow Lite 及其相依性。 | 一般 | Linux、Windows | 否 | 

# SageMaker AI Edge Manager
<a name="sagemaker-edge-manager-component"></a>

**重要**  
SageMaker AI Edge Manager 已於 2024 年 4 月 26 日終止。如需繼續將模型部署到邊緣裝置的詳細資訊，請參閱 [SageMaker AI Edge Manager 生命週期結束](https://docs.aws.amazon.com/sagemaker/latest/dg/edge-eol.html)。

Amazon SageMaker AI Edge Manager 元件 (`aws.greengrass.SageMakerEdgeManager`) 安裝 SageMaker AI Edge Manager 代理程式二進位檔。

SageMaker AI Edge Manager 為邊緣裝置提供模型管理，讓您可以在邊緣裝置機群上最佳化、保護、監控和維護機器學習模型。SageMaker AI Edge Manager 元件會在您的核心裝置上安裝和管理 SageMaker AI Edge Manager 代理程式的生命週期。您也可以使用 SageMaker AI Edge Manager 封裝和使用 SageMaker AI Neo 編譯模型作為 Greengrass 核心裝置上的模型元件。如需在核心裝置上使用 SageMaker AI Edge Manager 代理程式的詳細資訊，請參閱 [在 Greengrass 核心裝置上使用 Amazon SageMaker AI Edge Manager](use-sagemaker-edge-manager.md)。

SageMaker AI Edge Manager 元件 v1.3.x 安裝 Edge Manager 代理程式二進位 v1.20220822.836f3023。如需 Edge Manager 代理程式二進位版本的詳細資訊，請參閱 [Edge Manager 代理程式](https://docs.aws.amazon.com/sagemaker/latest/dg/edge-device-fleet-about)。

**注意**  
SageMaker AI Edge Manager 元件僅適用於下列項目 AWS 區域：  
美國東部 (俄亥俄)
美國東部 (維吉尼亞北部)
美國西部 (奧勒岡)
歐洲 (法蘭克福)
歐洲 (愛爾蘭)
亞太地區 (東京)

**Topics**
+ [版本](#sagemaker-edge-manager-component-versions)
+ [類型](#sagemaker-edge-manager-component-type)
+ [作業系統](#sagemaker-edge-manager-component-os-support)
+ [要求](#sagemaker-edge-manager-component-requirements)
+ [相依性](#sagemaker-edge-manager-component-dependencies)
+ [Configuration](#sagemaker-edge-manager-component-configuration)
+ [本機日誌檔案](#sagemaker-edge-manager-component-log-file)
+ [變更記錄](#sagemaker-edge-manager-component-changelog)

## 版本
<a name="sagemaker-edge-manager-component-versions"></a>

此元件具有下列版本：
+ 1.3.x
+ 1.2.x
+ 1.1.x
+ 1.0.x

## 類型
<a name="sagemaker-edge-manager-component-type"></a>

<a name="public-component-type-generic"></a>此<a name="public-component-type-generic-phrase"></a>元件是一般元件 (`aws.greengrass.generic`)。[Greengrass 核](greengrass-nucleus-component.md)會執行元件的生命週期指令碼。

<a name="public-component-type-more-information"></a>如需詳細資訊，請參閱[元件類型](develop-greengrass-components.md#component-types)。

## 作業系統
<a name="sagemaker-edge-manager-component-os-support"></a>

此元件可以安裝在執行下列作業系統的核心裝置上：
+ Linux
+ Windows

## 要求
<a name="sagemaker-edge-manager-component-requirements"></a>

此元件有下列需求：<a name="sm-edge-manager-component-reqs"></a>
+ <a name="sm-req-core-device"></a>在 Amazon Linux 2 上執行的 Greengrass 核心裝置、以 Debian 為基礎的 Linux 平台 (x86\$164 或 Armv8) 或 Windows (x86\$164)。如果您沒有帳戶，請參閱 [教學課程：入門 AWS IoT Greengrass V2](getting-started.md)。
+ <a name="sm-req-python"></a>[Python](https://www.python.org/downloads/) 3.6 或更新版本，包括`pip`安裝在核心裝置上的 Python 版本。
+ 使用下列項目設定的 [Greengrass 裝置角色](device-service-role.md)：
  + <a name="sm-req-iam-trust-relationship"></a>允許 `credentials.iot.amazonaws.com`和 `sagemaker.amazonaws.com`擔任角色的信任關係，如下列 IAM 政策範例所示。

    ```
    { 
      "Version": "2012-10-17",		 	 	 
      "Statement": [ 
        { 
          "Effect": "Allow", 
          "Principal": {
            "Service": "credentials.iot.amazonaws.com"
           }, 
          "Action": "sts:AssumeRole" 
        },
        { 
          "Effect": "Allow", 
          "Principal": {
            "Service": "sagemaker.amazonaws.com"
          }, 
          "Action": "sts:AssumeRole" 
        } 
      ] 
    }
    ```
  + <a name="sm-req-iam-sagemanakeredgedevicefleetpolicy"></a>[AmazonSageMakerEdgeDeviceFleetPolicy](https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/service-role/AmazonSageMakerEdgeDeviceFleetPolicy) IAM 受管政策。
  + <a name="sm-req-iam-s3-putobject"></a>`s3:PutObject` 動作，如下列 IAM 政策範例所示。

    ```
    {
      "Version": "2012-10-17",		 	 	 
      "Statement": [
        {
          "Action": [
            "s3:PutObject"
          ],
          "Resource": [
            "*"
          ],
          "Effect": "Allow"
        }
      ]
    }
    ```
+ <a name="sm-req-s3-bucket"></a>在與 Greengrass 核心裝置相同的 AWS 帳戶 和 中建立 AWS 區域 的 Amazon S3 儲存貯體。SageMaker AI Edge Manager 需要 S3 儲存貯體來建立邊緣裝置機群，並儲存範例資料，避免在裝置上執行推論。如需建立 S3 儲存貯體的資訊，請參閱 [Amazon S3 入門](https://docs.aws.amazon.com/AmazonS3/latest/userguide/GetStartedWithS3.html)。
+ <a name="sm-req-edge-device-fleet"></a>使用與 Greengrass 核心裝置相同 AWS IoT 角色別名的 SageMaker AI 邊緣裝置機群。如需詳細資訊，請參閱[建立邊緣裝置機群](get-started-with-edge-manager-on-greengrass.md#create-edge-device-fleet-for-greengrass)。
+ <a name="sm-req-edge-device"></a>您的 Greengrass 核心裝置已註冊為 SageMaker AI Edge 裝置機群中的邊緣裝置。邊緣裝置名稱必須與核心裝置的 AWS IoT 物件名稱相符。如需詳細資訊，請參閱[註冊您的 Greengrass 核心裝置](get-started-with-edge-manager-on-greengrass.md#register-greengrass-core-device-in-sme)。

### 端點和連接埠
<a name="sagemaker-edge-manager-component-endpoints"></a>

除了基本操作所需的端點和連接埠之外，此元件還必須能夠對下列端點和連接埠執行傳出請求。如需詳細資訊，請參閱[允許透過代理或防火牆的裝置流量](allow-device-traffic.md)。


| Endpoint | 連線埠 | 必要 | 說明 | 
| --- | --- | --- | --- | 
|  `edge.sagemaker.region.amazonaws.com`  | 443 | 是 |  檢查裝置註冊狀態，並將指標傳送至 SageMaker AI。  | 
|  `*.s3.amazonaws.com`  | 443 | 是 |  將擷取資料上傳到您指定的 S3 儲存貯體。 您可以將 取代`*`為您上傳資料的每個儲存貯體的名稱。  | 

## 相依性
<a name="sagemaker-edge-manager-component-dependencies"></a>

當您部署元件時， AWS IoT Greengrass 也會部署其相依性的相容版本。這表示您必須符合元件及其所有相依性的要求，才能成功部署元件。本節列出此元件[發行版本的](#sagemaker-edge-manager-component-changelog)相依性，以及為每個相依性定義元件版本的語意版本限制。您也可以在 [AWS IoT Greengrass 主控台](https://console.aws.amazon.com//greengrass)中檢視每個版本元件的相依性。在元件詳細資訊頁面上，尋找**相依性**清單。

------
#### [ 1.3.5 and 1.3.6 ]

下表列出此元件 1.3.5 和 1.3.6 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.13.0 | 軟式 | 
| [字符交換服務](token-exchange-service-component.md) | >=0.0.0 | 硬式 | 

------
#### [ 1.3.4 ]

下表列出此元件 1.3.4 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.12.0 | 軟式 | 
| [字符交換服務](token-exchange-service-component.md) | >=0.0.0 | 硬式 | 

------
#### [ 1.3.3 ]

下表列出此元件 1.3.3 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.11.0 | 軟式 | 
| [權杖交換服務](token-exchange-service-component.md) | >=0.0.0 | 硬式 | 

------
#### [ 1.3.2 ]

下表列出此元件 1.3.2 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.10.0 | 軟式 | 
| [權杖交換服務](token-exchange-service-component.md) | >=0.0.0 | 硬式 | 

------
#### [ 1.3.1 ]

下表列出此元件 1.3.1 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.9.0 | 軟式 | 
| [權杖交換服務](token-exchange-service-component.md) | >=0.0.0 | 硬式 | 

------
#### [ 1.1.1 - 1.3.0 ]

下表列出此元件 1.1.1 - 1.3.0 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0 | 軟式 | 
| [字符交換服務](token-exchange-service-component.md) | >=0.0.0 | 硬式 | 

------
#### [ 1.1.0 ]

下表列出此元件 1.1.0 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0 | 軟式 | 
| [字符交換服務](token-exchange-service-component.md) | >=0.0.0 | 硬式 | 

------
#### [ 1.0.3 ]

下表列出此元件 1.0.3 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0 | 軟式 | 
| [字符交換服務](token-exchange-service-component.md) | >=0.0.0 | 硬式 | 

------
#### [ 1.0.1 and 1.0.2 ]

下表列出此元件 1.0.1 和 1.0.2 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0 | 軟式 | 
| [權杖交換服務](token-exchange-service-component.md) | >=0.0.0 | 硬式 | 

------
#### [ 1.0.0 ]

下表列出此元件 1.0.0 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0 | 軟式 | 
| [權杖交換服務](token-exchange-service-component.md) | >=0.0.0 | 硬式 | 

------

如需元件相依性的詳細資訊，請參閱[元件配方參考](component-recipe-reference.md#recipe-reference-component-dependencies)。

## Configuration
<a name="sagemaker-edge-manager-component-configuration"></a>

此元件提供下列組態參數，您可以在部署元件時自訂這些參數。

**注意**  
本節說明您在 元件中設定的組態參數。如需對應 SageMaker AI Edge Manager 組態的詳細資訊，請參閱《*Amazon SageMaker AI 開發人員指南*》中的 [Edge Manager Agent](https://docs.aws.amazon.com/sagemaker/latest/dg/edge-device-fleet-about.html#edge-device-fleet-running-agent)。

`DeviceFleetName`  
包含 Greengrass 核心裝置的 SageMaker AI Edge Manager 裝置機群名稱。  
部署此元件時，您必須在組態更新中指定此參數的值。

`BucketName`  
您上傳擷取推論資料的 S3 儲存貯體名稱。儲存貯體名稱必須包含字串 `sagemaker`。  
如果您將 `CaptureDataDestination`設定為 `Cloud`，或者將 `CaptureDataPeriodicUpload`設定為 `true`，則您必須在部署此元件時，於組態更新中指定此參數的值。  
擷取資料是一種 SageMaker AI 功能，可用來將推論輸入、推論結果和其他推論資料上傳至 S3 儲存貯體或本機目錄，以供未來分析。如需搭配 SageMaker AI Edge Manager 使用擷取資料的詳細資訊，請參閱《*Amazon SageMaker AI 開發人員指南*》中的[管理模型](https://docs.aws.amazon.com/sagemaker/latest/dg/edge-manage-model.html#edge-manage-model-capturedata)。

`CaptureDataBatchSize`  
（選用） 代理程式處理的擷取資料請求批次大小。此值必須小於您在 中指定的緩衝區大小`CaptureDataBufferSize`。建議您不要超過緩衝區大小的一半。  
當緩衝區中的請求數量符合`CaptureDataBatchSize`數量，或`CaptureDataPushPeriodSeconds`間隔經過時，代理程式會處理請求批次，以先發生者為準。  
預設：`10`

`CaptureDataBufferSize`  
（選用） 存放在緩衝區中的擷取資料請求數目上限。  
預設：`30`

`CaptureDataDestination`  
（選用） 存放擷取資料的目的地。此參數可以有下列值：  
+ `Cloud`- 將擷取的資料上傳到您在 中指定的 S3 儲存貯體`BucketName`。
+ `Disk`- 將擷取的資料寫入元件的工作目錄。
如果您指定 `Disk`，您也可以選擇將 `CaptureDataPeriodicUpload`設定為 ，定期將擷取的資料上傳到您的 S3 儲存貯體`true`。  
預設：`Cloud`

`CaptureDataPeriodicUpload`  
（選用） 字串值，指定是否定期上傳擷取的資料。支援的值為 `true` 和 `false`。  
`true` 如果您將 設定為 `Disk`，且也希望代理程式定期上傳 S3 儲存貯體擷取的資料，請將此參數`CaptureDataDestination`設定為 。  
預設：`false`

`CaptureDataPeriodicUploadPeriodSeconds`  
（選用） SageMaker AI Edge Manager 代理程式將擷取資料上傳至 S3 儲存貯體的間隔，以秒為單位。如果您將 `CaptureDataPeriodicUpload`設定為 ，請使用此參數`true`。  
預設：`8`

`CaptureDataPushPeriodSeconds`  
（選用） SageMaker AI Edge Manager 代理程式處理緩衝區批次擷取資料請求的間隔，以秒為單位。  
當緩衝區中的請求數量符合`CaptureDataBatchSize`數量，或`CaptureDataPushPeriodSeconds`間隔經過時，代理程式會處理請求批次，以先發生者為準。  
預設：`4`

`CaptureDataBase64EmbedLimit`  
（選用） SageMaker AI Edge Manager 代理程式上傳的擷取資料位元組大小上限。  
預設：`3072`

`FolderPrefix`  
（選用） 代理程式寫入擷取資料的資料夾名稱。如果您將 `CaptureDataDestination`設定為 `Disk`，代理程式會在 指定的目錄中建立 資料夾`CaptureDataDiskPath`。如果您將 `CaptureDataDestination` 設定為 `Cloud`，或者將 `CaptureDataPeriodicUpload`設定為 `true`，則代理程式會在 S3 儲存貯體中建立 資料夾。  
預設：`sme-capture`

`CaptureDataDiskPath`  
此功能可在 SageMaker AI Edge Manager 元件的 v1.1.0 和更新版本中使用。  
（選用） 代理程式建立擷取資料資料夾的資料夾路徑。如果您將 `CaptureDataDestination`設定為 `Disk`，代理程式會在此目錄中建立擷取的資料資料夾。如果您未指定此值，代理程式會在元件的工作目錄中建立擷取的資料資料夾。使用 `FolderPrefix` 參數來指定擷取資料資料夾的名稱。  
預設：`/greengrass/v2/work/aws.greengrass.SageMakerEdgeManager/capture`

`LocalDataRootPath`  
此功能可在 SageMaker AI Edge Manager 元件的 v1.2.0 和更新版本中使用。  
（選用） 此元件在核心裝置上存放下列資料的路徑：  
+ 將 `DbEnable`設定為 時，執行時間資料的本機資料庫`true`。
+ 當您將 `DeploymentEnable`設定為 時，此元件會自動下載的 SageMaker AI Neo 編譯模型`true`。
預設：`/greengrass/v2/work/aws.greengrass.SageMakerEdgeManager`

`DbEnable`  
（選用） 您可以讓此元件在本機資料庫中存放執行時間資料以保留資料，以防元件故障或裝置斷電。  
此資料庫在核心裝置的檔案系統上需要 5 MB 的儲存空間。  
預設：`false`

`DeploymentEnable`  
此功能可在 SageMaker AI Edge Manager 元件的 v1.2.0 和更新版本中使用。  
（選用） 您可以啟用此元件，從您上傳至 Amazon S3 的模型中自動擷取 SageMaker AI Neo 編譯的模型。將新模型上傳至 Amazon S3 之後，請使用 SageMaker AI Studio 或 SageMaker AI API 將新模型部署至此核心裝置。當您啟用此功能時，您可以將新模型部署到核心裝置，而不需要建立 AWS IoT Greengrass 部署。  
若要使用此功能，您必須將 `DbEnable`設定為 `true`。此功能使用本機資料庫來追蹤從 擷取的模型 AWS 雲端。
預設：`false`

`DeploymentPollInterval`  
此功能可在 SageMaker AI Edge Manager 元件的 v1.2.0 和更新版本中使用。  
（選用） 此元件檢查要下載的新模型之間的時間量 （分鐘）。當您將 `DeploymentEnable`設定為 時，此選項適用`true`。  
預設：`1440`(1 天）

`DLRBackendOptions`  
此功能可在 SageMaker AI Edge Manager 元件的 v1.2.0 和更新版本中使用。  
（選用） 此元件使用的 DLR 執行期中要設定的 DLR 執行期旗標。您可以設定下列旗標：  
+ `TVM_TENSORRT_CACHE_DIR` – 啟用 TensorRT 模型快取。指定具有讀取/寫入許可的現有資料夾的絕對路徑。
+ `TVM_TENSORRT_CACHE_DISK_SIZE_MB` – 指派 TensorRT 模型快取資料夾的上限。當目錄大小超過此限制時，最少使用的快取引擎會被刪除。預設值為 512 MB。
例如，您可以將此參數設定為下列值，以啟用 TensorRT 模型快取，並將快取大小限制為 800 MB。  

```
TVM_TENSORRT_CACHE_DIR=/data/secured_folder/trt/cache; TVM_TENSORRT_CACHE_DISK_SIZE_MB=800
```

`SagemakerEdgeLogVerbose`  
（選用） 指定是否啟用偵錯記錄的字串值。支援的值為 `true` 和 `false`。  
預設：`false`

`UnixSocketName`  
（選用） 核心裝置上 SageMaker AI Edge Manager 通訊端檔案描述項的位置。  
預設：`/tmp/aws.greengrass.SageMakerEdgeManager.sock`

**Example 範例：組態合併更新**  
下列範例組態指定核心裝置是 *MyEdgeDeviceFleet* 的一部分，且代理程式會將擷取資料寫入裝置和 S3 儲存貯體。此組態也會啟用偵錯記錄。  

```
{
    "DeviceFleetName": "MyEdgeDeviceFleet",
    "BucketName": "amzn-s3-demo-bucket",
    "CaptureDataDestination": "Disk",
    "CaptureDataPeriodicUpload": "true",
    "SagemakerEdgeLogVerbose": "true"    
}
```

## 本機日誌檔案
<a name="sagemaker-edge-manager-component-log-file"></a>

此元件使用以下日誌檔案。

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.greengrass.SageMakerEdgeManager.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.greengrass.SageMakerEdgeManager.log
```

------

**檢視此元件的日誌**
+ 在核心裝置上執行下列命令，以即時檢視此元件的日誌檔案。將 `/greengrass/v2`或 *C：\$1greengrass\$1v2* 取代為 AWS IoT Greengrass 根資料夾的路徑。

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/aws.greengrass.SageMakerEdgeManager.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.greengrass.SageMakerEdgeManager.log -Tail 10 -Wait
  ```

------

## 變更記錄
<a name="sagemaker-edge-manager-component-changelog"></a>

下表說明每個版本元件的變更。


|  **版本**  |  **變更**  | 
| --- | --- | 
|  1.3.6  |  針對 Greengrass 核 2.12.5 版更新版本。  | 
|  1.3.5  | 針對 Greengrass nucleus 2.12.0 版更新版本。 | 
|  1.3.4  | 針對 Greengrass nucleus 2.11.0 版更新版本。 | 
|  1.3.3  | 針對 Greengrass nucleus 2.10.0 版更新版本。 | 
|  1.3.2  | 針對 Greengrass nucleus 2.9.0 版更新版本。 | 
|  1.3.1  | 針對 Greengrass nucleus 2.8.0 版更新版本。 | 
|  1.3.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/sagemaker-edge-manager-component.html)  | 
|  1.2.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/sagemaker-edge-manager-component.html)  | 
|  1.1.1  |  針對 Greengrass nucleus 2.7.0 版更新版本。  | 
|  1.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/sagemaker-edge-manager-component.html)  | 
|  1.0.3  |  針對 Greengrass nucleus 2.4.0 版更新版本。  | 
|  1.0.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/sagemaker-edge-manager-component.html)  | 
|  1.0.1  |  針對 Greengrass nucleus 2.3.0 版更新版本。  | 
|  1.0.0  |  初始版本。  | 

# DLR 影像分類
<a name="dlr-image-classification-component"></a>

DLR 影像分類元件 (`aws.greengrass.DLRImageClassification`) 包含使用 [Deep Learning Runtime](https://github.com/neo-ai/neo-ai-dlr) 和 resnet-50 模型執行影像分類推論的範例推論程式碼。此元件使用變體[DLR 影像分類模型存放區](dlr-image-classification-model-store-component.md)和[DLR 執行時間](dlr-component.md)元件做為相依性，以下載 DLR 和範例模型。

若要搭配自訂訓練的 DLR 模型使用此推論元件，[請建立相依模型存放區元件的自訂版本](ml-customization.md#override-public-model-store)。若要使用您自己的自訂推論程式碼，您可以使用此元件的配方做為範本來[建立自訂推論元件](ml-customization.md#create-inference-component)。

**Topics**
+ [版本](#dlr-image-classification-component-versions)
+ [類型](#dlr-image-classification-component-type)
+ [作業系統](#dlr-image-classification-component-os-support)
+ [要求](#dlr-image-classification-component-requirements)
+ [相依性](#dlr-image-classification-component-dependencies)
+ [Configuration](#dlr-image-classification-component-configuration)
+ [本機日誌檔案](#dlr-image-classification-component-log-file)
+ [變更記錄](#dlr-image-classification-component-changelog)

## 版本
<a name="dlr-image-classification-component-versions"></a>

此元件具有下列版本：
+ 2.1.x
+ 2.0.x

## 類型
<a name="dlr-image-classification-component-type"></a>

<a name="public-component-type-generic"></a>此<a name="public-component-type-generic-phrase"></a>元件是一般元件 (`aws.greengrass.generic`)。[Greengrass 核](greengrass-nucleus-component.md)會執行元件的生命週期指令碼。

<a name="public-component-type-more-information"></a>如需詳細資訊，請參閱[元件類型](develop-greengrass-components.md#component-types)。

## 作業系統
<a name="dlr-image-classification-component-os-support"></a>

此元件可以安裝在執行下列作業系統的核心裝置上：
+ Linux
+ Windows

## 要求
<a name="dlr-image-classification-component-requirements"></a>

此元件有下列需求：<a name="ml-component-requirements"></a>
+ 在執行 Amazon Linux 2 或 Ubuntu 18.04 的 Greengrass 核心裝置上，[GNU C Library](https://www.gnu.org/software/libc/) (glibc) 2.27 版或更新版本安裝在裝置上。
+ 在 Armv7l 裝置上，例如 Raspberry Pi，安裝在裝置上的 OpenCV-Python 相依性。執行下列命令來安裝相依性。

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ 執行 Raspberry Pi OS Bullseye 的 Raspberry Pi 裝置必須符合下列要求：
  + 裝置上已安裝 NumPy 1.22.4 或更新版本。Raspberry Pi OS Bullseye 包含舊版的 NumPy，因此您可以執行下列命令以在裝置上升級 NumPy。

    ```
    pip3 install --upgrade numpy
    ```
  + 裝置上啟用的舊版攝影機堆疊。Raspberry Pi OS Bullseye 包含預設啟用且不相容的新攝影機堆疊，因此您必須啟用舊版攝影機堆疊。<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**啟用舊版攝影機堆疊**

    1. 執行下列命令以開啟 Raspberry Pi 組態工具。

       ```
       sudo raspi-config
       ```

    1. 選取**界面選項**。

    1. 選取**舊版攝影機**以啟用舊版攝影機堆疊。

    1. 重新啟動 Raspberry Pi。

## 相依性
<a name="dlr-image-classification-component-dependencies"></a>

當您部署元件時， AWS IoT Greengrass 也會部署其相依性的相容版本。這表示您必須符合元件及其所有相依性的要求，才能成功部署元件。本節列出此元件[發行版本的](#dlr-image-classification-component-changelog)相依性，以及為每個相依性定義元件版本的語意版本限制。您也可以在 [AWS IoT Greengrass 主控台](https://console.aws.amazon.com//greengrass)中檢視每個版本元件的相依性。在元件詳細資訊頁面上，尋找**相依性**清單。

------
#### [ 2.1.13 and 2.1.14 ]

下表列出此元件 2.1.13 和 2.1.14 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.13.0 | 軟式 | 
| [DLR 影像分類模型存放區](dlr-image-classification-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.1.12 ]

下表列出此元件 2.1.12 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.12.0 | 軟式 | 
| [DLR 影像分類模型存放區](dlr-image-classification-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.1.11 ]

下表列出此元件 2.1.11 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.11.0 | 軟式 | 
| [DLR 影像分類模型存放區](dlr-image-classification-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.1.10 ]

下表列出此元件 2.1.10 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.10.0 | 軟式 | 
| [DLR 影像分類模型存放區](dlr-image-classification-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.1.9 ]

下表列出此元件 2.1.9 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.9.0 | 軟式 | 
| [DLR 影像分類模型存放區](dlr-image-classification-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.1.8 ]

下表列出此元件 2.1.8 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0 | 軟式 | 
| [DLR 影像分類模型存放區](dlr-image-classification-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.1.7 ]

下表列出此元件 2.1.7 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0 | 軟式 | 
| [DLR 影像分類模型存放區](dlr-image-classification-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.1.6 ]

下表列出此元件 2.1.6 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0 | 軟式 | 
| [DLR 影像分類模型存放區](dlr-image-classification-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.1.4 - 2.1.5 ]

下表列出此元件 2.1.4 至 2.1.5 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0 | 軟式 | 
| [DLR 影像分類模型存放區](dlr-image-classification-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.1.3 ]

下表列出此元件 2.1.3 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0 | 軟式 | 
| [DLR 影像分類模型存放區](dlr-image-classification-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.1.2 ]

下表列出此元件 2.1.2 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0 | 軟式 | 
| [DLR 影像分類模型存放區](dlr-image-classification-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.1.1 ]

下表列出此元件 2.1.1 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0 | 軟式 | 
| [DLR 影像分類模型存放區](dlr-image-classification-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.0.x ]

下表列出此元件 2.0.x 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | \$12.0.0 | 軟式 | 
| DLR 影像分類模型存放區 | \$12.0.0 | 硬式 | 
| DLR | \$11.3.0 | 軟式 | 

------

## Configuration
<a name="dlr-image-classification-component-configuration"></a>

此元件提供下列組態參數，您可以在部署元件時自訂這些參數。

------
#### [ 2.1.x ]

`accessControl`  
<a name="ml-config-accesscontrol-desc"></a>（選用） 包含[授權政策](interprocess-communication.md#ipc-authorization-policies)的物件，允許元件將訊息發佈至預設通知主題。  
預設：  

```
{
   "aws.greengrass.ipc.mqttproxy": {
      "aws.greengrass.DLRImageClassification:mqttproxy:1": {
         "policyDescription": "Allows access to publish via topic ml/dlr/image-classification.",
         "operations": [
            "aws.greengrass#PublishToIoTCore"
         ],
         "resources": [
            "ml/dlr/image-classification"
         ]
      }
   }
}
```

`PublishResultsOnTopic`  
<a name="ml-config-publishresultsontopic-desc"></a>（選用） 您要發佈推論結果的主題。如果您修改此值，則也必須修改 `accessControl` 參數`resources`中的 值，以符合您的自訂主題名稱。  
預設：`ml/dlr/image-classification`

`Accelerator`  <a name="ml-config-accelerator"></a>
您要使用的加速器。支援的值為 `cpu` 和 `gpu`。  
相依模型元件中的範例模型僅支援 CPU 加速。若要搭配不同的自訂模型使用 GPU 加速，[請建立自訂模型元件](ml-customization.md#override-public-model-store)以覆寫公有模型元件。  
預設：`cpu`

`ImageDirectory`  
<a name="ml-config-imagedirectory-desc"></a>（選用） 推論元件讀取映像之裝置上的資料夾路徑。您可以將此值修改為您裝置上具有讀取/寫入存取權的任何位置。  
<a name="ml-config-imagedirectory-img-default"></a>預設：`/greengrass/v2/packages/artifacts-unarchived/component-name/image_classification/sample_images/`  
如果您將 的值設定為 `UseCamera` `true`，則會忽略此組態參數。

`ImageName`  
<a name="ml-config-imagename-desc"></a>（選用） 推論元件用來輸入進行預測的影像名稱。元件會在 中指定的資料夾中尋找映像`ImageDirectory`。根據預設，元件會使用預設映像目錄中的範例映像。 AWS IoT Greengrass 支援下列映像格式：`jpeg`、`png`、 `jpg`和 `npy`。  
<a name="ml-config-imagename-img-default"></a>預設：`cat.jpeg`  
如果您將 的值設定為 `UseCamera` `true`，則會忽略此組態參數。

`InferenceInterval`  <a name="ml-config-inferenceinterval"></a>
（選用） 推論程式碼所做的每個預測之間的秒數。範例推論程式碼會無限期執行，並在指定的時間間隔重複其預測。例如，如果您想要使用攝影機拍攝的影像進行即時預測，您可以將此值變更為較短的間隔。  
預設：`3600`

`ModelResourceKey`  <a name="ml-config-modelresourcekey"></a>
<a name="ml-config-modelresourcekey-desc"></a>（選用） 用於相依公有模型元件的模型。只有在您使用自訂元件覆寫公有模型元件時，才修改此參數。  
預設：  

```
{
    "armv7l": "DLR-resnet50-armv7l-cpu-ImageClassification",
    "aarch64": "DLR-resnet50-aarch64-cpu-ImageClassification",
    "x86_64": "DLR-resnet50-x86_64-cpu-ImageClassification",
    "windows": "DLR-resnet50-win-cpu-ImageClassification"
}
```

`UseCamera`  <a name="ml-config-usecamera"></a>
（選用） 字串值，定義是否使用連接至 Greengrass 核心裝置的攝影機的影像。支援的值為 `true` 和 `false`。  
當您將此值設定為 時`true`，範例推論程式碼會存取裝置上的攝影機，並在擷取的影像上本機執行推論。會忽略 `ImageName`和 `ImageDirectory` 參數的值。請確定執行此元件的使用者具有攝影機存放擷取影像之位置的讀取/寫入存取權。  
預設：`false`  
當您檢視此元件的配方時，`UseCamera`組態參數不會出現在預設組態中。不過，您可以在部署元件時修改[組態合併更新](update-component-configurations.md)中此參數的值。  
將 `UseCamera`設定為 時`true`，您還必須建立符號連結，讓推論元件從執行期元件建立的虛擬環境中存取您的攝影機。如需搭配範例推論元件使用攝影機的詳細資訊，請參閱 [更新元件組態](ml-tutorial-image-classification-camera.md)。

------
#### [ 2.0.x ]

`MLRootPath`  <a name="ml-config-mlrootpath"></a>
<a name="ml-config-mlrootpath-desc"></a>（選用） Linux 核心裝置上的資料夾路徑，其中推論元件會讀取映像和寫入推論結果。您可以將此值修改為裝置上執行此元件的使用者具有讀取/寫入存取權的任何位置。  
<a name="ml-config-mlrootpath-default-dlr"></a>預設：`/greengrass/v2/work/variant.DLR/greengrass_ml`  
<a name="ml-config-mlrootpath-default-tfl"></a>預設：`/greengrass/v2/work/variant.TensorFlowLite/greengrass_ml`

`Accelerator`  <a name="ml-config-accelerator"></a>
您要使用的加速器。支援的值為 `cpu` 和 `gpu`。  
相依模型元件中的範例模型僅支援 CPU 加速。若要搭配不同的自訂模型使用 GPU 加速，[請建立自訂模型元件](ml-customization.md#override-public-model-store)以覆寫公有模型元件。  
預設：`cpu`

`ImageName`  
<a name="ml-config-imagename-desc-dlr-1.3.0"></a>（選用） 推論元件用來輸入進行預測的影像名稱。元件會在 中指定的資料夾中尋找映像`ImageDirectory`。預設位置為 `MLRootPath/images`。 AWS IoT Greengrass 支援下列影像格式：`jpeg`、`png`、 `jpg`和 `npy`。  
<a name="ml-config-imagename-img-default"></a>預設：`cat.jpeg`

`InferenceInterval`  <a name="ml-config-inferenceinterval"></a>
（選用） 推論程式碼所做的每個預測之間的秒數。範例推論程式碼會無限期執行，並在指定的時間間隔重複其預測。例如，如果您想要使用攝影機拍攝的影像進行即時預測，您可以將此值變更為較短的間隔。  
預設：`3600`

`ModelResourceKey`  <a name="ml-config-modelresourcekey"></a>
<a name="ml-config-modelresourcekey-desc"></a>（選用） 用於相依公有模型元件的模型。只有在您使用自訂元件覆寫公有模型元件時，才修改此參數。  
預設：  

```
armv7l: "DLR-resnet50-armv7l-cpu-ImageClassification"
x86_64: "DLR-resnet50-x86_64-cpu-ImageClassification"
```

------

## 本機日誌檔案
<a name="dlr-image-classification-component-log-file"></a>

此元件使用以下日誌檔案。

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.greengrass.DLRImageClassification.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.greengrass.DLRImageClassification.log
```

------

**檢視此元件的日誌**
+ 在核心裝置上執行下列命令，以即時檢視此元件的日誌檔案。將 `/greengrass/v2`或 *C：\$1greengrass\$1v2* 取代為 AWS IoT Greengrass 根資料夾的路徑。

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/aws.greengrass.DLRImageClassification.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.greengrass.DLRImageClassification.log -Tail 10 -Wait
  ```

------

## 變更記錄
<a name="dlr-image-classification-component-changelog"></a>

下表說明每個版本元件的變更。


|  **版本**  |  **變更**  | 
| --- | --- | 
|  2.1.14  | 針對 Greengrass 核 2.12.5 版更新版本。 | 
|  2.1.13  | 針對 Greengrass nucleus 2.12.0 版更新版本。 | 
|  2.1.12  | 針對 Greengrass nucleus 2.11.0 版更新版本。 | 
|  2.1.11  | 針對 Greengrass nucleus 2.10.0 版更新版本。 | 
|  2.1.10  | 針對 Greengrass nucleus 2.9.0 版更新版本。 | 
|  2.1.9  | 針對 Greengrass nucleus 2.8.0 版更新版本。 | 
|  2.1.8  |  針對 Greengrass nucleus 2.7.0 版更新版本。  | 
|  2.1.7  |  針對 Greengrass nucleus 2.6.0 版更新版本。  | 
|  2.1.6  |  針對 Greengrass nucleus 2.5.0 版更新版本。  | 
|  2.1.5  |  所有 中發行的元件 AWS 區域。  | 
|  2.1.4  |  針對 Greengrass nucleus 2.4.0 版更新版本。 此版本不適用於歐洲 （倫敦） ()`eu-west-2`。  | 
|  2.1.3  |  針對 Greengrass nucleus 2.3.0 版更新版本。  | 
|  2.1.2  |  針對 Greengrass nucleus 2.2.0 版更新版本。  | 
|  2.1.1  |  <a name="changelog-dlr-image-classification-2.1.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/dlr-image-classification-component.html)  | 
|  2.0.4  |  初始版本。  | 

# DLR 物件偵測
<a name="dlr-object-detection-component"></a>

DLR 物件偵測元件 (`aws.greengrass.DLRObjectDetection`) 包含範例推論程式碼，以使用 [Deep Learning Runtime](https://github.com/neo-ai/neo-ai-dlr) 和範例預先訓練模型執行物件偵測推論。此元件使用變體[DLR 物件偵測模型存放區](dlr-object-detection-model-store-component.md)和[DLR 執行時間](dlr-component.md)元件做為相依性，以下載 DLR 和範例模型。

若要搭配自訂訓練的 DLR 模型使用此推論元件，[請建立相依模型存放區元件的自訂版本](ml-customization.md#override-public-model-store)。若要使用您自己的自訂推論程式碼，您可以使用此元件的配方做為範本來[建立自訂推論元件](ml-customization.md#create-inference-component)。

**Topics**
+ [版本](#dlr-object-detection-component-versions)
+ [類型](#dlr-object-detection-component-type)
+ [作業系統](#dlr-object-detection-component-os-support)
+ [要求](#dlr-object-detection-component-requirements)
+ [相依性](#dlr-object-detection-component-dependencies)
+ [Configuration](#dlr-object-detection-component-configuration)
+ [本機日誌檔案](#dlr-object-detection-component-log-file)
+ [變更記錄](#dlr-object-detection-component-changelog)

## 版本
<a name="dlr-object-detection-component-versions"></a>

此元件具有下列版本：
+ 2.1.x
+ 2.0.x

## 類型
<a name="dlr-object-detection-component-type"></a>

<a name="public-component-type-generic"></a>此<a name="public-component-type-generic-phrase"></a>元件是一般元件 (`aws.greengrass.generic`)。[Greengrass 核](greengrass-nucleus-component.md)會執行元件的生命週期指令碼。

<a name="public-component-type-more-information"></a>如需詳細資訊，請參閱[元件類型](develop-greengrass-components.md#component-types)。

## 作業系統
<a name="dlr-object-detection-component-os-support"></a>

此元件可以安裝在執行下列作業系統的核心裝置上：
+ Linux
+ Windows

## 要求
<a name="dlr-object-detection-component-requirements"></a>

此元件有下列需求：<a name="ml-component-requirements"></a>
+ 在執行 Amazon Linux 2 或 Ubuntu 18.04 的 Greengrass 核心裝置上，[GNU C Library](https://www.gnu.org/software/libc/) (glibc) 2.27 版或更新版本安裝在裝置上。
+ 在 Armv7l 裝置上，例如 Raspberry Pi，安裝在裝置上的 OpenCV-Python 相依性。執行下列命令來安裝相依性。

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ 執行 Raspberry Pi OS Bullseye 的 Raspberry Pi 裝置必須符合下列要求：
  + 裝置上已安裝 NumPy 1.22.4 或更新版本。Raspberry Pi OS Bullseye 包含舊版的 NumPy，因此您可以執行下列命令以在裝置上升級 NumPy。

    ```
    pip3 install --upgrade numpy
    ```
  + 裝置上啟用的舊版攝影機堆疊。Raspberry Pi OS Bullseye 包含預設啟用且不相容的新攝影機堆疊，因此您必須啟用舊版攝影機堆疊。<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**啟用舊版攝影機堆疊**

    1. 執行下列命令以開啟 Raspberry Pi 組態工具。

       ```
       sudo raspi-config
       ```

    1. 選取**界面選項**。

    1. 選取**舊版攝影機**以啟用舊版攝影機堆疊。

    1. 重新啟動 Raspberry Pi。

## 相依性
<a name="dlr-object-detection-component-dependencies"></a>

當您部署元件時， AWS IoT Greengrass 也會部署其相依性的相容版本。這表示您必須符合元件及其所有相依性的要求，才能成功部署元件。本節列出此元件[發行版本的](#dlr-object-detection-component-changelog)相依性，以及為每個相依性定義元件版本的語意版本限制。您也可以在 [AWS IoT Greengrass 主控台](https://console.aws.amazon.com//greengrass)中檢視每個版本元件的相依性。在元件詳細資訊頁面上，尋找**相依性**清單。

------
#### [ 2.1.13 and 2.1.14 ]

下表列出此元件 2.1.13 和 2.1.14 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.13.0 | 軟式 | 
| [DLR 物件偵測模型存放區](dlr-object-detection-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.1.12 ]

下表列出此元件 2.1.12 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.12.0 | 軟式 | 
| [DLR 物件偵測模型存放區](dlr-object-detection-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.1.11 ]

下表列出此元件 2.1.11 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.11.0 | 軟式 | 
| [DLR 物件偵測模型存放區](dlr-object-detection-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.1.10 ]

下表列出此元件 2.1.10 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.10.0 | 軟式 | 
| [DLR 物件偵測模型存放區](dlr-object-detection-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.1.9 ]

下表列出此元件 2.1.9 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.9.0 | 軟式 | 
| [DLR 物件偵測模型存放區](dlr-object-detection-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.1.8 ]

下表列出此元件 2.1.8 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0 | 軟式 | 
| [DLR 物件偵測模型存放區](dlr-object-detection-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.1.7 ]

下表列出此元件 2.1.7 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0 | 軟式 | 
| [DLR 物件偵測模型存放區](dlr-object-detection-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.1.6 ]

下表列出此元件 2.1.6 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0 | 軟式 | 
| [DLR 物件偵測模型存放區](dlr-object-detection-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.1.4 - 2.1.5 ]

下表列出此元件 2.1.4 至 2.1.5 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0 | 軟式 | 
| [DLR 物件偵測模型存放區](dlr-object-detection-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.1.3 ]

下表列出此元件 2.1.3 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0 | 軟式 | 
| [DLR 物件偵測模型存放區](dlr-object-detection-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.1.2 ]

下表列出此元件 2.1.2 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0 | 軟式 | 
| [DLR 物件偵測模型存放區](dlr-object-detection-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.1.1 ]

下表列出此元件 2.1.1 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0 | 軟式 | 
| [DLR 物件偵測模型存放區](dlr-object-detection-model-store-component.md) | \$12.1.0 | 硬式 | 
| [DLR](dlr-component.md) | \$11.6.0 | 硬式 | 

------
#### [ 2.0.x ]

下表列出此元件 2.0.x 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | \$12.0.0 | 軟式 | 
| DLR 物件偵測模型存放區 | \$12.0.0 | 硬式 | 
| DLR | \$11.3.0 | 軟式 | 

------

## Configuration
<a name="dlr-object-detection-component-configuration"></a>

此元件提供下列組態參數，您可以在部署元件時自訂這些參數。

------
#### [ 2.1.x ]

`accessControl`  
<a name="ml-config-accesscontrol-desc"></a>（選用） 包含[授權政策](interprocess-communication.md#ipc-authorization-policies)的物件，允許元件將訊息發佈至預設通知主題。  
預設：  

```
{
   "aws.greengrass.ipc.mqttproxy": {
      "aws.greengrass.DLRObjectDetection:mqttproxy:1": {
         "policyDescription": "Allows access to publish via topic ml/dlr/object-detection.",
         "operations": [
            "aws.greengrass#PublishToIoTCore"
         ],
         "resources": [
            "ml/dlr/object-detection"
         ]
      }
   }
}
```

`PublishResultsOnTopic`  
<a name="ml-config-publishresultsontopic-desc"></a>（選用） 您要發佈推論結果的主題。如果您修改此值，則也必須修改 `accessControl` 參數`resources`中的 值，以符合您的自訂主題名稱。  
預設：`ml/dlr/object-detection`

`Accelerator`  <a name="ml-config-accelerator"></a>
您要使用的加速器。支援的值為 `cpu` 和 `gpu`。  
相依模型元件中的範例模型僅支援 CPU 加速。若要搭配不同的自訂模型使用 GPU 加速，[請建立自訂模型元件](ml-customization.md#override-public-model-store)以覆寫公有模型元件。  
預設：`cpu`

`ImageDirectory`  
<a name="ml-config-imagedirectory-desc"></a>（選用） 推論元件讀取映像之裝置上的資料夾路徑。您可以將此值修改為您裝置上具有讀取/寫入存取權的任何位置。  
<a name="ml-config-imagedirectory-obj-default"></a>預設：`/greengrass/v2/packages/artifacts-unarchived/component-name/object_detection/sample_images/`  
如果您將 的值設定為 `UseCamera` `true`，則會忽略此組態參數。

`ImageName`  
<a name="ml-config-imagename-desc"></a>（選用） 推論元件用來輸入進行預測的影像名稱。元件會在 中指定的資料夾中尋找映像`ImageDirectory`。根據預設，元件會使用預設映像目錄中的範例映像。 AWS IoT Greengrass 支援下列映像格式：`jpeg`、`png`、 `jpg`和 `npy`。  
<a name="ml-config-imagename-obj-default"></a>預設：`objects.jpg`  
如果您將 的值設定為 `UseCamera` `true`，則會忽略此組態參數。

`InferenceInterval`  <a name="ml-config-inferenceinterval"></a>
（選用） 推論程式碼所做的每個預測之間的秒數。範例推論程式碼會無限期執行，並在指定的時間間隔重複其預測。例如，如果您想要使用攝影機拍攝的影像進行即時預測，您可以將此值變更為較短的間隔。  
預設：`3600`

`ModelResourceKey`  <a name="ml-config-modelresourcekey"></a>
<a name="ml-config-modelresourcekey-desc"></a>（選用） 用於相依公有模型元件的模型。只有在您使用自訂元件覆寫公有模型元件時，才修改此參數。  
預設：  

```
{
    "armv7l": "DLR-yolo3-armv7l-cpu-ObjectDetection",
    "aarch64": "DLR-yolo3-aarch64-gpu-ObjectDetection",
    "x86_64": "DLR-yolo3-x86_64-cpu-ObjectDetection",
    "windows": "DLR-resnet50-win-cpu-ObjectDetection"
}
```

`UseCamera`  <a name="ml-config-usecamera"></a>
（選用） 字串值，定義是否使用連接至 Greengrass 核心裝置的攝影機的影像。支援的值為 `true` 和 `false`。  
當您將此值設定為 時`true`，範例推論程式碼會存取裝置上的攝影機，並在擷取的影像上本機執行推論。會忽略 `ImageName`和 `ImageDirectory` 參數的值。請確定執行此元件的使用者具有攝影機存放擷取影像之位置的讀取/寫入存取權。  
預設：`false`  
當您檢視此元件的配方時，`UseCamera`組態參數不會出現在預設組態中。不過，您可以在部署元件時修改[組態合併更新](update-component-configurations.md)中此參數的值。  
將 `UseCamera`設定為 時`true`，您還必須建立符號連結，讓推論元件從執行期元件建立的虛擬環境中存取您的攝影機。如需搭配範例推論元件使用攝影機的詳細資訊，請參閱 [更新元件組態](ml-tutorial-image-classification-camera.md)。

------
#### [ 2.0.x ]

`MLRootPath`  <a name="ml-config-mlrootpath"></a>
<a name="ml-config-mlrootpath-desc"></a>（選用） Linux 核心裝置上的資料夾路徑，其中推論元件會讀取映像和寫入推論結果。您可以將此值修改為裝置上執行此元件的使用者具有讀取/寫入存取權的任何位置。  
<a name="ml-config-mlrootpath-default-dlr"></a>預設：`/greengrass/v2/work/variant.DLR/greengrass_ml`  
<a name="ml-config-mlrootpath-default-tfl"></a>預設：`/greengrass/v2/work/variant.TensorFlowLite/greengrass_ml`

`Accelerator`  
請勿修改。目前，加速器唯一支援的值是 `cpu`，因為相依模型元件中的模型只會針對 CPU 加速器編譯。

`ImageName`  
<a name="ml-config-imagename-desc-dlr-1.3.0"></a>（選用） 推論元件用來輸入進行預測的影像名稱。元件會在 中指定的資料夾中尋找映像`ImageDirectory`。預設位置為 `MLRootPath/images`。 AWS IoT Greengrass 支援下列影像格式：`jpeg`、`png`、 `jpg`和 `npy`。  
<a name="ml-config-imagename-obj-default"></a>預設：`objects.jpg`

`InferenceInterval`  <a name="ml-config-inferenceinterval"></a>
（選用） 推論程式碼所做的每個預測之間的秒數。範例推論程式碼會無限期執行，並在指定的時間間隔重複其預測。例如，如果您想要使用攝影機拍攝的影像進行即時預測，您可以將此值變更為較短的間隔。  
預設：`3600`

`ModelResourceKey`  <a name="ml-config-modelresourcekey"></a>
<a name="ml-config-modelresourcekey-desc"></a>（選用） 用於相依公有模型元件的模型。只有在您使用自訂元件覆寫公有模型元件時，才修改此參數。  
預設：  

```
{
    armv7l: "DLR-yolo3-armv7l-cpu-ObjectDetection",
    x86_64: "DLR-yolo3-x86_64-cpu-ObjectDetection"
}
```

------

## 本機日誌檔案
<a name="dlr-object-detection-component-log-file"></a>

此元件使用以下日誌檔案。

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.greengrass.DLRObjectDetection.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.greengrass.DLRObjectDetection.log
```

------

**檢視此元件的日誌**
+ 在核心裝置上執行下列命令，以即時檢視此元件的日誌檔案。將 `/greengrass/v2`或 *C：\$1greengrass\$1v2* 取代為 AWS IoT Greengrass 根資料夾的路徑。

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/aws.greengrass.DLRObjectDetection.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.greengrass.DLRObjectDetection.log -Tail 10 -Wait
  ```

------

## 變更記錄
<a name="dlr-object-detection-component-changelog"></a>

下表說明每個版本元件的變更。


|  **版本**  |  **變更**  | 
| --- | --- | 
|  2.1.14  | 針對 Greengrass 核 2.12.5 版更新版本。 | 
|  2.1.13  | 針對 Greengrass nucleus 2.12.0 版更新版本。 | 
|  2.1.12  | 針對 Greengrass nucleus 2.11.0 版更新版本。 | 
|  2.1.11  | 針對 Greengrass nucleus 2.10.0 版更新版本。 | 
|  2.1.10  | 針對 Greengrass nucleus 2.9.0 版更新版本。 | 
|  2.1.9  | 針對 Greengrass nucleus 2.8.0 版更新版本。 | 
|  2.1.8  |  針對 Greengrass nucleus 2.7.0 版更新版本。  | 
|  2.1.7  |  針對 Greengrass nucleus 2.6.0 版更新版本。  | 
|  2.1.6  |  針對 Greengrass nucleus 2.5.0 版更新版本。  | 
|  2.1.5  |  所有 中發行的元件 AWS 區域。  | 
|  2.1.4  |  針對 Greengrass nucleus 2.4.0 版更新版本。 此版本不適用於歐洲 （倫敦） ()`eu-west-2`。  | 
|  2.1.3  |  針對 Greengrass nucleus 2.3.0 版更新版本。  | 
|  2.1.2  |  <a name="changelog-dlr-object-detection-2.1.2"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/dlr-object-detection-component.html)  | 
|  2.1.1  |  <a name="changelog-dlr-object-detection-2.1.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/dlr-object-detection-component.html)  | 
|  2.0.4  |  初始版本。  | 

# DLR 影像分類模型存放區
<a name="dlr-image-classification-model-store-component"></a>

DLR 影像分類模型存放區是一種機器學習模型元件，其中包含預先訓練的 ResNet-50 模型做為 Greengrass 成品。此元件中使用的預先訓練模型是從 [GluonCV 模型動物園](https://cv.gluon.ai/model_zoo/index.html)擷取，並使用 SageMaker AI Neo [深度學習執行期](https://github.com/neo-ai/neo-ai-dlr)編譯。

[DLR 影像分類](dlr-image-classification-component.md)推論元件使用此元件做為模型來源的相依性。若要使用自訂訓練的 DLR 模型，[請建立此模型元件的自訂版本](ml-customization.md#override-public-model-store)，並將您的自訂模型包含為元件成品。您可以使用此元件的配方做為範本，來建立自訂模型元件。

**注意**  
DLR 影像分類模型存放區元件的名稱會因版本而異。2.1.x 版和更新版本的元件名稱為 。 `variant.DLR.ImageClassification.ModelStore`2.0.x 版的元件名稱為 `variant.ImageClassification.ModelStore`。

**Topics**
+ [版本](#dlr-image-classification-model-store-component-versions)
+ [類型](#dlr-image-classification-model-store-component-type)
+ [作業系統](#dlr-image-classification-model-store-component-os-support)
+ [要求](#dlr-image-classification-model-store-component-requirements)
+ [相依性](#dlr-image-classification-model-store-component-dependencies)
+ [Configuration](#dlr-image-classification-model-store-component-configuration)
+ [本機日誌檔案](#dlr-image-classification-model-store-component-log-file)
+ [變更記錄](#dlr-image-classification-model-store-component-changelog)

## 版本
<a name="dlr-image-classification-model-store-component-versions"></a>

此元件具有下列版本：
+ 2.1.x (`variant.DLR.ImageClassification.ModelStore`) 
+ 2.0.x (`variant.ImageClassification.ModelStore`) 

## 類型
<a name="dlr-image-classification-model-store-component-type"></a>

<a name="public-component-type-generic"></a>此<a name="public-component-type-generic-phrase"></a>元件是一般元件 (`aws.greengrass.generic`)。[Greengrass 核](greengrass-nucleus-component.md)會執行元件的生命週期指令碼。

<a name="public-component-type-more-information"></a>如需詳細資訊，請參閱[元件類型](develop-greengrass-components.md#component-types)。

## 作業系統
<a name="dlr-image-classification-model-store-component-os-support"></a>

此元件可以安裝在執行下列作業系統的核心裝置上：
+ Linux
+ Windows

## 要求
<a name="dlr-image-classification-model-store-component-requirements"></a>

此元件有下列需求：<a name="ml-component-requirements"></a>
+ 在執行 Amazon Linux 2 或 Ubuntu 18.04 的 Greengrass 核心裝置上，[GNU C Library](https://www.gnu.org/software/libc/) (glibc) 2.27 版或更新版本安裝在裝置上。
+ 在 Armv7l 裝置上，例如 Raspberry Pi，安裝在裝置上的 OpenCV-Python 相依性。執行下列命令來安裝相依性。

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ 執行 Raspberry Pi OS Bullseye 的 Raspberry Pi 裝置必須符合下列要求：
  + 裝置上已安裝 NumPy 1.22.4 或更新版本。Raspberry Pi OS Bullseye 包含舊版的 NumPy，因此您可以執行下列命令以在裝置上升級 NumPy。

    ```
    pip3 install --upgrade numpy
    ```
  + 在裝置上啟用的舊版攝影機堆疊。Raspberry Pi OS Bullseye 包含預設啟用且不相容的新攝影機堆疊，因此您必須啟用舊版攝影機堆疊。<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**啟用舊版攝影機堆疊**

    1. 執行下列命令以開啟 Raspberry Pi 組態工具。

       ```
       sudo raspi-config
       ```

    1. 選取**界面選項**。

    1. 選取**舊版攝影機**以啟用舊版攝影機堆疊。

    1. 重新啟動 Raspberry Pi。

## 相依性
<a name="dlr-image-classification-model-store-component-dependencies"></a>

當您部署元件時， AWS IoT Greengrass 也會部署其相依性的相容版本。這表示您必須符合元件及其所有相依性的要求，才能成功部署元件。本節列出此元件[發行版本的](#dlr-image-classification-model-store-component-changelog)相依性，以及為每個相依性定義元件版本的語意版本限制。您也可以在 [AWS IoT Greengrass 主控台](https://console.aws.amazon.com//greengrass)中檢視每個版本元件的相依性。在元件詳細資訊頁面上，尋找**相依性**清單。

------
#### [ 2.1.12 - 2.1.14 ]

下表列出此元件 2.1.12 版和 2.1.13 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.13.0 | 軟式 | 

------
#### [ 2.1.11 ]

下表列出此元件 2.1.11 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.12.0 | 軟式 | 

------
#### [ 2.1.10 ]

下表列出此元件 2.1.10 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.11.0 | 軟式 | 

------
#### [ 2.1.9 ]

下表列出此元件 2.1.9 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.10.0 | 軟式 | 

------
#### [ 2.1.8 ]

下表列出此元件 2.1.8 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.9.0 | 軟式 | 

------
#### [ 2.1.7 ]

下表列出此元件 2.1.7 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0 | 軟式 | 

------
#### [ 2.1.6 ]

下表列出此元件 2.1.6 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0 | 軟式 | 

------
#### [ 2.1.5 ]

下表列出此元件 2.1.5 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0 | 軟式 | 

------
#### [ 2.1.4 ]

下表列出此元件 2.1.4 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0 | 軟式 | 

------
#### [ 2.1.3 ]

下表列出此元件 2.1.3 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0 | 軟式 | 

------
#### [ 2.1.2 ]

下表列出此元件 2.1.2 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0 | 軟式 | 

------
#### [ 2.1.1 ]

下表列出此元件 2.1.1 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0 | 軟式 | 

------
#### [ 2.0.x ]

下表列出此元件 2.0.x 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | \$12.0.0 | 軟式 | 

------

## Configuration
<a name="dlr-image-classification-model-store-component-configuration"></a>

此元件沒有任何組態參數。

## 本機日誌檔案
<a name="dlr-image-classification-model-store-component-log-file"></a>

此元件不會輸出日誌。

## 變更記錄
<a name="dlr-image-classification-model-store-component-changelog"></a>

下表說明每個版本元件的變更。


|  **版本**  |  **變更**  | 
| --- | --- | 
|  2.1.13  | 針對 Greengrass 核 2.12.5 版更新版本。 | 
|  2.1.12  | 針對 Greengrass nucleus 2.12.0 版更新版本。 | 
|  2.1.11  | 針對 Greengrass nucleus 2.11.0 版更新版本。 | 
|  2.1.10  | 針對 Greengrass nucleus 2.10.0 版更新版本。 | 
|  2.1.9  | 針對 Greengrass nucleus 2.9.0 版更新版本。 | 
|  2.1.8  | 針對 Greengrass nucleus 2.8.0 版更新版本。 | 
|  2.1.7  |  針對 Greengrass nucleus 2.7.0 版更新版本。  | 
|  2.1.6  |  針對 Greengrass nucleus 2.6.0 版更新版本。  | 
|  2.1.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/dlr-image-classification-model-store-component.html)  | 
|  2.1.4  |  針對 Greengrass nucleus 2.4.0 版更新版本。  | 
|  2.1.3  |  針對 Greengrass nucleus 2.3.0 版更新版本。  | 
|  2.1.2  |  針對 Greengrass nucleus 2.2.0 版更新版本。  | 
|  2.1.1  |  <a name="changelog-dlr-image-classification-model-store-2.1.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/dlr-image-classification-model-store-component.html)  | 
|  2.0.4  |  初始版本。  | 

# DLR 物件偵測模型存放區
<a name="dlr-object-detection-model-store-component"></a>

DLR 物件偵測模型存放區是一種機器學習模型元件，其中包含預先訓練的 YOLOv3 模型做為 Greengrass 成品。此元件中使用的範例模型是從 [GluonCV 模型動物園](https://cv.gluon.ai/model_zoo/index.html)擷取，並使用 SageMaker AI Neo [深度學習執行期](https://github.com/neo-ai/neo-ai-dlr)編譯。

[DLR 物件偵測](dlr-object-detection-component.md)推論元件使用此元件做為模型來源的相依性。若要使用自訂訓練的 DLR 模型，[請建立此模型元件的自訂版本](ml-customization.md#override-public-model-store)，並將您的自訂模型包含為元件成品。您可以使用此元件的配方做為範本，來建立自訂模型元件。

**注意**  
DLR 物件偵測模型存放區元件的名稱因版本而異。2.1.x 版和更新版本的元件名稱為 。 `variant.DLR.ObjectDetection.ModelStore`2.0.x 版的元件名稱為 `variant.ObjectDetection.ModelStore`。

**Topics**
+ [版本](#dlr-object-detection-model-store-component-versions)
+ [類型](#dlr-object-detection-model-store-component-type)
+ [作業系統](#dlr-object-detection-model-store-component-os-support)
+ [要求](#dlr-object-detection-model-store-component-requirements)
+ [相依性](#dlr-object-detection-model-store-component-dependencies)
+ [Configuration](#dlr-object-detection-model-store-component-configuration)
+ [本機日誌檔案](#dlr-object-detection-model-store-component-log-file)
+ [變更記錄](#dlr-object-detection-model-store-component-changelog)

## 版本
<a name="dlr-object-detection-model-store-component-versions"></a>

此元件具有下列版本：
+ 2.1.x 
+ 2.0.x

## 類型
<a name="dlr-object-detection-model-store-component-type"></a>

<a name="public-component-type-generic"></a>此<a name="public-component-type-generic-phrase"></a>元件是一般元件 (`aws.greengrass.generic`)。[Greengrass 核](greengrass-nucleus-component.md)會執行元件的生命週期指令碼。

<a name="public-component-type-more-information"></a>如需詳細資訊，請參閱[元件類型](develop-greengrass-components.md#component-types)。

## 作業系統
<a name="dlr-object-detection-model-store-component-os-support"></a>

此元件可以安裝在執行下列作業系統的核心裝置上：
+ Linux
+ Windows

## 要求
<a name="dlr-object-detection-model-store-component-requirements"></a>

此元件有下列需求：<a name="ml-component-requirements"></a>
+ 在執行 Amazon Linux 2 或 Ubuntu 18.04 的 Greengrass 核心裝置上，[GNU C Library](https://www.gnu.org/software/libc/) (glibc) 2.27 版或更新版本安裝在裝置上。
+ 在 Armv7l 裝置上，例如 Raspberry Pi，安裝在裝置上的 OpenCV-Python 相依性。執行下列命令來安裝相依性。

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ 執行 Raspberry Pi OS Bullseye 的 Raspberry Pi 裝置必須符合下列要求：
  + 裝置上已安裝 NumPy 1.22.4 或更新版本。Raspberry Pi OS Bullseye 包含舊版的 NumPy，因此您可以執行下列命令以在裝置上升級 NumPy。

    ```
    pip3 install --upgrade numpy
    ```
  + 裝置上啟用的舊版攝影機堆疊。Raspberry Pi OS Bullseye 包含預設啟用且不相容的新攝影機堆疊，因此您必須啟用舊版攝影機堆疊。<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**啟用舊版攝影機堆疊**

    1. 執行下列命令以開啟 Raspberry Pi 組態工具。

       ```
       sudo raspi-config
       ```

    1. 選取**界面選項**。

    1. 選取**舊版攝影機**以啟用舊版攝影機堆疊。

    1. 重新啟動 Raspberry Pi。

## 相依性
<a name="dlr-object-detection-model-store-component-dependencies"></a>

當您部署元件時， AWS IoT Greengrass 也會部署其相依性的相容版本。這表示您必須符合元件及其所有相依性的要求，才能成功部署元件。本節列出此元件[發行版本的](#dlr-object-detection-model-store-component-changelog)相依性，以及為每個相依性定義元件版本的語意版本限制。您也可以在 [AWS IoT Greengrass 主控台](https://console.aws.amazon.com//greengrass)中檢視每個版本元件的相依性。在元件詳細資訊頁面上，尋找**相依性**清單。

------
#### [ 2.1.13 and 2.1.14 ]

下表列出此元件 2.1.13 和 2.1.14 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.13.0 | 軟式 | 

------
#### [ 2.1.12 ]

下表列出此元件 2.1.12 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.12.0 | 軟式 | 

------
#### [ 2.1.11 ]

下表列出此元件 2.1.11 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.11.0 | 軟式 | 

------
#### [ 2.1.10 ]

下表列出此元件 2.1.10 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.10.0 | 軟式 | 

------
#### [ 2.1.9 ]

下表列出此元件 2.1.9 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.9.0 | 軟式 | 

------
#### [ 2.1.8 ]

下表列出此元件 2.1.8 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0 | 軟式 | 

------
#### [ 2.1.7 ]

下表列出此元件 2.1.7 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0 | 軟式 | 

------
#### [ 2.1.5 and 2.1.6 ]

下表列出此元件 2.1.5 和 2.1.6 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0 | 軟式 | 

------
#### [ 2.1.4 ]

下表列出此元件 2.1.4 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0 | 軟式 | 

------
#### [ 2.1.3 ]

下表列出此元件 2.1.3 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0 | 軟式 | 

------
#### [ 2.1.2 ]

下表列出此元件 2.1.2 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0 | 軟式 | 

------
#### [ 2.1.1 ]

下表列出此元件 2.1.1 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0 | 軟式 | 

------
#### [ 2.0.x ]

下表列出此元件 2.0.x 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | \$12.0.0 | 軟式 | 

------

## Configuration
<a name="dlr-object-detection-model-store-component-configuration"></a>

此元件沒有任何組態參數。

## 本機日誌檔案
<a name="dlr-object-detection-model-store-component-log-file"></a>

此元件不會輸出日誌。

## 變更記錄
<a name="dlr-object-detection-model-store-component-changelog"></a>

下表說明每個版本元件的變更。


|  **版本**  |  **變更**  | 
| --- | --- | 
|  2.1.14  |  針對 Greengrass nucleus 2.12.5 版本更新版本。  | 
|  2.1.13  | 針對 Greengrass nucleus 2.12.0 版更新版本。 | 
|  2.1.12  | 針對 Greengrass nucleus 2.11.0 版更新版本。 | 
|  2.1.11  | 針對 Greengrass nucleus 2.10.0 版更新版本。 | 
|  2.1.10  | 針對 Greengrass nucleus 2.9.0 版更新版本。 | 
|  2.1.9  | 針對 Greengrass nucleus 2.8.0 版更新版本。 | 
|  2.1.8  |  針對 Greengrass nucleus 2.7.0 版更新版本。  | 
|  2.1.7  |  針對 Greengrass nucleus 2.6.0 版更新版本。  | 
|  2.1.6  |  新增 CPU 模型以修正 Armv8 (AArch64) 裝置的問題。  | 
|  2.1.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/dlr-object-detection-model-store-component.html)  | 
|  2.1.4  |  針對 Greengrass nucleus 2.4.0 版更新版本。  | 
|  2.1.3  |  針對 Greengrass nucleus 2.3.0 版更新版本。  | 
|  2.1.2  |  針對 Greengrass nucleus 2.2.0 版更新版本。  | 
|  2.1.1  |  <a name="changelog-dlr-object-detection-model-store-2.1.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/dlr-object-detection-model-store-component.html) | 
|  2.0.4  |  初始版本。  | 

# DLR 執行時間
<a name="dlr-component"></a>

DLR 執行期元件 (`variant.DLR`) 包含指令碼，可在裝置上的虛擬環境中安裝[深度學習執行期](https://github.com/neo-ai/neo-ai-dlr) (DLR) 及其相依性。[DLR 影像分類](dlr-image-classification-component.md) 和 [DLR 物件偵測](dlr-object-detection-component.md)元件使用此元件做為安裝 DLR 的相依性。元件版本 1.6.x 安裝 DLR v1.6.0，元件版本 1.3.x 安裝 DLR v1.3.0。

若要使用不同的執行時間，您可以使用此元件的配方做為範本來[建立自訂機器學習元件](ml-customization.md)。

**Topics**
+ [版本](#dlr-component-versions)
+ [類型](#dlr-component-type)
+ [作業系統](#dlr-component-os-support)
+ [要求](#dlr-component-requirements)
+ [相依性](#dlr-component-dependencies)
+ [Configuration](#dlr-component-configuration)
+ [用途](#dlr-component-usage)
+ [本機日誌檔案](#dlr-component-log-file)
+ [變更記錄](#dlr-component-changelog)

## 版本
<a name="dlr-component-versions"></a>

此元件具有下列版本：
+ 1.6.x
+ 1.3.x

## 類型
<a name="dlr-component-type"></a>

<a name="public-component-type-generic"></a>此<a name="public-component-type-generic-phrase"></a>元件是一般元件 (`aws.greengrass.generic`)。[Greengrass 核](greengrass-nucleus-component.md)會執行元件的生命週期指令碼。

<a name="public-component-type-more-information"></a>如需詳細資訊，請參閱[元件類型](develop-greengrass-components.md#component-types)。

## 作業系統
<a name="dlr-component-os-support"></a>

此元件可以安裝在執行下列作業系統的核心裝置上：
+ Linux
+ Windows

## 要求
<a name="dlr-component-requirements"></a>

此元件有下列需求：<a name="ml-component-requirements"></a>
+ 在執行 Amazon Linux 2 或 Ubuntu 18.04 的 Greengrass 核心裝置上，[GNU C Library](https://www.gnu.org/software/libc/) (glibc) 2.27 版或更新版本安裝在裝置上。
+ 在 Armv7l 裝置上，例如 Raspberry Pi，安裝在裝置上的 OpenCV-Python 相依性。執行下列命令來安裝相依性。

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ 執行 Raspberry Pi OS Bullseye 的 Raspberry Pi 裝置必須符合下列要求：
  + 裝置上已安裝 NumPy 1.22.4 或更新版本。Raspberry Pi OS Bullseye 包含舊版的 NumPy，因此您可以執行下列命令以在裝置上升級 NumPy。

    ```
    pip3 install --upgrade numpy
    ```
  + 在裝置上啟用的舊版攝影機堆疊。Raspberry Pi OS Bullseye 包含預設啟用且不相容的新攝影機堆疊，因此您必須啟用舊版攝影機堆疊。<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**啟用舊版攝影機堆疊**

    1. 執行下列命令以開啟 Raspberry Pi 組態工具。

       ```
       sudo raspi-config
       ```

    1. 選取**界面選項**。

    1. 選取**舊版攝影機**以啟用舊版攝影機堆疊。

    1. 重新啟動 Raspberry Pi。

### 端點和連接埠
<a name="dlr-component-endpoints"></a>

根據預設，此元件會使用安裝程式指令碼，根據核心裝置使用的平台，使用 `apt`、`brew`、 `yum`和 `pip`命令來安裝套件。此元件必須能夠對各種套件索引和儲存庫執行傳出請求，才能執行安裝程式指令碼。若要允許此元件透過代理或防火牆的傳出流量，您必須識別核心裝置連線安裝之套件索引和儲存庫的端點。

當您識別此元件安裝指令碼所需的端點時，請考慮下列事項：
+ 端點取決於核心裝置的平台。例如，執行 Ubuntu 的核心裝置會使用 `apt`而非 `yum`或 `brew`。此外，使用相同套件索引的裝置可能會有不同的來源清單，因此可能會從不同的儲存庫擷取套件。
+ 使用相同套件索引的多個裝置之間的端點可能不同，因為每個裝置都有自己的來源清單，可定義擷取套件的位置。
+ 端點可能會隨著時間而變更。每個套件索引都會提供您下載套件之儲存庫URLs，而套件的擁有者可以變更套件索引提供的 URLs。

如需此元件安裝的相依性，以及如何停用安裝程式指令碼的詳細資訊，請參閱 [UseInstaller](#dlr-component-config-useinstaller-term) 組態參數。

如需基本操作所需的端點和連接埠的詳細資訊，請參閱[允許透過代理或防火牆的裝置流量](allow-device-traffic.md)。

## 相依性
<a name="dlr-component-dependencies"></a>

當您部署元件時， AWS IoT Greengrass 也會部署其相依性的相容版本。這表示您必須符合元件及其所有相依性的要求，才能成功部署元件。本節列出此元件[發行版本的](#dlr-component-changelog)相依性，以及為每個相依性定義元件版本的語意版本限制。您也可以在 [AWS IoT Greengrass 主控台](https://console.aws.amazon.com//greengrass)中檢視每個版本元件的相依性。在元件詳細資訊頁面上，尋找**相依性**清單。

------
#### [ 1.6.11 - 1.6.16 ]

下表列出此元件 1.6.11 至 1.6.16 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <3.0.0 | 軟式 | 

------
#### [ 1.6.10 ]

下表列出此元件 1.6.10 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.9.0 | 軟式 | 

------
#### [ 1.6.9 ]

下表列出此元件 1.6.9 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0 | 軟式 | 

------
#### [ 1.6.8 ]

下表列出此元件 1.6.8 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0 | 軟式 | 

------
#### [ 1.6.6 and 1.6.7 ]

下表列出此元件 1.6.6 和 1.6.7 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0 | 軟式 | 

------
#### [ 1.6.4 and 1.6.5 ]

下表列出此元件 1.6.4 和 1.6.5 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0 | 軟式 | 

------
#### [ 1.6.3 ]

下表列出此元件 1.6.3 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0 | 軟式 | 

------
#### [ 1.6.2 ]

下表列出此元件 1.6.2 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0 | 軟式 | 

------
#### [ 1.6.1 ]

下表列出此元件 1.6.1 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0 | 軟式 | 

------
#### [ 1.3.x ]

下表列出此元件 1.3.x 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | \$12.0.0 | 軟式 | 

------

如需元件相依性的詳細資訊，請參閱[元件配方參考](component-recipe-reference.md#recipe-reference-component-dependencies)。

## Configuration
<a name="dlr-component-configuration"></a>

此元件提供下列組態參數，您可以在部署元件時自訂這些參數。

`MLRootPath`  
<a name="ml-config-mlrootpath-desc"></a>（選用） Linux 核心裝置上的資料夾路徑，其中推論元件會讀取映像和寫入推論結果。您可以將此值修改為裝置上執行此元件的使用者具有讀取/寫入存取權的任何位置。  
<a name="ml-config-mlrootpath-default-dlr"></a>預設：`/greengrass/v2/work/variant.DLR/greengrass_ml`

`WindowsMLRootPath`  
此功能適用於此元件的 v1.6.6 和更新版本。  
<a name="ml-config-windowsmlrootpath-desc"></a>（選用） Windows 核心裝置上的資料夾路徑，其中推論元件會讀取映像和寫入推論結果。您可以將此值修改為裝置上執行此元件的使用者具有讀取/寫入存取權的任何位置。  
<a name="ml-config-windowsmlrootpath-default-dlr"></a>預設：`C:\greengrass\v2\\work\\variant.DLR\\greengrass_ml`

  `UseInstaller`   
<a name="ml-config-useinstaller-desc-dlr"></a>（選用） 字串值，定義是否使用此元件中的安裝程式指令碼來安裝 DLR 及其相依性。支援的值為 `true` 和 `false`。  <a name="ml-config-useinstaller-libraries-dlr"></a>

`false` 如果您想要使用自訂指令碼進行 DLR 安裝，或想要在預先建置的 Linux 映像中包含執行時間相依性，請將此值設定為 。若要將此元件與 AWS提供的 DLR 推論元件搭配使用，請安裝下列程式庫，包括任何相依性，並將其提供給`ggc_user`執行 ML 元件的系統使用者，例如 。
+ [Python](https://www.python.org/downloads/) 3.7 或更新版本，包括`pip`適用於您 Python 版本的 。
+ [深度學習執行期](https://github.com/neo-ai/neo-ai-dlr) v1.6.0
+ [NumPy](https://numpy.org/install/)。
+ [OpenCV-Python](https://pypi.org/project/opencv-python/)。
+ 適用於 [AWS IoT Device SDK Python 的 v2](https://github.com/aws/aws-iot-device-sdk-python-v2)。
+ [AWS 一般執行期 (CRT) Python](https://github.com/awslabs/aws-crt-python)。
+ [Picamera](https://picamera.readthedocs.io/en/release-1.13/) （僅適用於 Raspberry Pi 裝置）。
+ [`awscam` 模組](https://docs.aws.amazon.com/deeplens/latest/dg/deeplens-library-awscam-module.html) （適用於 AWS DeepLens 裝置）。
+ libGL （適用於 Linux 裝置）
<a name="ml-config-useinstaller-default"></a>預設：`true`

## 用途
<a name="dlr-component-usage"></a>

使用此元件，並將`UseInstaller`組態參數設為 `true`，以在您的裝置上安裝 DLR 及其相依性。元件會在您的裝置上設定虛擬環境，其中包含 DLR 所需的 OpenCV 和 NumPy 程式庫。

**注意**  <a name="ml-installer-component-usage-note"></a>
此元件中的安裝程式指令碼也會安裝最新版本的其他系統程式庫，這些程式庫是在您的裝置上設定虛擬環境並使用已安裝的機器學習架構所必需。這可能會升級裝置上的現有系統程式庫。檢閱下表，以取得此元件為每個支援的作業系統安裝的程式庫清單。如果您想要自訂此安裝程序，請將`UseInstaller`組態參數設定為 `false`，並開發您自己的安裝程式指令碼。


| 平台 | 裝置系統上安裝的程式庫 | 安裝在虛擬環境中的程式庫 | 
| --- | --- | --- | 
| Armv7l | build-essential, cmake, ca-certificates, git | setuptools, wheel | 
| Amazon Linux 2 | mesa-libGL | 無 | 
| Ubuntu | wget | 無 | 

當您部署推論元件時，此執行期元件會先驗證您的裝置是否已安裝 DLR 及其相依性，如果沒有，則會為您安裝它們。

## 本機日誌檔案
<a name="dlr-component-log-file"></a>

此元件使用以下日誌檔案。

------
#### [ Linux ]

```
/greengrass/v2/logs/variant.DLR.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\variant.DLR.log
```

------

**檢視此元件的日誌**
+ 在核心裝置上執行下列命令，以即時檢視此元件的日誌檔案。將 `/greengrass/v2`或 *C：\$1greengrass\$1v2* 取代為 AWS IoT Greengrass 根資料夾的路徑。

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/variant.DLR.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\variant.DLR.log -Tail 10 -Wait
  ```

------

## 變更記錄
<a name="dlr-component-changelog"></a>

下表說明每個版本元件的變更。


|  **版本**  |  **變更**  | 
| --- | --- | 
|  1.6.16  |  針對 Greengrass 核更新版本 2.12.5。  | 
|  1.6.12  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/dlr-component.html)  | 
|  1.6.11  | 針對 Greengrass nucleus 2.9.0 版更新版本。 | 
|  1.6.10  | 針對 Greengrass nucleus 2.8.0 版更新版本。 | 
|  1.6.9  |  針對 Greengrass nucleus 2.7.0 版更新版本。  | 
|  1.6.8  |  針對 Greengrass nucleus 2.6.0 版更新版本。  | 
|  1.6.7  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/dlr-component.html)  | 
|  1.6.6  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/dlr-component.html)  | 
|  1.6.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/dlr-component.html)  | 
|  1.6.4  |  針對 Greengrass nucleus 2.4.0 版更新版本。  | 
|  1.6.3  |  針對 Greengrass nucleus 2.3.0 版更新版本。  | 
|  1.6.2  |  針對 Greengrass nucleus 2.2.0 版更新版本。  | 
|  1.6.1  |  <a name="changelog-dlr-1.6.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/dlr-component.html)  | 
|  1.3.2  |  初始版本。安裝 DLR v1.3.0。  | 

# TensorFlow Lite 影像分類
<a name="tensorflow-lite-image-classification-component"></a>

TensorFlow Lite 影像分類元件 (`aws.greengrass.TensorFlowLiteImageClassification`) 包含使用 [TensorFlow Lite](https://www.tensorflow.org/lite/guide/python) 執行時間執行影像分類推論的範例推論程式碼，以及預先訓練的範例 MobileNet 1.0 量化模型。此元件使用 變體[TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md)和 [TensorFlow Lite 執行時間](tensorflow-lite-component.md)元件做為相依性，以下載 TensorFlow Lite 執行時間和範例模型。

若要搭配自訂訓練的 TensorFlow Lite 模型使用此推論元件，[請建立相依模型存放區元件的自訂版本](ml-customization.md#override-public-model-store)。若要使用您自己的自訂推論程式碼，您可以使用此元件的配方做為範本來[建立自訂推論元件](ml-customization.md#create-inference-component)。

**Topics**
+ [版本](#tensorflow-lite-image-classification-component-versions)
+ [類型](#tensorflow-lite-image-classification-component-type)
+ [作業系統](#tensorflow-lite-image-classification-component-os-support)
+ [要求](#tensorflow-lite-image-classification-component-requirements)
+ [相依性](#tensorflow-lite-image-classification-component-dependencies)
+ [Configuration](#tensorflow-lite-image-classification-component-configuration)
+ [本機日誌檔案](#tensorflow-lite-image-classification-component-log-file)
+ [變更記錄](#tensorflow-lite-image-classification-component-changelog)

## 版本
<a name="tensorflow-lite-image-classification-component-versions"></a>

此元件具有下列版本：
+ 2.1.x

## 類型
<a name="tensorflow-lite-image-classification-component-type"></a>

<a name="public-component-type-generic"></a>此<a name="public-component-type-generic-phrase"></a>元件是一般元件 (`aws.greengrass.generic`)。[Greengrass 核](greengrass-nucleus-component.md)會執行元件的生命週期指令碼。

<a name="public-component-type-more-information"></a>如需詳細資訊，請參閱[元件類型](develop-greengrass-components.md#component-types)。

## 作業系統
<a name="tensorflow-lite-image-classification-component-os-support"></a>

此元件可以安裝在執行下列作業系統的核心裝置上：
+ Linux
+ Windows

## 要求
<a name="tensorflow-lite-image-classification-component-requirements"></a>

此元件有下列需求：<a name="ml-component-requirements"></a>
+ 在執行 Amazon Linux 2 或 Ubuntu 18.04 的 Greengrass 核心裝置上，[GNU C Library](https://www.gnu.org/software/libc/) (glibc) 2.27 版或更新版本安裝在裝置上。
+ 在 Armv7l 裝置上，例如 Raspberry Pi，安裝在裝置上的 OpenCV-Python 相依性。執行下列命令來安裝相依性。

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ 執行 Raspberry Pi OS Bullseye 的 Raspberry Pi 裝置必須符合下列要求：
  + 裝置上已安裝 NumPy 1.22.4 或更新版本。Raspberry Pi OS Bullseye 包含舊版的 NumPy，因此您可以執行下列命令以在裝置上升級 NumPy。

    ```
    pip3 install --upgrade numpy
    ```
  + 裝置上啟用的舊版攝影機堆疊。Raspberry Pi OS Bullseye 包含預設啟用且不相容的新攝影機堆疊，因此您必須啟用舊版攝影機堆疊。<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**啟用舊版攝影機堆疊**

    1. 執行下列命令以開啟 Raspberry Pi 組態工具。

       ```
       sudo raspi-config
       ```

    1. 選取**界面選項**。

    1. 選取**舊版攝影機**以啟用舊版攝影機堆疊。

    1. 重新啟動 Raspberry Pi。

## 相依性
<a name="tensorflow-lite-image-classification-component-dependencies"></a>

當您部署元件時， AWS IoT Greengrass 也會部署其相依性的相容版本。這表示您必須符合元件及其所有相依性的要求，才能成功部署元件。本節列出此元件[發行版本的](#tensorflow-lite-image-classification-component-changelog)相依性，以及為每個相依性定義元件版本的語意版本限制。您也可以在 [AWS IoT Greengrass 主控台](https://console.aws.amazon.com//greengrass)中檢視每個版本元件的相依性。在元件詳細資訊頁面上，尋找**相依性**清單。

------
#### [ 2.1.11 and 2.1.12 ]

下表列出此元件 2.1.11 版和 2.1.12 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.13.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------
#### [ 2.1.10 ]

下表列出此元件 2.1.10 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.12.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------
#### [ 2.1.9 ]

下表列出此元件 2.1.9 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.11.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------
#### [ 2.1.8 ]

下表列出此元件 2.1.8 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.10.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------
#### [ 2.1.7 ]

下表列出此元件 2.1.7 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.9.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------
#### [ 2.1.6 ]

下表列出此元件 2.1.6 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------
#### [ 2.1.5 ]

下表列出此元件 2.1.5 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------
#### [ 2.1.4 ]

下表列出此元件 2.1.4 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------
#### [ 2.1.3 ]

下表列出此元件 2.1.3 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------
#### [ 2.1.2 ]

下表列出此元件 2.1.2 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------
#### [ 2.1.1 ]

下表列出此元件 2.1.1 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------
#### [ 2.1.0 ]

下表列出此元件 2.1.0 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------

## Configuration
<a name="tensorflow-lite-image-classification-component-configuration"></a>

此元件提供下列組態參數，您可以在部署元件時自訂這些參數。

`accessControl`  
<a name="ml-config-accesscontrol-desc"></a>（選用） 包含[授權政策](interprocess-communication.md#ipc-authorization-policies)的物件，允許元件將訊息發佈至預設通知主題。  
預設：  

```
{
   "aws.greengrass.ipc.mqttproxy": {
      "aws.greengrass.TensorFlowLiteImageClassification:mqttproxy:1": {
         "policyDescription": "Allows access to publish via topic ml/tflite/image-classification.",
         "operations": [
            "aws.greengrass#PublishToIoTCore"
         ],
         "resources": [
            "ml/tflite/image-classification"
         ]
      }
   }
}
```

`PublishResultsOnTopic`  
<a name="ml-config-publishresultsontopic-desc"></a>（選用） 您要發佈推論結果的主題。如果您修改此值，則也必須修改 `accessControl` 參數`resources`中的 值，以符合您的自訂主題名稱。  
預設：`ml/tflite/image-classification`

`Accelerator`  <a name="ml-config-accelerator"></a>
您要使用的加速器。支援的值為 `cpu` 和 `gpu`。  
相依模型元件中的範例模型僅支援 CPU 加速。若要搭配不同的自訂模型使用 GPU 加速，[請建立自訂模型元件](ml-customization.md#override-public-model-store)以覆寫公有模型元件。  
預設：`cpu`

`ImageDirectory`  
<a name="ml-config-imagedirectory-desc"></a>（選用） 推論元件讀取映像之裝置上的資料夾路徑。您可以將此值修改為您裝置上具有讀取/寫入存取權的任何位置。  
<a name="ml-config-imagedirectory-img-default"></a>預設：`/greengrass/v2/packages/artifacts-unarchived/component-name/image_classification/sample_images/`  
如果您將 的值設定為 `UseCamera` `true`，則會忽略此組態參數。

`ImageName`  
<a name="ml-config-imagename-desc"></a>（選用） 推論元件用來輸入進行預測的影像名稱。元件會在 中指定的資料夾中尋找映像`ImageDirectory`。根據預設，元件會使用預設映像目錄中的範例映像。 AWS IoT Greengrass 支援下列映像格式：`jpeg`、`png`、 `jpg`和 `npy`。  
<a name="ml-config-imagename-img-default"></a>預設：`cat.jpeg`  
如果您將 的值設定為 `UseCamera` `true`，則會忽略此組態參數。

`InferenceInterval`  <a name="ml-config-inferenceinterval"></a>
（選用） 推論程式碼所做的每個預測之間的秒數。範例推論程式碼會無限期執行，並在指定的時間間隔重複其預測。例如，如果您想要使用攝影機拍攝的影像進行即時預測，您可以將此值變更為較短的間隔。  
預設：`3600`

`ModelResourceKey`  <a name="ml-config-modelresourcekey"></a>
<a name="ml-config-modelresourcekey-desc"></a>（選用） 用於相依公有模型元件的模型。只有在您使用自訂元件覆寫公有模型元件時，才修改此參數。  
預設：  

```
{
    "model": "TensorFlowLite-Mobilenet"
}
```

`UseCamera`  <a name="ml-config-usecamera"></a>
（選用） 字串值，定義是否使用連接至 Greengrass 核心裝置的攝影機的影像。支援的值為 `true` 和 `false`。  
當您將此值設定為 時`true`，範例推論程式碼會存取裝置上的攝影機，並在擷取的影像上本機執行推論。會忽略 `ImageName`和 `ImageDirectory` 參數的值。請確定執行此元件的使用者具有攝影機存放擷取影像之位置的讀取/寫入存取權。  
預設：`false`  
當您檢視此元件的配方時，`UseCamera`組態參數不會出現在預設組態中。不過，您可以在部署元件時修改[組態合併更新](update-component-configurations.md)中此參數的值。  
將 `UseCamera`設定為 時`true`，您還必須建立符號連結，讓推論元件從執行期元件建立的虛擬環境中存取您的攝影機。如需搭配範例推論元件使用攝影機的詳細資訊，請參閱 [更新元件組態](ml-tutorial-image-classification-camera.md)。

## 本機日誌檔案
<a name="tensorflow-lite-image-classification-component-log-file"></a>

此元件使用以下日誌檔案。

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.greengrass.TensorFlowLiteImageClassification.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.greengrass.TensorFlowLiteImageClassification.log
```

------

**檢視此元件的日誌**
+ 在核心裝置上執行下列命令，以即時檢視此元件的日誌檔案。將 `/greengrass/v2`或 *C：\$1greengrass\$1v2* 取代為 AWS IoT Greengrass 根資料夾的路徑。

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/aws.greengrass.TensorFlowLiteImageClassification.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.greengrass.TensorFlowLiteImageClassification.log -Tail 10 -Wait
  ```

------

## 變更記錄
<a name="tensorflow-lite-image-classification-component-changelog"></a>

下表說明每個版本元件的變更。


|  版本  |  變更  | 
| --- | --- | 
|  2.1.12  |  針對 Greengrass 核 2.12.5 版更新版本。  | 
|  2.1.11  | 針對 Greengrass nucleus 2.12.0 版更新版本。 | 
|  2.1.10  | 針對 Greengrass nucleus 2.11.0 版更新版本。 | 
|  2.1.9  | 針對 Greengrass nucleus 2.10.0 版更新版本。 | 
|  2.1.8  | 針對 Greengrass nucleus 2.9.0 版更新版本。 | 
|  2.1.7  | 針對 Greengrass nucleus 2.8.0 版更新版本。 | 
|  2.1.6  |  針對 Greengrass nucleus 2.7.0 版更新版本。  | 
|  2.1.5  |  針對 Greengrass nucleus 2.6.0 版更新版本。  | 
|  2.1.4  |  針對 Greengrass nucleus 2.5.0 版更新版本。  | 
|  2.1.3  |  針對 Greengrass nucleus 2.4.0 版更新版本。  | 
|  2.1.2  |  針對 Greengrass nucleus 2.3.0 版更新版本。  | 
|  2.1.1  |  針對 Greengrass nucleus 2.2.0 版更新版本。  | 
|  2.1.0  |  初始版本。  | 

# TensorFlow Lite 物件偵測
<a name="tensorflow-lite-object-detection-component"></a>

TensorFlow Lite 物件偵測元件 (`aws.greengrass.TensorFlowLiteObjectDetection`) 包含使用 [TensorFlow Lite](https://www.tensorflow.org/lite/guide/python) 執行物件偵測推論的範例推論程式碼，以及預先訓練的範例單一鏡頭偵測 (SSD) MobileNet 1.0 模型。此元件使用 變體[TensorFlow Lite 物件偵測模型存放區](tensorflow-lite-object-detection-model-store-component.md)和 [TensorFlow Lite 執行時間](tensorflow-lite-component.md)元件做為相依項，以下載 TensorFlow Lite 和範例模型。

若要搭配自訂訓練的 TensorFlow Lite 模型使用此推論元件，您可以[建立相依模型存放區元件的自訂版本](ml-customization.md#override-public-model-store)。若要使用您自己的自訂推論程式碼，請使用此元件的配方做為範本來[建立自訂推論元件](ml-customization.md#create-inference-component)。

**Topics**
+ [版本](#tensorflow-lite-object-detection-component-versions)
+ [類型](#tensorflow-lite-object-detection-component-type)
+ [作業系統](#tensorflow-lite-object-detection-component-os-support)
+ [要求](#tensorflow-lite-object-detection-component-requirements)
+ [相依性](#tensorflow-lite-object-detection-component-dependencies)
+ [Configuration](#tensorflow-lite-object-detection-component-configuration)
+ [本機日誌檔案](#tensorflow-lite-object-detection-component-log-file)
+ [變更記錄](#tensorflow-lite-object-detection-component-changelog)

## 版本
<a name="tensorflow-lite-object-detection-component-versions"></a>

此元件具有下列版本：
+ 2.1.x

## 類型
<a name="tensorflow-lite-object-detection-component-type"></a>

<a name="public-component-type-generic"></a>此<a name="public-component-type-generic-phrase"></a>元件是一般元件 (`aws.greengrass.generic`)。[Greengrass 核](greengrass-nucleus-component.md)會執行元件的生命週期指令碼。

<a name="public-component-type-more-information"></a>如需詳細資訊，請參閱[元件類型](develop-greengrass-components.md#component-types)。

## 作業系統
<a name="tensorflow-lite-object-detection-component-os-support"></a>

此元件可以安裝在執行下列作業系統的核心裝置上：
+ Linux
+ Windows

## 要求
<a name="tensorflow-lite-object-detection-component-requirements"></a>

此元件有下列需求：<a name="ml-component-requirements"></a>
+ 在執行 Amazon Linux 2 或 Ubuntu 18.04 的 Greengrass 核心裝置上，[GNU C Library](https://www.gnu.org/software/libc/) (glibc) 2.27 版或更新版本安裝在裝置上。
+ 在 Armv7l 裝置上，例如 Raspberry Pi，安裝在裝置上的 OpenCV-Python 相依性。執行下列命令來安裝相依性。

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ 執行 Raspberry Pi OS Bullseye 的 Raspberry Pi 裝置必須符合下列要求：
  + 裝置上已安裝 NumPy 1.22.4 或更新版本。Raspberry Pi OS Bullseye 包含舊版的 NumPy，因此您可以執行下列命令以在裝置上升級 NumPy。

    ```
    pip3 install --upgrade numpy
    ```
  + 裝置上啟用的舊版攝影機堆疊。Raspberry Pi OS Bullseye 包含預設啟用且不相容的新攝影機堆疊，因此您必須啟用舊版攝影機堆疊。<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**啟用舊版攝影機堆疊**

    1. 執行下列命令以開啟 Raspberry Pi 組態工具。

       ```
       sudo raspi-config
       ```

    1. 選取**界面選項**。

    1. 選取**舊版攝影機**以啟用舊版攝影機堆疊。

    1. 重新啟動 Raspberry Pi。

## 相依性
<a name="tensorflow-lite-object-detection-component-dependencies"></a>

當您部署元件時， AWS IoT Greengrass 也會部署其相依性的相容版本。這表示您必須符合元件及其所有相依性的要求，才能成功部署元件。本節列出此元件[發行版本的](#tensorflow-lite-object-detection-component-changelog)相依性，以及為每個相依性定義元件版本的語意版本限制。您也可以在 [AWS IoT Greengrass 主控台](https://console.aws.amazon.com//greengrass)中檢視每個版本元件的相依性。在元件詳細資訊頁面上，尋找**相依性**清單。

------
#### [ 2.1.11 and 2.1.12 ]

下表列出此元件 2.1.11 版和 2.1.12 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.13.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------
#### [ 2.1.10 ]

下表列出此元件 2.1.10 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.12.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------
#### [ 2.1.9 ]

下表列出此元件 2.1.9 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.11.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------
#### [ 2.1.8 ]

下表列出此元件 2.1.8 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.10.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------
#### [ 2.1.7 ]

下表列出此元件 2.1.7 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.9.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------
#### [ 2.1.6 ]

下表列出此元件 2.1.6 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------
#### [ 2.1.5 ]

下表列出此元件 2.1.5 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------
#### [ 2.1.4 ]

下表列出此元件 2.1.4 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------
#### [ 2.1.3 ]

下表列出此元件 2.1.3 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------
#### [ 2.1.2 ]

下表列出此元件 2.1.2 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------
#### [ 2.1.1 ]

下表列出此元件 2.1.1 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------
#### [ 2.1.0 ]

下表列出此元件 2.1.0 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0 | 軟式 | 
| [TensorFlow Lite 影像分類模型存放區](tensorflow-lite-image-classification-model-store-component.md) | >=2.1.0 <2.2.0 | 硬式 | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2.5.0 <2.6.0 | 硬式 | 

------

## Configuration
<a name="tensorflow-lite-object-detection-component-configuration"></a>

此元件提供下列組態參數，您可以在部署元件時自訂這些參數。

`accessControl`  
<a name="ml-config-accesscontrol-desc"></a>（選用） 包含[授權政策](interprocess-communication.md#ipc-authorization-policies)的物件，允許元件將訊息發佈至預設通知主題。  
預設：  

```
{
   "aws.greengrass.ipc.mqttproxy": {
      "aws.greengrass.TensorFlowLiteObjectDetection:mqttproxy:1": {
         "policyDescription": "Allows access to publish via topic ml/tflite/object-detection.",
         "operations": [
            "aws.greengrass#PublishToIoTCore"
         ],
         "resources": [
            "ml/tflite/object-detection"
         ]
      }
   }
}
```

`PublishResultsOnTopic`  
<a name="ml-config-publishresultsontopic-desc"></a>（選用） 您要發佈推論結果的主題。如果您修改此值，則也必須修改 `accessControl` 參數`resources`中的 值，以符合您的自訂主題名稱。  
預設：`ml/tflite/object-detection`

`Accelerator`  <a name="ml-config-accelerator"></a>
您要使用的加速器。支援的值為 `cpu` 和 `gpu`。  
相依模型元件中的範例模型僅支援 CPU 加速。若要搭配不同的自訂模型使用 GPU 加速，[請建立自訂模型元件](ml-customization.md#override-public-model-store)以覆寫公有模型元件。  
預設：`cpu`

`ImageDirectory`  
<a name="ml-config-imagedirectory-desc"></a>（選用） 推論元件讀取映像之裝置上的資料夾路徑。您可以將此值修改為您裝置上具有讀取/寫入存取權的任何位置。  
<a name="ml-config-imagedirectory-obj-default"></a>預設：`/greengrass/v2/packages/artifacts-unarchived/component-name/object_detection/sample_images/`  
如果您將 的值設定為 `UseCamera` `true`，則會忽略此組態參數。

`ImageName`  
<a name="ml-config-imagename-desc"></a>（選用） 推論元件用來輸入進行預測的影像名稱。元件會在 中指定的資料夾中尋找映像`ImageDirectory`。根據預設，元件會使用預設映像目錄中的範例映像。 AWS IoT Greengrass 支援下列映像格式：`jpeg`、`png`、 `jpg`和 `npy`。  
<a name="ml-config-imagename-obj-default"></a>預設：`objects.jpg`  
如果您將 的值設定為 `UseCamera` `true`，則會忽略此組態參數。

`InferenceInterval`  <a name="ml-config-inferenceinterval"></a>
（選用） 推論程式碼所做的每個預測之間的秒數。範例推論程式碼會無限期執行，並在指定的時間間隔重複其預測。例如，如果您想要使用攝影機拍攝的影像進行即時預測，您可以將此值變更為較短的間隔。  
預設：`3600`

`ModelResourceKey`  <a name="ml-config-modelresourcekey"></a>
<a name="ml-config-modelresourcekey-desc"></a>（選用） 用於相依公有模型元件的模型。只有在您使用自訂元件覆寫公有模型元件時，才修改此參數。  
預設：  

```
{
    "model": "TensorFlowLite-SSD"
}
```

`UseCamera`  <a name="ml-config-usecamera"></a>
（選用） 字串值，定義是否使用連接至 Greengrass 核心裝置的攝影機的影像。支援的值為 `true` 和 `false`。  
當您將此值設定為 時`true`，範例推論程式碼會存取裝置上的攝影機，並在擷取的影像上本機執行推論。會忽略 `ImageName`和 `ImageDirectory` 參數的值。確定執行此元件的使用者具有攝影機存放擷取影像之位置的讀取/寫入存取權。  
預設：`false`  
當您檢視此元件的配方時，`UseCamera`組態參數不會出現在預設組態中。不過，您可以在部署元件時修改[組態合併更新](update-component-configurations.md)中此參數的值。  
將 `UseCamera`設定為 時`true`，您還必須建立符號連結，讓推論元件從執行期元件建立的虛擬環境中存取您的攝影機。如需搭配範例推論元件使用攝影機的詳細資訊，請參閱 [更新元件組態](ml-tutorial-image-classification-camera.md)。

**注意**  <a name="ml-config-not-visible-note"></a>
當您檢視此元件的配方時，`UseCamera`組態參數不會出現在預設組態中。不過，您可以在部署元件時修改[組態合併更新](update-component-configurations.md)中此參數的值。  
將 `UseCamera`設定為 時`true`，您還必須建立符號連結，讓推論元件從執行期元件建立的虛擬環境中存取您的攝影機。如需搭配範例推論元件使用攝影機的詳細資訊，請參閱 [更新元件組態](ml-tutorial-image-classification-camera.md)。

## 本機日誌檔案
<a name="tensorflow-lite-object-detection-component-log-file"></a>

此元件使用以下日誌檔案。

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.greengrass.TensorFlowLiteObjectDetection.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.greengrass.TensorFlowLiteObjectDetection.log
```

------

**檢視此元件的日誌**
+ 在核心裝置上執行下列命令，以即時檢視此元件的日誌檔案。將 `/greengrass/v2`或 *C：\$1greengrass\$1v2* 取代為 AWS IoT Greengrass 根資料夾的路徑。

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/aws.greengrass.TensorFlowLiteObjectDetection.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.greengrass.TensorFlowLiteObjectDetection.log -Tail 10 -Wait
  ```

------

## 變更記錄
<a name="tensorflow-lite-object-detection-component-changelog"></a>

下表說明每個版本元件的變更。


|  版本  |  變更  | 
| --- | --- | 
|  2.1.12  |  針對 Greengrass nucleus 2.12.5 版本更新版本。  | 
|  2.1.11  | 針對 Greengrass nucleus 2.12.0 版更新版本。 | 
|  2.1.10  | 針對 Greengrass nucleus 2.11.0 版更新版本。 | 
|  2.1.9  | 針對 Greengrass nucleus 2.10.0 版更新版本。 | 
|  2.1.8  | 針對 Greengrass nucleus 2.9.0 版更新版本。 | 
|  2.1.7  | 針對 Greengrass nucleus 2.8.0 版更新版本。 | 
|  2.1.6  |  針對 Greengrass nucleus 2.7.0 版更新版本。  | 
|  2.1.5  |  針對 Greengrass nucleus 2.6.0 版更新版本。  | 
|  2.1.4  |  針對 Greengrass nucleus 2.5.0 版更新版本。  | 
|  2.1.3  |  針對 Greengrass nucleus 2.4.0 版更新版本。  | 
|  2.1.2  |  針對 Greengrass nucleus 2.3.0 版更新版本。  | 
|  2.1.1  |  <a name="changelog-tensorflow-lite-object-detection-2.1.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/tensorflow-lite-object-detection-component.html)  | 
|  2.1.0  |  初始版本。  | 

# TensorFlow Lite 影像分類模型存放區
<a name="tensorflow-lite-image-classification-model-store-component"></a>

TensorFlow Lite 影像分類模型存放區 (`variant.TensorFlowLite.ImageClassification.ModelStore`) 是一種機器學習模型元件，其中包含預先訓練的 MobileNet v1 模型做為 Greengrass 成品。此元件中使用的範例模型是從 [TensorFlow Hub](https://tfhub.dev/) 擷取，並使用 [TensorFlow Lite](https://www.tensorflow.org/lite/guide/python) 實作。

[TensorFlow Lite 影像分類](tensorflow-lite-image-classification-component.md) 推論元件使用此元件做為模型來源的相依性。若要使用自訂訓練的 TensorFlow Lite 模型，[請建立此模型元件的自訂版本](ml-customization.md#override-public-model-store)，並將自訂模型包含為元件成品。您可以使用此元件的配方做為範本，來建立自訂模型元件。

**Topics**
+ [版本](#tensorflow-lite-image-classification-model-store-component-versions)
+ [類型](#tensorflow-lite-image-classification-model-store-component-type)
+ [作業系統](#tensorflow-lite-image-classification-model-store-component-os-support)
+ [要求](#tensorflow-lite-image-classification-model-store-component-requirements)
+ [相依性](#tensorflow-lite-image-classification-model-store-component-dependencies)
+ [Configuration](#tensorflow-lite-image-classification-model-store-component-configuration)
+ [本機日誌檔案](#tensorflow-lite-image-classification-model-store-component-log-file)
+ [變更記錄](#tensorflow-lite-image-classification-model-store-component-changelog)

## 版本
<a name="tensorflow-lite-image-classification-model-store-component-versions"></a>

此元件具有下列版本：
+ 2.1.x

## 類型
<a name="tensorflow-lite-image-classification-model-store-component-type"></a>

<a name="public-component-type-generic"></a>此<a name="public-component-type-generic-phrase"></a>元件是一般元件 (`aws.greengrass.generic`)。[Greengrass 核](greengrass-nucleus-component.md)會執行元件的生命週期指令碼。

<a name="public-component-type-more-information"></a>如需詳細資訊，請參閱[元件類型](develop-greengrass-components.md#component-types)。

## 作業系統
<a name="tensorflow-lite-image-classification-model-store-component-os-support"></a>

此元件可以安裝在執行下列作業系統的核心裝置上：
+ Linux
+ Windows

## 要求
<a name="tensorflow-lite-image-classification-model-store-component-requirements"></a>

此元件有下列需求：<a name="ml-component-requirements"></a>
+ 在執行 Amazon Linux 2 或 Ubuntu 18.04 的 Greengrass 核心裝置上，[GNU C Library](https://www.gnu.org/software/libc/) (glibc) 2.27 版或更新版本安裝在裝置上。
+ 在 Armv7l 裝置上，例如 Raspberry Pi，安裝在裝置上的 OpenCV-Python 相依性。執行下列命令來安裝相依性。

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ 執行 Raspberry Pi OS Bullseye 的 Raspberry Pi 裝置必須符合下列要求：
  + 裝置上已安裝 NumPy 1.22.4 或更新版本。Raspberry Pi OS Bullseye 包含舊版的 NumPy，因此您可以執行下列命令以在裝置上升級 NumPy。

    ```
    pip3 install --upgrade numpy
    ```
  + 裝置上啟用的舊版攝影機堆疊。Raspberry Pi OS Bullseye 包含預設啟用且不相容的新攝影機堆疊，因此您必須啟用舊版攝影機堆疊。<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**啟用舊版攝影機堆疊**

    1. 執行下列命令以開啟 Raspberry Pi 組態工具。

       ```
       sudo raspi-config
       ```

    1. 選取**界面選項**。

    1. 選取**舊版攝影機**以啟用舊版攝影機堆疊。

    1. 重新啟動 Raspberry Pi。

## 相依性
<a name="tensorflow-lite-image-classification-model-store-component-dependencies"></a>

當您部署元件時， AWS IoT Greengrass 也會部署其相依性的相容版本。這表示您必須符合元件及其所有相依性的要求，才能成功部署元件。本節列出此元件[發行版本的](#tensorflow-lite-image-classification-model-store-component-changelog)相依性，以及為每個相依性定義元件版本的語意版本限制。您也可以在 [AWS IoT Greengrass 主控台](https://console.aws.amazon.com//greengrass)中檢視每個版本元件的相依性。在元件詳細資訊頁面上，尋找**相依性**清單。

------
#### [ 2.1.11 and 2.1.12  ]

下表列出此元件 2.1.11 版和 2.1.12 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.13.0 | 軟式 | 

------
#### [ 2.1.10 ]

下表列出此元件 2.1.10 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.12.0 | 軟式 | 

------
#### [ 2.1.9 ]

下表列出此元件 2.1.9 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.11.0 | 軟式 | 

------
#### [ 2.1.8 ]

下表列出此元件 2.1.8 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.10.0 | 軟式 | 

------
#### [ 2.1.7 ]

下表列出此元件 2.1.7 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.9.0 | 軟式 | 

------
#### [ 2.1.6 ]

下表列出此元件 2.1.6 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0 | 軟式 | 

------
#### [ 2.1.5 ]

下表列出此元件 2.1.5 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0 | 軟式 | 

------
#### [ 2.1.4 ]

下表列出此元件 2.1.4 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0 | 軟式 | 

------
#### [ 2.1.3 ]

下表列出此元件 2.1.3 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0 | 軟式 | 

------
#### [ 2.1.2 ]

下表列出此元件 2.1.2 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0 | 軟式 | 

------
#### [ 2.1.1 ]

下表列出此元件 2.1.1 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0 | 軟式 | 

------
#### [ 2.1.0 ]

下表列出此元件 2.1.0 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0 | 軟式 | 

------

## Configuration
<a name="tensorflow-lite-image-classification-model-store-component-configuration"></a>

此元件沒有任何組態參數。

## 本機日誌檔案
<a name="tensorflow-lite-image-classification-model-store-component-log-file"></a>

此元件不會輸出日誌。

## 變更記錄
<a name="tensorflow-lite-image-classification-model-store-component-changelog"></a>

下表說明每個版本元件的變更。


|  版本  |  變更  | 
| --- | --- | 
|  2.1.12  |  針對 Greengrass nucleus 2.12.5 版本更新版本。  | 
|  2.1.11  | 針對 Greengrass nucleus 2.12.0 版更新版本。 | 
|  2.1.10  | 針對 Greengrass nucleus 2.11.0 版更新版本。 | 
|  2.1.9  | 針對 Greengrass nucleus 2.10.0 版更新版本。 | 
|  2.1.8  | 針對 Greengrass nucleus 2.9.0 版更新版本。 | 
|  2.1.7  | 針對 Greengrass nucleus 2.8.0 版更新版本。 | 
|  2.1.6  |  針對 Greengrass nucleus 2.7.0 版更新版本。  | 
|  2.1.5  |  針對 Greengrass nucleus 2.6.0 版更新版本。  | 
|  2.1.4  |  針對 Greengrass nucleus 2.5.0 版更新版本。  | 
|  2.1.3  |  針對 Greengrass nucleus 2.4.0 版更新版本。  | 
|  2.1.2  |  針對 Greengrass nucleus 2.3.0 版更新版本。  | 
|  2.1.1  |  針對 Greengrass nucleus 2.2.0 版更新版本。  | 
|  2.1.0  |  初始版本。  | 

# TensorFlow Lite 物件偵測模型存放區
<a name="tensorflow-lite-object-detection-model-store-component"></a>

TensorFlow Lite 物件偵測模型存放區 (`variant.TensorFlowLite.ObjectDetection.ModelStore`) 是一種機器學習模型元件，其中包含預先訓練的單一鏡頭偵測 (SSD) MobileNet 模型作為 Greengrass 成品。此元件中使用的範例模型是從 [TensorFlow Hub](https://tfhub.dev/) 擷取，並使用 [TensorFlow Lite](https://www.tensorflow.org/lite/guide/python) 實作。

[TensorFlow Lite 物件偵測](tensorflow-lite-object-detection-component.md)推論元件使用此元件做為模型來源的相依性。若要使用自訂訓練的 TensorFlow Lite 模型，[請建立此模型元件的自訂版本](ml-customization.md#override-public-model-store)，並將自訂模型包含為元件成品。您可以使用此元件的配方做為範本，來建立自訂模型元件。

**Topics**
+ [版本](#tensorflow-lite-object-detection-model-store-component-versions)
+ [類型](#tensorflow-lite-object-detection-model-store-component-type)
+ [作業系統](#tensorflow-lite-object-detection-model-store-component-os-support)
+ [要求](#tensorflow-lite-object-detection-model-store-component-requirements)
+ [相依性](#tensorflow-lite-object-detection-model-store-component-dependencies)
+ [Configuration](#tensorflow-lite-object-detection-model-store-component-configuration)
+ [本機日誌檔案](#tensorflow-lite-object-detection-model-store-component-log-file)
+ [變更記錄](#tensorflow-lite-object-detection-model-store-component-changelog)

## 版本
<a name="tensorflow-lite-object-detection-model-store-component-versions"></a>

此元件具有下列版本：
+ 2.1.x

## 類型
<a name="tensorflow-lite-object-detection-model-store-component-type"></a>

<a name="public-component-type-generic"></a>此<a name="public-component-type-generic-phrase"></a>元件是一般元件 (`aws.greengrass.generic`)。[Greengrass 核](greengrass-nucleus-component.md)會執行元件的生命週期指令碼。

<a name="public-component-type-more-information"></a>如需詳細資訊，請參閱[元件類型](develop-greengrass-components.md#component-types)。

## 作業系統
<a name="tensorflow-lite-object-detection-model-store-component-os-support"></a>

此元件可以安裝在執行下列作業系統的核心裝置上：
+ Linux
+ Windows

## 要求
<a name="tensorflow-lite-object-detection-model-store-component-requirements"></a>

此元件有下列需求：<a name="ml-component-requirements"></a>
+ 在執行 Amazon Linux 2 或 Ubuntu 18.04 的 Greengrass 核心裝置上，[GNU C Library](https://www.gnu.org/software/libc/) (glibc) 2.27 版或更新版本安裝在裝置上。
+ 在 Armv7l 裝置上，例如 Raspberry Pi，安裝在裝置上的 OpenCV-Python 相依性。執行下列命令來安裝相依性。

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ 執行 Raspberry Pi OS Bullseye 的 Raspberry Pi 裝置必須符合下列要求：
  + 裝置上已安裝 NumPy 1.22.4 或更新版本。Raspberry Pi OS Bullseye 包含舊版的 NumPy，因此您可以執行下列命令以在裝置上升級 NumPy。

    ```
    pip3 install --upgrade numpy
    ```
  + 在裝置上啟用的舊版攝影機堆疊。Raspberry Pi OS Bullseye 包含預設啟用且不相容的新攝影機堆疊，因此您必須啟用舊版攝影機堆疊。<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**啟用舊版攝影機堆疊**

    1. 執行下列命令以開啟 Raspberry Pi 組態工具。

       ```
       sudo raspi-config
       ```

    1. 選取**界面選項**。

    1. 選取**舊版攝影機**以啟用舊版攝影機堆疊。

    1. 重新啟動 Raspberry Pi。

## 相依性
<a name="tensorflow-lite-object-detection-model-store-component-dependencies"></a>

當您部署元件時， AWS IoT Greengrass 也會部署其相依性的相容版本。這表示您必須符合元件及其所有相依性的要求，才能成功部署元件。本節列出此元件[發行版本的](#tensorflow-lite-object-detection-model-store-component-changelog)相依性，以及為每個相依性定義元件版本的語意版本限制。您也可以在 [AWS IoT Greengrass 主控台](https://console.aws.amazon.com//greengrass)中檢視每個版本元件的相依性。在元件詳細資訊頁面上，尋找**相依性**清單。

------
#### [ 2.1.11 and 2.1.12 ]

下表列出此元件 2.1.11 和 2.1.12 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.13.0 | 軟式 | 

------
#### [ 2.1.10 ]

下表列出此元件 2.1.10 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.12.0 | 軟式 | 

------
#### [ 2.1.9 ]

下表列出此元件 2.1.9 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.11.0 | 軟式 | 

------
#### [ 2.1.8 ]

下表列出此元件 2.1.8 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.10.0 | 軟式 | 

------
#### [ 2.1.7 ]

下表列出此元件 2.1.7 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.9.0 | 軟式 | 

------
#### [ 2.1.6 ]

下表列出此元件 2.1.6 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0 | 軟式 | 

------
#### [ 2.1.5 ]

下表列出此元件 2.1.5 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0 | 軟式 | 

------
#### [ 2.1.4 ]

下表列出此元件 2.1.4 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0 | 軟式 | 

------
#### [ 2.1.3 ]

下表列出此元件 2.1.3 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0 | 軟式 | 

------
#### [ 2.1.2 ]

下表列出此元件 2.1.2 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0 | 軟式 | 

------
#### [ 2.1.1 ]

下表列出此元件 2.1.1 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0 | 軟式 | 

------
#### [ 2.1.0 ]

下表列出此元件 2.1.0 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0 | 軟式 | 

------

## Configuration
<a name="tensorflow-lite-object-detection-model-store-component-configuration"></a>

此元件沒有任何組態參數。

## 本機日誌檔案
<a name="tensorflow-lite-object-detection-model-store-component-log-file"></a>

此元件不會輸出日誌。

## 變更記錄
<a name="tensorflow-lite-object-detection-model-store-component-changelog"></a>

下表說明每個版本元件的變更。


|  版本  |  變更  | 
| --- | --- | 
|  2.1.12  |  針對 Greengrass nucleus 2.12.5 版本更新版本。  | 
|  2.1.11  | 針對 Greengrass nucleus 2.12.0 版更新版本。 | 
|  2.1.10  | 針對 Greengrass nucleus 2.11.0 版更新版本。 | 
|  2.1.9  | 針對 Greengrass nucleus 2.10.0 版更新版本。 | 
|  2.1.8  | 針對 Greengrass nucleus 2.9.0 版更新版本。 | 
|  2.1.7  | 針對 Greengrass nucleus 2.8.0 版更新版本。 | 
|  2.1.6  |  針對 Greengrass nucleus 2.7.0 版更新版本。  | 
|  2.1.5  |  針對 Greengrass nucleus 2.6.0 版更新版本。  | 
|  2.1.4  |  針對 Greengrass nucleus 2.5.0 版更新版本。  | 
|  2.1.3  |  針對 Greengrass nucleus 2.4.0 版更新版本。  | 
|  2.1.2  |  針對 Greengrass nucleus 2.3.0 版更新版本。  | 
|  2.1.1  |  針對 Greengrass nucleus 2.2.0 版更新版本。  | 
|  2.1.0  |  初始版本。  | 

# TensorFlow Lite 執行時間
<a name="tensorflow-lite-component"></a>

TensorFlow Lite 執行期元件 (`variant.TensorFlowLite`) 包含指令碼，可在您裝置上的虛擬環境中安裝 [TensorFlow Lite](https://www.tensorflow.org/lite/guide/python) 2.5.0 版及其相依性。[TensorFlow Lite 影像分類](tensorflow-lite-image-classification-component.md)和 [TensorFlow Lite 物件偵測](tensorflow-lite-object-detection-component.md)元件使用此執行期元件做為安裝 TensorFlow Lite 的相依性。

**注意**  
TensorFlow Lite 執行期元件 v2.5.6 和更新版本會重新安裝 TensorFlow Lite 執行期及其相依性的現有安裝。此重新安裝有助於確保核心裝置執行相容版本的 TensorFlow Lite 及其相依性。

若要使用不同的執行時間，您可以使用此元件的配方做為範本來[建立自訂機器學習元件](ml-customization.md)。

**Topics**
+ [版本](#tensorflow-lite-component-versions)
+ [類型](#tensorflow-lite-component-type)
+ [作業系統](#tensorflow-lite-component-os-support)
+ [要求](#tensorflow-lite-component-requirements)
+ [相依性](#tensorflow-lite-component-dependencies)
+ [Configuration](#tensorflow-lite-component-configuration)
+ [用途](#tensorflow-lite-component-usage)
+ [本機日誌檔案](#tensorflow-lite-component-log-file)
+ [變更記錄](#tensorflow-lite-component-changelog)

## 版本
<a name="tensorflow-lite-component-versions"></a>

此元件具有下列版本：
+ 2.5.x

## 類型
<a name="tensorflow-lite-component-type"></a>

<a name="public-component-type-generic"></a>此<a name="public-component-type-generic-phrase"></a>元件是一般元件 (`aws.greengrass.generic`)。[Greengrass 核](greengrass-nucleus-component.md)會執行元件的生命週期指令碼。

<a name="public-component-type-more-information"></a>如需詳細資訊，請參閱[元件類型](develop-greengrass-components.md#component-types)。

## 作業系統
<a name="tensorflow-lite-component-os-support"></a>

此元件可以安裝在執行下列作業系統的核心裝置上：
+ Linux
+ Windows

## 要求
<a name="tensorflow-lite-component-requirements"></a>

此元件有下列需求：<a name="ml-component-requirements"></a>
+ 在執行 Amazon Linux 2 或 Ubuntu 18.04 的 Greengrass 核心裝置上，[GNU C Library](https://www.gnu.org/software/libc/) (glibc) 2.27 版或更新版本安裝在裝置上。
+ 在 Armv7l 裝置上，例如 Raspberry Pi，安裝在裝置上的 OpenCV-Python 相依性。執行下列命令來安裝相依性。

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ 執行 Raspberry Pi OS Bullseye 的 Raspberry Pi 裝置必須符合下列要求：
  + 裝置上已安裝 NumPy 1.22.4 或更新版本。Raspberry Pi OS Bullseye 包含舊版的 NumPy，因此您可以執行下列命令以在裝置上升級 NumPy。

    ```
    pip3 install --upgrade numpy
    ```
  + 在裝置上啟用的舊版攝影機堆疊。Raspberry Pi OS Bullseye 包含預設啟用且不相容的新攝影機堆疊，因此您必須啟用舊版攝影機堆疊。<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**啟用舊版攝影機堆疊**

    1. 執行下列命令以開啟 Raspberry Pi 組態工具。

       ```
       sudo raspi-config
       ```

    1. 選取**界面選項**。

    1. 選取**舊版攝影機**以啟用舊版攝影機堆疊。

    1. 重新啟動 Raspberry Pi。

### 端點和連接埠
<a name="tensorflow-lite-component-endpoints"></a>

根據預設，此元件會使用安裝程式指令碼，根據核心裝置使用的平台，使用 `apt`、`brew`、 `yum`和 `pip`命令來安裝套件。此元件必須能夠對各種套件索引和儲存庫執行傳出請求，才能執行安裝程式指令碼。若要允許此元件透過代理或防火牆的傳出流量，您必須識別核心裝置連線安裝之套件索引和儲存庫的端點。

當您識別此元件安裝指令碼所需的端點時，請考慮下列事項：
+ 端點取決於核心裝置的平台。例如，執行 Ubuntu 的核心裝置會使用 `apt`而非 `yum`或 `brew`。此外，使用相同套件索引的裝置可能會有不同的來源清單，因此可能會從不同的儲存庫擷取套件。
+ 使用相同套件索引的多個裝置之間的端點可能不同，因為每個裝置都有自己的來源清單，可定義擷取套件的位置。
+ 端點可能會隨著時間而變更。每個套件索引都會提供您下載套件之儲存庫URLs，而套件的擁有者可以變更套件索引提供的 URLs。

如需此元件安裝的相依性，以及如何停用安裝程式指令碼的詳細資訊，請參閱 [UseInstaller](#tensorflow-lite-component-config-useinstaller-term) 組態參數。

如需基本操作所需的端點和連接埠的詳細資訊，請參閱[允許透過代理或防火牆的裝置流量](allow-device-traffic.md)。

## 相依性
<a name="tensorflow-lite-component-dependencies"></a>

當您部署元件時， AWS IoT Greengrass 也會部署其相依性的相容版本。這表示您必須符合元件及其所有相依性的要求，才能成功部署元件。本節列出此元件[發行版本的](#tensorflow-lite-component-changelog)相依性，以及為每個相依性定義元件版本的語意版本限制。您也可以在 [AWS IoT Greengrass 主控台](https://console.aws.amazon.com//greengrass)中檢視每個版本元件的相依性。在元件詳細資訊頁面上，尋找**相依性**清單。

------
#### [ 2.5.14 and 2.5.15 ]

下表列出此元件 2.5.14 版和 2.5.15 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.13.0 | 軟式 | 

------
#### [ 2.5.13 ]

下表列出此元件 2.5.13 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.12.0 | 軟式 | 

------
#### [ 2.5.12 ]

下表列出此元件 2.5.12 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.11.0 | 軟式 | 

------
#### [ 2.5.11 ]

下表列出此元件 2.5.11 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.10.0 | 軟式 | 

------
#### [ 2.5.10 ]

下表列出此元件 2.5.10 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.9.0 | 軟式 | 

------
#### [ 2.5.9 ]

下表列出此元件 2.5.9 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0 | 軟式 | 

------
#### [ 2.5.8 ]

下表列出此元件 2.5.8 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0 | 軟式 | 

------
#### [ 2.5.5 - 2.5.7 ]

下表列出此元件 2.5.5 到 2.5.7 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0 | 軟式 | 

------
#### [ 2.5.3 and 2.5.4 ]

下表列出此元件 2.5.3 和 2.5.4 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0 | 軟式 | 

------
#### [ 2.5.2 ]

下表列出此元件 2.5.2 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0 | 軟式 | 

------
#### [ 2.5.1 ]

下表列出此元件 2.5.1 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0 | 軟式 | 

------
#### [ 2.5.0 ]

下表列出此元件 2.5.0 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0 | 軟式 | 

------

如需元件相依性的詳細資訊，請參閱[元件配方參考](component-recipe-reference.md#recipe-reference-component-dependencies)。

## Configuration
<a name="tensorflow-lite-component-configuration"></a>

此元件提供下列組態參數，您可以在部署元件時自訂這些參數。

`MLRootPath`  
<a name="ml-config-mlrootpath-desc"></a>（選用） Linux 核心裝置上的資料夾路徑，其中推論元件會讀取映像和寫入推論結果。您可以將此值修改為裝置上執行此元件的使用者具有讀取/寫入存取權的任何位置。  
<a name="ml-config-mlrootpath-default-tfl"></a>預設：`/greengrass/v2/work/variant.TensorFlowLite/greengrass_ml`

`WindowsMLRootPath`  
此功能適用於此元件的 v1.6.6 和更新版本。  
<a name="ml-config-windowsmlrootpath-desc"></a>（選用） Windows 核心裝置上的資料夾路徑，其中推論元件會讀取映像和寫入推論結果。您可以將此值修改為裝置上執行此元件的使用者具有讀取/寫入存取權的任何位置。  
<a name="ml-config-windowsmlrootpath-default-dlr"></a>預設：`C:\greengrass\v2\\work\\variant.DLR\\greengrass_ml`

  `UseInstaller`   
<a name="ml-config-useinstaller-desc-tfl"></a>（選用） 字串值，定義是否使用此元件中的安裝程式指令碼來安裝 TensorFlow Lite 及其相依性。支援的值為 `true` 和 `false`。  <a name="ml-config-useinstaller-libraries-tfl"></a>

`false` 如果您想要針對 TensorFlow Lite 安裝使用自訂指令碼，或想要在預先建置的 Linux 映像中包含執行時間相依性，請將此值設定為 。若要將此元件與 AWS提供的 TensorFlow Lite 推論元件搭配使用，請安裝下列程式庫，包括任何相依性，並將其提供給`ggc_user`執行 ML 元件的系統使用者，例如 。
+ [Python](https://www.python.org/downloads/) 3.8 或更新版本，包括`pip`適用於您 Python 版本的
+ [TensorFlow Lite](https://www.tensorflow.org/lite/guide/python) 2.5.0 版
+ [NumPy](https://numpy.org/install/)
+ [OpenCV-Python](https://pypi.org/project/opencv-python/)
+ [AWS IoT Device SDK 適用於 Python 的 v2](https://github.com/aws/aws-iot-device-sdk-python-v2)
+ [AWS 常見執行時間 (CRT) Python](https://github.com/awslabs/aws-crt-python)
+ [Picamera](https://picamera.readthedocs.io/en/release-1.13/) （適用於 Raspberry Pi 裝置）
+ [`awscam` 模組](https://docs.aws.amazon.com/deeplens/latest/dg/deeplens-library-awscam-module.html) （適用於 AWS DeepLens 裝置）
+ libGL （適用於 Linux 裝置）
<a name="ml-config-useinstaller-default"></a>預設：`true`

## 用途
<a name="tensorflow-lite-component-usage"></a>

將此元件與設定為 的`UseInstaller`組態參數搭配使用`true`，以在您的裝置上安裝 TensorFlow Lite 及其相依性。元件會在您的裝置上設定虛擬環境，其中包含 TensorFlow Lite 所需的 OpenCV 和 NumPy 程式庫。

**注意**  <a name="ml-installer-component-usage-note"></a>
此元件中的安裝程式指令碼也會安裝最新版本的其他系統程式庫，這些程式庫是在您的裝置上設定虛擬環境並使用已安裝的機器學習架構所必需。這可能會升級裝置上的現有系統程式庫。檢閱下表，以取得此元件針對每個支援的作業系統安裝的程式庫清單。如果您想要自訂此安裝程序，請將`UseInstaller`組態參數設定為 `false`，並開發您自己的安裝程式指令碼。


| 平台 | 裝置系統上安裝的程式庫 | 安裝在虛擬環境中的程式庫 | 
| --- | --- | --- | 
| Armv7l | build-essential, cmake, ca-certificates, git | setuptools, wheel | 
| Amazon Linux 2 | mesa-libGL | 無 | 
| Ubuntu | wget | 無 | 

當您部署推論元件時，此執行時間元件會先驗證您的裝置是否已安裝 TensorFlow Lite 及其相依性。如果沒有，則執行期元件會為您安裝它們。

## 本機日誌檔案
<a name="tensorflow-lite-component-log-file"></a>

此元件使用以下日誌檔案。

------
#### [ Linux ]

```
/greengrass/v2/logs/variant.TensorFlowLite.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\variant.TensorFlowLite.log
```

------

**檢視此元件的日誌**
+ 在核心裝置上執行下列命令，以即時檢視此元件的日誌檔案。將 `/greengrass/v2`或 *C：\$1greengrass\$1v2* 取代為 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
  ```

------

## 變更記錄
<a name="tensorflow-lite-component-changelog"></a>

下表說明每個版本元件的變更。


|  版本  |  變更  | 
| --- | --- | 
|  2.5.15  |  針對 Greengrass 核 2.12.5 版更新版本。  | 
|  2.5.14  | 針對 Greengrass nucleus 2.12.0 版更新版本。 | 
|  2.5.13  | 針對 Greengrass nucleus 2.11.0 版更新版本。 | 
|  2.5.12  | 針對 Greengrass nucleus 2.10.0 版更新版本。 | 
|  2.5.11  | 針對 Greengrass nucleus 2.9.0 版更新版本。 | 
|  2.5.10  | 針對 Greengrass nucleus 2.8.0 版更新版本。 | 
|  2.5.9  |  針對 Greengrass nucleus 2.7.0 版更新版本。  | 
|  2.5.8  |  針對 Greengrass nucleus 2.6.0 版更新版本。  | 
|  2.5.7  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/tensorflow-lite-component.html)  | 
|  2.5.6  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/tensorflow-lite-component.html)  | 
|  2.5.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/tensorflow-lite-component.html)  | 
|  2.5.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/tensorflow-lite-component.html)  | 
|  2.5.3  |  針對 Greengrass nucleus 2.4.0 版更新版本。  | 
|  2.5.2  |  針對 Greengrass nucleus 2.3.0 版更新版本。  | 
|  2.5.1  |  針對 Greengrass nucleus 2.2.0 版更新版本。  | 
|  2.5.0  |  初始版本。  | 