

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

# 单独导入操作
<a name="importing-actions"></a>

在完成[创建架构和数据集](data-prep-creating-datasets.md)以创建[操作数据集](actions-datasets.md)后，您可以单独将一个或多个新操作导入到数据集中。单独导入操作时，随着目录的增长，可以通过小批量导入使操作数据集保持最新状态。您一次最多可以导入 10 个操作。如果您有大量新操作，我们建议您先批量导入数据，然后根据需要单独导入用户操作。请参阅[通过数据集导入作业将批量数据导入到 Amazon Personalize](bulk-data-import-step.md)。

您可以使用 Amazon Personalize 控制台、 AWS Command Line Interface (AWS CLI) 或 AWS SDKs 导入操作。如果您导入的操作的 `actionId` 与操作数据集中已有的操作相同，则 Amazon Personalize 会将其替换为新操作。

有关新记录如何影响建议的信息，请参阅[训练后更新数据集中的数据](updating-datasets.md)。

**Topics**
+ [单独导入操作（控制台）](#importing-actions-console)
+ [单独导入操作 (AWS CLI)](#importing-actions-cli)
+ [单独导入操作 (AWS SDKs)](#importing-actions-cli-sdk)

## 单独导入操作（控制台）
<a name="importing-actions-console"></a>

一次最多可以将 10 个操作导入到操作数据集中。本节假定您已经创建了一个操作数据集。有关创建数据集的信息，请参阅[创建架构和数据集](data-prep-creating-datasets.md)。

**单独导入操作（控制台）**

1. 在[https://console.aws.amazon.com/personalize/家](https://console.aws.amazon.com/personalize/home)中打开 Amazon Personalize 控制台并登录您的账户。

1. 在**数据集组**页面上，选择包含要添加到的操作数据集的数据集组。

1. 在导航窗格中，选择**数据集**。

1. 在**数据集**页面上，选择操作数据集。

1. 在数据集详细信息页面的右上角，选择**修改数据集**，然后选择**创建记录**。

1. 在**创建操作记录**页面中，对于**记录输入**，以 JSON 格式输入操作详细信息。操作的字段名称和值必须与您在创建操作数据集时使用的架构匹配。Amazon Personalize 提供一个 JSON 模板，其中包含该架构中的字段名称和数据类型。

1. 选择**创建记录**。在**响应**中，将列出导入结果并显示成功或失败消息。

## 单独导入操作 (AWS CLI)
<a name="importing-actions-cli"></a>

使用 `PutActions` API 操作将一个或多个操作添加到您的操作数据集。您一次最多可以导入 10 个操作。本节假定您已经创建了一个操作数据集。有关创建数据集的信息，请参阅[创建架构和数据集](data-prep-creating-datasets.md)。

通过 AWS CLI使用以下 `put-actions` 命令添加一个或多个操作。将 `dataset arn` 替换为数据集的 Amazon 资源名称 (ARN)，将 `actionId` 替换为操作 ID。如果具有相同 `actionId` 的操作已存在于操作数据集中，则 Amazon Personalize 会将其替换为新操作。

对于 `properties`，针对操作数据集中的每个字段，将 `propertyName` 替换为架构中的字段名称（采用驼峰式大小写）。例如，ACTION\$1EXPIRATION\$1TIMESTAMP 将是 `actionExpirationTimestamp`，CREATION\$1TIMESTAMP 将是 creationTimestamp。将 `property data` 替换为属性的数据。

```
aws personalize-events put-actions \
  --dataset-arn dataset arn \
  --actions '[{
      "actionId": "actionId", 
      "properties": "{\"propertyName\": "\property data\"}" 
    }, 
    {
      "actionId": "actionId", 
      "properties": "{\"propertyName\": "\property data\"}" 
    }]'
```

## 单独导入操作 (AWS SDKs)
<a name="importing-actions-cli-sdk"></a>

使用操作向操作数据集添加一个或多个 PutActions 操作。通过单次 `PutActions` 调用最多可以导入 10 个操作。如果具有相同 `actionId` 的操作已存在于操作数据集中，则 Amazon Personalize 会将其替换为新操作。本节假定您已经创建了一个操作数据集。有关创建数据集的信息，请参阅[创建架构和数据集](data-prep-creating-datasets.md)。

 以下代码显示如何将一个或多个操作添加到您的操作数据集。为每个操作指定 `actionId`。如果具有相同 `actionId` 的操作已存在于操作数据集中，则 Amazon Personalize 会将其替换为新操作。对于 `properties`，针对操作数据集中的每个其它字段，将 `propertyName` 替换为架构中的字段名称（采用驼峰式大小写）。例如，ACTION\$1EXPIRATION\$1TIMESTAMP 将是 `actionExpirationTimestamp`，CREATION\$1TIMESTAMP 将是 creationTimestamp。将 `property data` 替换为属性的数据。

```
import boto3

personalize_events = boto3.client(service_name='personalize-events')

personalize_events.put_actions(
    datasetArn = 'dataset arn',
    actions = [{
      'actionId': 'actionId',
      'properties': "{\"propertyName\": \"property value\"}"   
      },
      {
      'actionId': 'actionId',
      'properties': "{\"propertyName\": \"property value\"}"   
      }]
)
```