通过活动部署 Amazon Personalize 解决方案版本 - Amazon Personalize
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

通过活动部署 Amazon Personalize 解决方案版本

要获取包含自定义资源的实时建议,完成手动创建解决方案版本后,您就可以通过市场活动部署解决方案版本了。

市场活动 部署的解决方案版本(经过训练的模型)具有预调配的事务容量,用于生成实时建议。创建广告活动后,您可以使用GetRecommendationsGetPersonalizedRankingAPI操作来获取推荐。如果您获得批量商品推荐或用户细分,则无需创建广告系列。有关更多信息,请参阅获取批量商品推荐获取批量用户细分

在创建广告系列时,您可以配置以下内容:

  • 您可以将活动配置为自动更新以使用您的解决方案的最新版本。有关更多信息,请参阅启用广告系列自动更新

  • 您可以在推荐中启用商品元数据。有关更多信息,请参阅 推荐中的商品元数据

  • 您可以为该活动指定每秒配置的最低交易量。这是 Amazon Personalize 为该市场活动预置的基准事务吞吐量。它会设置市场活动处于活动状态时的最低账单费用。有关更多信息,请参阅 预调配的最低每秒事务数和自动扩缩

您可以使用 Amazon Personalize 控制台创建活动, Amazon Command Line Interface (Amazon CLI),或 Amazon SDKs。如果您想更改现有广告系列的设置,例如在推荐中启用元数据,则必须更新您的广告活动。有关更多信息,请参阅 更新 Amazon Personalize 广告活动的配置

当广告活动处于活动状态时,您需要支付广告费用。为避免不必要的费用,请务必在活动结束后删除该活动。有关活动费用的信息,请参阅 Amazon Personalize 定价

启用广告系列自动更新

创建广告活动时,您可以启用广告系列的自动更新。通过自动更新,活动会自动更新以部署最新的自动或手动训练的解决方案版本。这使您可以更轻松地将广告系列保持最新状态。

例如,如果您的解决方案使用自动培训每七天创建一次新的解决方案版本,则您的活动将自动更新为在每周培训中使用最新的解决方案版本。如果您不使用自动广告系列更新,则必须手动更新广告系列以部署经过训练的最新模型。

  • 要在使用 Amazon Personalize 控制台创建活动时启用活动自动更新,请在活动详情中选择自动更新以使用解决方案的最新解决方案版本。您可以在活动详情页面上找到最新更新的时间戳。

    有关更多信息,请参阅 创建市场活动(控制台)

  • 要在使用CreateCampaignAPI操作时启用活动自动更新,请为SolutionVersionArn参数指定SolutionArn/$LATEST格式的解决方案的 Amazon 资源名称 (ARN)。在中campaignConfig,设置enableMetadataInInferenceResponsetrue

    要获取最新活动更新的时间戳,您可以使用该DescribeCampaignAPI操作并在响应中查看latestCampaignUpdate详细信息。

    有关向您展示如何启用自动更新的代码示例,请参阅创建广告活动 (Amazon CLI)创建广告活动 (Amazon SDKs)

预调配的最低每秒事务数和自动扩缩

重要

minProvisionedTPS 会增加您的成本。我们建议从 1 开始设置 minProvisionedTPS(默认值)。使用 Amazon CloudWatch 指标跟踪您的使用情况,并在必要minProvisionedTPS时增加使用量。

在创建 Amazon Personalize 市场活动时,您可以为该市场活动指定预置的每秒最低事务数 (minProvisionedTPS)。这是 Amazon Personalize 为该市场活动预置的基准事务吞吐量。它会设置市场活动处于活动状态时的最低账单费用。事务是单个 GetRecommendationsGetPersonalizedRanking 请求。默认 minProvisionedTPS 为 1。

如果您的容量超过TPS了minProvisionedTPS,Amazon Personalize 会自动向上和向下扩展预配置容量,但永远不会低于预配置容量。minProvisionedTPS增加容量时会有短时间延迟,这可能会导致事务丢失。当您的流量减少时,容量将恢复到 minProvisionedTPS

您需要按最低预配额付费,如果您的请求超过实际预配额,TPS则按实际TPS预配额收费。minProvisionedTPS实际值TPS是您提出的推荐请求总数。我们建议从低开始minProvisionedTPS,使用 Amazon CloudWatch 指标跟踪您的使用情况,然后minProvisionedTPS根据需要增加使用量。

有关市场活动成本的更多信息,请参阅 Amazon Personalize 定价

推荐中的商品元数据

重要

如果您使用用户个性化-v2 或 personalized-ranking-v2 配方,则元数据不会产生额外的费用。对于所有其他配方和所有域名用例,您需要支付额外费用。有关更多信息,请参阅 Amazon Personalize 定价

收到推荐后,您可以让 Amazon Personalize 在推荐结果中包含商品元数据。在您的请求中,您可以从 Items 数据集中选择要包含的列。Amazon Personalize 会在建议响应中返回每个物品的这些数据。

