

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

# 记录实时事件以影响推荐
<a name="recording-events"></a>

 *事件*是用户与您的目录之间的交互。它可以是与*物品*的交互（例如用户购买物品或观看视频），也可以是执行*操作*（例如申请信用卡或注册会员计划）。

Amazon Personalize 可以仅根据实时事件数据、历史事件数据（或两者混合）来提供建议。记录客户与推荐交互时的实时事件。这会生成您的交互数据，并使您的数据保持最新状态。并且它会告知 Amazon Personalize 您的用户当前的兴趣，从而提高建议的相关性。

如果您的域使用案例或自定义配方支持[实时个性化](use-case-recipe-features.md#about-real-time-personalization)，则 Amazon Personalize 会实时使用事件根据用户不断变化的兴趣来更新和调整建议。

如何记录实时事件取决于您要导入的交互数据的类型：
+ 对于*物品交互*，您可以通过 [PutEvents](API_UBS_PutEvents.md) API 操作记录实时事件。Amazon Personalize 会将此数据附加到数据集组中的[物品交互](interactions-datasets.md)数据中。有关更多信息，请参阅 [记录实时物品交互事件](recording-item-interaction-events.md)。
+ 对于*操作交互*，您可以使用 [PutActionInteractions](API_UBS_PutActionInteractions.md) API 操作记录实时事件。Amazon Personalize 会将此数据附加到数据集组中的[操作交互数据集](action-interactions-datasets.md)。只有 PERSONALIZED\$1ACTIONS 配方使用操作交互数据。有关更多信息，请参阅 [记录实时操作交互事件记录操作交互事件](recording-action-interaction-events.md)。

**Topics**
+ [实时事件如何影响建议](#recorded-events-influence-recommendations)
+ [记录实时物品交互事件](recording-item-interaction-events.md)
+ [记录实时操作交互事件](recording-action-interaction-events.md)
+ [为匿名用户记录事件](#recording-anonymous-user-events)
+ [第三方事件跟踪服务](#record-events-third-parties)
+ [示例实施](#recording-events-sample-architecture)

## 实时事件如何影响建议
<a name="recorded-events-influence-recommendations"></a>

 如果您的配方支持实时个性化，则在您创建推荐器或自定义市场活动后，Amazon Personalize 会在导入后的几秒钟内为现有物品或操作使用新记录的事件数据。以下使用案例和食谱支持实时个性化：
+ [为您推荐（ECOMMERCE 使用案例）](ECOMMERCE-use-cases.md#recommended-for-you-use-case)
+ [热门精选（VIDEO\$1ON\$1DEMAND 使用案例）](VIDEO_ON_DEMAND-use-cases.md#top-picks-use-case)
+ [User-Personalization-v2 配方](native-recipe-user-personalization-v2.md)
+ [User-Personalization 食谱](native-recipe-new-item-USER_PERSONALIZATION.md)
+ [Personalized-Ranking-v2 配方](native-recipe-personalized-ranking-v2.md)
+ [Personalized-Ranking 食谱](native-recipe-search.md)
+ [Next-Best-Action 食谱](native-recipe-next-best-action.md)

如果您使用 Trending-Now 食谱，则 Amazon Personalize 会在可配置的时间间隔内自动考虑来自新事件数据的物品。您不必创建新的解决方案版本。有关更多信息，请参阅 [Trending-Now 食谱](native-recipe-trending-now.md)。

 如果事件中的物品、操作或用户是新的物品、操作或用户，则 Amazon Personalize 如何使用数据取决于您的用户案例或配方。有关更多信息，请参阅 [训练后更新数据集中的数据](updating-datasets.md)。

## 为匿名用户记录事件
<a name="recording-anonymous-user-events"></a>

**重要**  
如果您没有为用户记录至少一个含 `sessionId` 和 `userId` 的事件，则 Amazon Personalize 不会在训练时使用仅按 `sessionId` 跟踪的活动。而且，训练完成后，将不再根据按 `sessionId` 跟踪的活动提出建议。这将为 userId 在登录前后创建连续的事件历史记录。

在用户创建账户之前，您可以记录他们的物品交互或操作交互事件。为匿名用户记录事件，以构建持续的事件历史记录，其中包含此类用户登录前后的事件。这为 Amazon Personalize 提供了更多关于用户的交互数据，这有助于生成更多相关的建议。

要记录匿名用户（尚未登录的用户）的事件，只需为每个事件指定一个 `sessionId`。当用户首次访问您的网站或使用您的应用程序时，您的应用程序会生成唯一 `sessionId`。在整个会话中，您必须在所有活动中使用相同的 `sessionId`。Amazon Personalize 在用户登录之前使用 `sessionId` 将事件与用户关联起来。

Amazon Personalize 在训练时不会使用来自匿名用户的事件，除非您将他们与 `userId` 关联起来。有关更多信息，请参阅 [为匿名用户构建持续的事件历史记录](#recording-events-building-continuous-event-history)。

要为匿名用户提供[实时个性化设置](use-case-recipe-features.md#about-real-time-personalization)，请在您的或请求中将 sessionID 指定为用户 ID。[GetRecommendations](API_RS_GetRecommendations.md) GetActionRecommendations 
+ 有关显示如何记录与 PutEvents 操作以及会话 ID 和用户 ID 的项目交互事件的代码示例，请参阅。[记录单个物品交互事件](putevents-example.md)
+ 有关显示如何使用 PutActionInteractions 操作以及 sessionID 和用户 ID 记录动作交互事件的代码示例，请参阅。[记录单个操作交互事件](record-single-action-interaction.md)

### 为匿名用户构建持续的事件历史记录
<a name="recording-events-building-continuous-event-history"></a>

 要为匿名用户构建事件历史记录并让 Amazon Personalize 在训练时使用他们的事件，请至少记录一个同时含 `sessionId` 和 `userId` 的事件。然后，您可以为 `userId` 记录任意数量的事件。在开始提供 `userId` 之后，`sessionId` 可以改变。在下一次全面的再训练中，Amazon Personalize 会将 `userId` 与按原始 `sessionId` 跟踪的匿名用户历史记录关联起来。

再训练完成后，将根据按匿名事件的 `sessionId` 跟踪的活动以及按 `userId` 跟踪的任何事件，提出建议。

**注意**  
 如果您的用户没有创建账户，而您希望 Amazon Personalize 在训练时使用这些数据，则您可以使用 `sessionId` 作为事件中的 `userId`。但是，如果用户最终创建了一个账户，则您将无法将匿名浏览中的事件与他们的新 `userId` 关联起来。

## 第三方事件跟踪服务
<a name="record-events-third-parties"></a>

以下客户数据平台 (CDPs) 可以帮助您从应用程序中收集事件数据并将其发送到 Amazon Personalize。
+ **Amplitude** - 您可以使用 Amplitude 来跟踪用户操作，以帮助您了解用户的行为。有关使用 Amplitude 和 Amazon Personalize 的信息，请参阅以下 Amazon 合作伙伴网络 (APN) 博客文章：[使用 Amplitude 和 Amazon Personalize 衡量个性化的有效性](https://www.amazonaws.cn/blogs/apn/measuring-the-effectiveness-of-personalization-with-amplitude-and-amazon-personalize/)。
+ **Segment** - 您可以使用 Segment 将您的数据发送到 Amazon Personalize。有关将 Segment 与 Amazon Personalize 集成的更多信息，请参阅 [Amazon Personalize 目标](https://segment.com/docs/connections/destinations/catalog/amazon-personalize/)。

## 示例实施
<a name="recording-events-sample-architecture"></a>

**有关展示如何使用 Amazon Personalize 对使用事件跟踪器和[PutEvents](API_UBS_PutEvents.md)操作的用户实时行为做出反应的 Jupyter 笔记本示例，请参阅存储库 getting\$1starting\$1started 文件夹中的 [2.view\$1campaign\$1and\$1](https://github.com/aws-samples/amazon-personalize-samples/blob/master/getting_started/notebooks/2.View_Campaign_And_Interactions.ipynb) interactions.ipynb。[amazon-personalize-samples](https://github.com/aws-samples/amazon-personalize-samples)** GitHub 

 有关展示如何直播用户与推荐互动的事件的示例，请参阅 Amazon Personalize 示例存储库中的 [streaming\$1e](https://github.com/aws-samples/amazon-personalize-samples/tree/master/next_steps/operations/streaming_events) vents。 GitHub 

 有关包含要在您的 Amazon Personalize 资源和客户端应用程序之间进行实时 APIs 部署的源代码和支持文件的完整示例，请参阅 Amazon 示例 GitHub 存储库 APIs中的[实时个性化](https://github.com/aws-samples/personalization-apis)。该项目包括如何实施以下内容：
+ 用户上下文和用户事件收集
+ 响应缓存
+ 根据物品元数据装饰建议
+ A/B 测试
+  API 身份验证 