

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用 AWS CLI 管理适配器和 SDKs
<a name="managing-adapters"></a>

 Rekognition 可让您使用利用预先训练的计算机视觉模型的多种功能。使用这些模型，您可以执行标签检测和内容审核等任务。您也可以使用适配器自定义这些特定型号。

你可以利用 Rekognition 的项目创建和项目管理 APIs （比如[CreateProject](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_CreateProject.html)和 [CreateProjectVersion](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_CreateProjectVersion.html)）来创建和训练适配器。以下页面介绍如何使用 AWS 控制台、您选择的 AWS SDK 或 CLI 使用 AP AWS I 操作创建、训练和管理适配器。

训练适配器后，可以在使用支持的功能运行推理时使用它。当前，使用内容审核功能时支持适配器。

使用 AWS SDK 训练适配器时，必须以清单文件的形式提供真实情况标签（图像注释）。或者，您可以使用 Rekognition 控制器创建和训练适配器。

**注意**  
 无法复制适配器。只能复制 Rekognition 自定义标签项目版本。

**Topics**
+ [适配器状态](#managing-adapters-project-versions-statuses)
+ [创建项目](managing-adapters-create-project.md)
+ [描述项目](managing-adapters-describe-projects.md)
+ [删除项目](managing-adapters-delete-project.md)
+ [创建项目版本](managing-adapters-create-project-version.md)
+ [描述项目版本](managing-adapters-describe-project.md)
+ [删除项目版本](managing-adapters-delete-project-version.md)

## 适配器状态
<a name="managing-adapters-project-versions-statuses"></a>

自定义审核适配器（项目版本）可以处于下列状态之一：
+ TRAINING\$1IN\$1PROGRESS：适配器正在根据您提供作为培训文档的文件进行训练。
+ TRAINING\$1COMPLETED：适配器已成功完成训练，您可以随时查看其性能。
+ TRAINING\$1FAILED：适配器由于某种原因而未能完成训练，请查看输出清单文件和输出清单摘要，了解有关失败原因的信息。
+ DELETING：正在删除适配器。
+ DEPRECATED：适配器已在旧版本的内容审核基础模型上进行训练。它处于宽限期，将在新的基础模型版本发布后的 60 到 90 天内过期。在宽限期内，您仍然可以使用适配器通过[DetectModerationLabels](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_DetectModerationLabels.html)或 [StartMediaAnalysisJob](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_StartMediaAnalysisJob.html)API 操作进行推理。有关适配器的到期日期，请参阅自定义审核控制台。
+ 已过期-适配器已在旧版本的内容审核基础模型上进行训练，无法再用于通过 DetectModerationLabels 或 StartMediaAnalysisJob API 操作获取自定义结果。如果在推理请求中指定了过期适配器，则将忽略该适配器，而是从最新版自定义审核基础模型返回响应。

# 创建项目
<a name="managing-adapters-create-project"></a>

通过该[CreateProject](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_CreateProject.html)操作，您可以创建一个项目，该项目将包含用于 Rekognition 标签检测操作的适配器。项目是一组资源，就标签检测操作而言，项目允许您存储适配器 DetectModerationLabels，您可以使用这些适配器来自定义基本 Rekognition 模型。调用时 CreateProject，您需要为 ProjectName 参数提供要创建的项目的名称。

 要使用 AWS 控制台创建项目，请执行以下操作：
+ 登录 Rekognition 控制台
+ 单击**自定义审核**
+ 选择**创建项目**
+ 选择**创建新项目**或**添加到现有项目**
+ 添加**项目名称**
+ 添加**适配器名称**
+ 如果需要，可以添加描述
+ 选择要导入训练图像的方式：通过清单文件导入、从 S3 存储桶或计算机导入
+ 选择是要自动拆分训练数据还是要导入清单文件
+ 选择是否要让项目自动更新
+ 单击**创建项目**

要使用 AWS CLI 和 SDK 创建项目，请执行以下操作：

1. 如果您尚未这样做，请安装和配置 AWS CLI 和 AWS SDKs。有关更多信息，请参阅 [第 2 步：设置 AWS CLI 和 AWS SDKs](setup-awscli-sdk.md)。

1. 使用以下代码创建项目:

------
#### [ CLI ]

```
# Request
# Creating Content Moderation Project
aws rekognition create-project \
    --project-name "project-name" \
    --feature CONTENT_MODERATION \
    --auto-update ENABLED
    --profile profile-name
```

------

# 描述项目
<a name="managing-adapters-describe-projects"></a>

您可以使用 [DescribeProjects](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_DescribeProjects.html)API 获取有关您的项目的信息，包括与项目关联的所有适配器的信息。

要使用 AWS CLI 和 SDK 描述项目，请执行以下操作：

1. 如果您尚未这样做，请安装和配置 AWS CLI 和 AWS SDKs。有关更多信息，请参阅 [第 2 步：设置 AWS CLI 和 AWS SDKs](setup-awscli-sdk.md)。

1. 使用以下代码描述项目：

------
#### [ CLI ]

```
# Request
# Getting CONTENT_MODERATION project details 
aws rekognition describe-projects \
    --features CONTENT_MODERATION
    --profile profile-name
```

------

# 删除项目
<a name="managing-adapters-delete-project"></a>

您可以使用 Rekognition 控制台或调用 API 来删除项目。[DeleteProject](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_DeleteProject.html)要删除项目，必须先删除所有关联的适配器。已删除的项目或模型无法取消删除。

 要使用 AWS 控制台删除项目，请执行以下操作：
+ 登录 Rekognition 控制台。
+ 单击**自定义审核**。
+ 您必须先删除与项目关联的所有适配器，然后才能删除项目本身。选择适配器，然后选择**删除**，即可删除与项目关联的所有适配器。
+ 选择项目，然后选择**删除**按钮。

要使用 AWS CLI 和 SDK 删除项目，请执行以下操作：

1. 如果您尚未这样做，请安装和配置 AWS CLI 和 AWS SDKs。有关更多信息，请参阅 [第 2 步：设置 AWS CLI 和 AWS SDKs](setup-awscli-sdk.md)。

1. 使用以下代码删除项目：

------
#### [ CLI ]

```
aws rekognition delete-project 
  --project-arn project_arn \
  --profile profile-name
```

------

# 创建项目版本
<a name="managing-adapters-create-project-version"></a>

您可以使用[CreateProjectVersion](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_CreateProjectVersion.html)操作训练适配器进行部署。 CreateProjectVersion 首先创建与项目关联的适配器的新版本，然后开始训练该适配器。来自的响应 CreateProjectVersion 是模型版本的亚马逊资源名称 (ARN)。训练需要一段时间才能完成。您可以通过致电获取当前状态 DescribeProjectVersions。训练模型时，Rekognition 使用与项目关联的训练和测试数据集。使用控制台创建数据集。有关更多信息，请参阅数据集上的部分。

 要使用 Rekognition 控制台创建项目版本，请执行以下操作：
+  登录 AWS Rekognition 控制台 
+  单击自定义审核 
+  选择项目。
+  在“项目详细信息”页面上，选择**创建适配器** 
+  在“创建项目”页面上，填写项目详细信息、训练图像和测试图像的必填详细信息，然后选择**创建项目**。
+  在“为图像分配标签”页面上，为图像添加标签，完成后选择**开始训练** 

要使用 AWS CLI 和 SDK 创建项目版本，请执行以下操作：

1. 如果您尚未这样做，请安装和配置 AWS CLI 和 AWS SDKs。有关更多信息，请参阅 [第 2 步：设置 AWS CLI 和 AWS SDKs](setup-awscli-sdk.md)。

1. 使用以下代码创建项目版本：

------
#### [ CLI ]

```
# Request
aws rekognition create-project-version \
 --project-arn project-arn \
 --training-data '{Assets=[GroundTruthManifest={S3Object="amzn-s3-demo-source-bucket",Name="manifest.json"}]}' \
 --output-config S3Bucket=amzn-s3-demo-destination-bucket,S3KeyPrefix=my-results \
 --feature-config "ContentModeration={ConfidenceThreshold=70}"
 --profile profile-name
```

------

# 描述项目版本
<a name="managing-adapters-describe-project"></a>

您可以使用[DescribeProjectVersions](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_DescribeProjectVersions.html)操作列出和描述与项目关联的适配器。您最多可以在中指定 10 个模型版本 ProjectVersionArns。如果不指定值，则返回项目中所有模型版本的描述。

要使用 AWS CLI 和 SDK 描述项目版本，请执行以下操作：

1. 如果您尚未这样做，请安装和配置 AWS CLI 和 AWS SDKs。有关更多信息，请参阅 [第 2 步：设置 AWS CLI 和 AWS SDKs](setup-awscli-sdk.md)。

1. 使用以下代码来描述项目版本：

------
#### [ CLI ]

```
aws rekognition describe-project-versions 
  --project-arn project_arn \
  --version-names [versions]
```

------

# 删除项目版本
<a name="managing-adapters-delete-project-version"></a>

您可以使用该操作删除与项目关联的 Rekognition 适配器。[DeleteProjectVersion](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_DeleteProjectVersion.html)无法删除正在运行或正在训练的适配器。要检查适配器的状态，请调用该 DescribeProjectVersions 操作并检查其返回的 “状态” 字段。要停止正在运行的适配器，请调用 StopProjectVersion。如果模型正在训练，请等到训练完成后再删除模型。您必须先删除与项目关联的所有适配器，然后才能删除项目本身。

 要使用 Rekognition 控制台删除项目版本，请执行以下操作：
+ 登录 Rekognition 控制台
+ 单击自定义审核
+ 在“项目”选项卡中，您可以查看所有项目和关联的适配器。选择适配器，然后选择**删除**。

要使用 AWS CLI 和 SDK 删除项目版本，请执行以下操作：

1. 如果您尚未这样做，请安装和配置 AWS CLI 和 AWS SDKs。有关更多信息，请参阅 [第 2 步：设置 AWS CLI 和 AWS SDKs](setup-awscli-sdk.md)。

1. 使用以下代码删除项目版本：

------
#### [ CLI ]

```
# Request
aws rekognition delete-project-version 
  --project-version-arn model_arn \
  --profile profile-name
```

------