您可以使用元数据来丰富用户界面中的建议,例如将电影的类型添加到轮播中。或者,您可以用它来直观地评测建议质量。如果您在应用程序中使用生成式人工智能,则可以将元数据插入人工智能提示中,以生成相关性更高的内容。有关 Amazon Personalize 与生成式人工智能结合使用的更多信息,请参阅Amazon Personalize 和生成式人工智能

启用元数据

要向建议添加元数据,您必须拥有包含一列元数据的物品数据集。您不一定要在训练中使用元数据。有关创建数据集的信息,请参阅创建架构和数据集。有关更新数据的信息,请参见训练后更新数据集中的数据

如果您使用用户个性化-v2 或 personalized-ranking-v2 配方,则广告系列会自动选择在推荐结果中包含商品元数据。您没有手动为广告活动启用元数据。对于所有其他配方和域用例,您必须启用元数据选项:

创建市场活动(控制台)

重要

当广告活动处于活动状态时,您需要支付广告费用。为避免不必要的费用,请务必在活动结束后删除该活动。有关活动费用的信息,请参阅 Amazon Personalize 定价

在您的解决方案版本状态变为“活动”后,您就可以通过 Amazon Personalize 市场活动进行部署了。

创建市场活动(控制台)
  1. https://console.aws.amazon.com/personalize/家中打开 Amazon Personalize 控制台并登录您的账户。

  2. 选择包含要部署的解决方案版本的数据集组。

  3. 在导航窗格中,在自定义资源下选择市场活动

  4. 市场活动选项卡上,选择创建市场活动

  5. 创建新的市场活动页面上,对于市场活动详细信息,提供以下信息:

    • 市场活动名称 – 输入市场活动的名称。您在此处输入的文本将显示在市场活动控制面板和详细信息页面上。

    • 解决方案 – 选择您刚创建的解决方案。

    • 自动更新以使用您的解决方案的最新版本 ——选择此选项可让活动自动使用最新的有效解决方案版本。如果您不选择此选项,则每次要部署新的解决方案版本时都必须手动更新活动。有关更多信息,请参阅 启用广告系列自动更新

    • 解决方案版本 ID — 如果您不使用自动活动更新来使用最新的解决方案版本,请选择要部署的解决方案版本的 ID。

    • 每秒配置的最低交易量(调minProvisionedTPS入APIs)-设置 Amazon Personalize 支持的每秒最低预配置交易量。较高的值会增加您的费用。我们建议您从 1(默认值)开始。使用 Amazon CloudWatch 指标跟踪您的使用情况,并在必要minProvisionedTPS时增加使用量。有关更多信息,请参阅 预调配的最低每秒事务数和自动扩缩

    • 在推荐结果中返回项目元数据-如果您希望该选项在推荐结果中包含元数据,请选择此选项。如果启用,则可以在获得推荐时从 Items 数据集中指定列。有关更多信息,请参阅 推荐中的商品元数据

  6. 如果您在战役配置中使用了用户个性化配方,则可以选择输入探索权重和探索物品存放期限的值。有关更多信息,请参阅 User-Personalization

  7. 对于标签,可以选择添加任何标签。有关标记 Amazon Personalize 资源的更多信息,请参阅为 Amazon Personalize 资源添加标签

  8. 选择创建市场活动

  9. 在市场活动详细信息页面上,当市场活动状态变为活动 时,您可以使用市场活动来获取建议并记录展示量。有关更多信息,请参阅 从 Amazon Personalize 获取建议

    当活动状态为时,活动已准备就绪ACTIVE。如果您重新培训解决方案版本,或者想要更改广告系列设置,则必须更新您的广告系列。有关更多信息,请参阅 更新 Amazon Personalize 广告活动的配置

创建广告活动 (Amazon CLI)

重要

当广告活动处于活动状态时,您需要支付广告费用。为避免不必要的费用,请务必在活动结束后删除该活动。有关活动费用的信息,请参阅 Amazon Personalize 定价

在您的解决方案版本激活后,您就可以通过 Amazon Personalize 活动进行部署了。要创建广告系列,请使用 Amazon CLI,你使用create-campaign命令。

以下代码示例向您展示了如何创建广告系列。它部署了使用用户个性化配方的解决方案的最新解决方案版本。它创建的活动会自动更新以使用 future 的解决方案版本。该代码使用以下配置:

  • 它将活动配置为自动更新以使用适用于您的解决方案的最新解决方案版本:solution ARN/$LATEST格式为,syncWithLatestSolutionVersionTruesolution-version-arn要使用该代码,请solution ARN替换为解决方案的 Amazon 资源名称 (ARN)。

    要禁用自动syncWithLatestSolutionVersion,请仅指定解决方案版本ARN(不/$LATEST包括),并将其设置syncWithLatestSolutionVersionFalse

  • 它将enableMetadataWithRecommendations选项设置为True。这使推荐请求选项能够将来自项目数据集的项目元数据和推荐结果包括在内。要禁用此选项,请将其设置为False。有关更多信息,请参阅 推荐中的商品元数据

  • 它设置min-provisioned-tps为 1(默认值)。我们建议从 1 开始设置 minProvisionedTPS(默认值)。使用 Amazon CloudWatch 指标跟踪您的使用情况,并在必要minProvisionedTPS时增加使用量。有关更多信息,请参阅 预调配的最低每秒事务数和自动扩缩

要获得所有参数的完整列表,请参阅CreateCampaign

aws personalize create-campaign \ --name campaign-name \ --solution-version-arn solution-arn/\$LATEST \ --min-provisioned-tps 1 \ --campaign-config "{"\"syncWithLatestSolutionVersion"\": "true", "\"enableMetadataWithRecommendations"\": "true"}"

当活动状态为时,活动已准备就绪ACTIVE。要获取当前状态,请调用 DescribeCampaign 并检查 status 字段是否为 ACTIVE

如果您对解决方案版本进行了重新培训,但您的广告系列没有自动更新以使用最新的解决方案版本,或者您想更改广告系列设置,则必须更新您的广告系列。有关更多信息,请参阅 更新 Amazon Personalize 广告活动的配置

Amazon Personalize 为您提供管理活动的操作,例如ListCampaigns列出您创建的广告活动。您可以通过调用 DeleteCampaign 来删除活动。如果您删除一个市场活动,不会删除属于该市场活动的一部分的解决方案版本。

创建广告活动后,你可以用它来提出推荐。有关更多信息,请参阅 从 Amazon Personalize 获取建议

创建广告活动 (Amazon SDKs)

重要

当广告活动处于活动状态时,您需要支付广告费用。为避免不必要的费用,请务必在活动结束后删除该活动。有关活动费用的信息,请参阅 Amazon Personalize 定价

在您的解决方案版本激活后,您就可以通过 Amazon Personalize 活动进行部署了。要创建广告系列,请使用 Amazon SDKs,则使用该CreateCampaignAPI操作。

以下代码示例向您展示了如何创建广告系列。该代码部署了使用用户个性化配方的解决方案的最新解决方案版本。它创建的活动会自动更新以使用 future 的解决方案版本。该代码使用以下配置:

  • 它将活动配置为自动更新以使用适用于您的解决方案的最新解决方案版本:solution ARN/$LATEST格式为,syncWithLatestSolutionVersionTruesolutionVersionArn要使用该代码,请solution ARN替换为您解决方案版本的 Amazon 资源名称 (ARN)。

    要禁用自动syncWithLatestSolutionVersion,请仅指定解决方案版本ARN(不/$LATEST包括),并将其设置syncWithLatestSolutionVersionFalse

  • 它将enableMetadataWithRecommendations选项设置为True。这使推荐请求选项能够将来自项目数据集的项目元数据和推荐结果包括在内。要禁用此选项,请将其设置为False。有关更多信息,请参阅 推荐中的商品元数据

  • 它设置minProvisionedTPS为 1(默认值)。我们建议您从 1 开始minProvisionedTPS(默认)。使用 Amazon CloudWatch 指标跟踪您的使用情况,并在必要minProvisionedTPS时增加使用量。有关更多信息,请参阅 预调配的最低每秒事务数和自动扩缩

要获得所有参数的完整列表,请参阅CreateCampaign

SDK for Python (Boto3)
import boto3 personalize = boto3.client('personalize') response = personalize.create_campaign( name = 'campaign name', solutionVersionArn = 'solution ARN/$LATEST', minProvisionedTPS = 1, campaignConfig = {"syncWithLatestSolutionVersion": True, "enableMetadataWithRecommendations": True} ) arn = response['campaignArn'] description = personalize.describe_campaign(campaignArn = arn)['campaign'] print('Name: ' + description['name']) print('ARN: ' + description['campaignArn']) print('Status: ' + description['status'])
SDK for JavaScript v3
// Get service clients module and commands using ES6 syntax. import { CreateCampaignCommand, PersonalizeClient } from "@aws-sdk/client-personalize"; // create personalizeClient const personalizeClient = new PersonalizeClient({ region: "REGION" }); // set the campaign parameters export const createCampaignParam = { solutionVersionArn: "SOLUTION_ARN/$LATEST" /* required */, name: "NAME" /* required */, minProvisionedTPS: 1 /* optional */, campaignConfig: { /* optional */ syncWithLatestSolutionVersion: true, enableMetadataWithRecommendations: true, }, }; export const run = async () => { try { const response = await personalizeClient.send( new CreateCampaignCommand(createCampaignParam) ); console.log("Success", response); return response; // For unit tests. } catch (err) { console.log("Error", err); } }; run();

当活动状态为时,活动已准备就绪ACTIVE。要获取当前状态DescribeCampaign,请致电并检查该status字段是否为ACTIVE

如果您手动重新训练解决方案版本,或者想要更改广告系列设置,则必须更新您的广告系列。有关更多信息,请参阅 更新 Amazon Personalize 广告活动的配置

Amazon Personalize 为您提供管理活动的操作,例如ListCampaigns列出您创建的广告活动。您可以通过调用 DeleteCampaign 来删除活动。如果您删除一个市场活动,不会删除属于该市场活动的一部分的解决方案版本。

在创建您的市场活动后,请使用它来进行推荐。有关更多信息,请参阅 从 Amazon Personalize 获取建议