キャンペーンを使用した Amazon Personalize ソリューションバージョンのデプロイ - Amazon Personalize

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

キャンペーンを使用した Amazon Personalize ソリューションバージョンのデプロイ

カスタムリソースを使ったリアルタイムのレコメンデーションについては、ソリューションバージョンの作成 を完了すると、ソリューションバージョンをキャンペーンでデプロイする準備が整います。

キャンペーンでは、アプリケーションユーザー向けのリアルタイムレコメンデーションを生成するためのプロビジョンドトランザクション容量を搭載した、ソリューションバージョン (トレーニング済みモデル) がデプロイされます。キャンペーンを作成したら、GetRecommendations または GetPersonalizedRanking の API 操作を使用してレコメンデーションを取得します。バッチアイテムのレコメンデーションやユーザーセグメントを取得する場合は、キャンペーンを作成する必要はありません。詳細については、バッチアイテムレコメンデーションの取得またはバッチユーザーセグメントの取得を参照してください。

キャンペーンを作成するときに、以下を設定できます。

Amazon Personalize コンソール、 AWS Command Line Interface (AWS CLI)、または AWS SDKsを使用してキャンペーンを作成できます。レコメンデーションでメタデータを有効にするなど、既存のキャンペーンの設定を変更する場合は、キャンペーンを更新する必要があります。詳細については、「Amazon Personalize キャンペーンの設定の更新」を参照してください。

キャンペーンがアクティブになっている間は、キャンペーンコストが発生します。不要なコストを回避するには、完了したらキャンペーンを削除してください。キャンペーンのコストについては、「Amazon Personalize の料金」を参照してください。

自動キャンペーン更新の有効化

キャンペーンを作成するときに、キャンペーンの自動更新を有効にできます。自動更新では、キャンペーンは自動的に更新され、ソリューションの最新の自動または手動でトレーニングされたソリューションバージョンがデプロイされます。これにより、キャンペーンを最新の状態に保つことが容易になります。

例えば、ソリューションが自動トレーニングを使用して 7 日ごとに新しいソリューションバージョンを作成する場合、キャンペーンは毎週のトレーニングごとに最新のソリューションバージョンを使用するように自動的に更新されます。自動キャンペーン更新を使用しない場合は、キャンペーンを手動で更新して、最新のトレーニング済みモデルをデプロイする必要があります。

  • Amazon Personalize コンソールを使用してキャンペーンを作成するときに自動キャンペーン更新を有効にするには、キャンペーンの詳細ソリューションの最新バージョンを使用するように自動更新を選択します。最新の更新のタイムスタンプは、キャンペーンの詳細ページで確認できます。

    詳細については、「キャンペーンの作成 (コンソール)」を参照してください。

  • CreateCampaign API オペレーションの使用時にキャンペーンの自動更新を有効にするには、 SolutionVersionArnパラメータにソリューションの Amazon リソースネーム (ARN) を SolutionArn/$LATEST形式で指定します。でcampaignConfigenableMetadataInInferenceResponseを に設定しますtrue

    最新のキャンペーン更新のタイムスタンプを取得するには、 DescribeCampaign API オペレーションを使用してレスポンスlatestCampaignUpdateの詳細を確認します。

    自動更新を有効にする方法を示すコードサンプルについては、キャンペーンの作成 (AWS CLI)「」または「」を参照してくださいキャンペーンの作成 (AWS SDKs)

1 秒あたりの最小プロビジョンドトランザクション数とオートスケーリング

重要

minProvisionedTPS の値を高く設定するとコストが増加します。最初は minProvisionedTPS に 1 を使用することをお勧めします (デフォルト)。Amazon CloudWatch メトリクスを使用して使用状況を追跡し、minProvisionedTPS必要に応じて を増やします。

Amazon Personalize のキャンペーンを作成する場合、キャンペーンの 1 秒あたりのプロビジョニングされる最小トランザクション数 (minProvisionedTPS) を指定できます。これは Amazon Personalize によってプロビジョニングされたキャンペーンのベースライントランザクションスループットです。キャンペーンがアクティブである間の最低請求額を設定します。トランザクションは単一の GetRecommendations または GetPersonalizedRanking リクエストです。デフォルト minProvisionedTPS は 1 です。

TPS が minProvisionedTPS を超えて増加した場合、Amazon Personalize はプロビジョンド容量を自動スケーリングしますが、minProvisionedTPS を下回ることはありません。容量が引き上げられている間に短時間の遅延が生じます。これにより、トランザクションの損失が生じる可能性があります。トラフィックが減少すると、容量は minProvisionedTPS に戻ります。

プロビジョニングされた最小 TPS、またはリクエストが を超えた場合はminProvisionedTPS実際の TPS に対して課金されます。実際の TPS は、行ったレコメンデーションリクエストの総数です。低い から始めてminProvisionedTPS、Amazon CloudWatch メトリクスを使用して使用状況を追跡し、minProvisionedTPS必要に応じて を増やすことをお勧めします。

キャンペーンのコストの詳細については、「Amazon Personalize の料金」を参照してください。

レコメンデーションのアイテムメタデータ

重要

User-Personalization-v2 または Personalized-Ranking-v2 レシピを使用する場合、メタデータの追加コストは発生しません。他のすべてのレシピとすべてのドメインのユースケースでは、追加料金が発生します。詳細については、「Amazon Personalize の料金」を参照してください。

レコメンデーションを取得すると、Amazon Personalize にレコメンデーション結果にアイテムメタデータを含めることができます。リクエストでは、含める Items データセットから列を選択できます。Amazon Personalize は、レコメンデーションレスポンス内の各アイテムについてこのデータを返します。

メタデータを使用して、映画のジャンルをカルーセルに追加するなど、ユーザーインターフェイスのレコメンデーションを充実させることができます。あるいは、レコメンデーションの質を視覚的に評価するのにも使えます。アプリで生成 AI を使用している場合は、メタデータを AI プロンプトに組み込んで、より関連性の高いコンテンツを生成できます。Amazon Personalize の生成 AI の使用に関する詳細については、「Amazon Personalize と生成 AI」を参照してください。

メタデータの有効化

レコメンデーションにメタデータを追加するには、メタデータの列を含むアイテムデータセットが必要です。トレーニングではメタデータを使用する必要はありません。データセットの作成については、「データセットとスキーマの作成」を参照してください。データの管理と更新については、「データセット内のトレーニングデータの管理」を参照してください。

User-Personalization-v2 または Personalized-Ranking-v2 レシピを使用する場合、キャンペーンにはアイテムメタデータをレコメンデーション結果に含めるオプションが自動的にあります。キャンペーンのメタデータを手動で有効にすることはできません。他のすべてのレシピとドメインのユースケースでは、メタデータオプションを有効にする必要があります。

  • Amazon Personalize コンソールでメタデータを有効にするには、キャンペーンを作成するときに、[キャンペーン詳細][レコメンデーション結果にあるアイテムのメタデータを返す] を選択します。詳細については、「キャンペーンの作成 (コンソール)」を参照してください。

  • AWS SDKs または でメタデータを有効にするには AWS CLI、 CreateCampaign API オペレーション および を campaignConfigenableMetadataInInferenceResponseに設定しますtrue。詳細については、キャンペーンの作成 (AWS CLI)またはキャンペーンの作成 (AWS SDKs)を参照してください。

キャンペーンの作成 (コンソール)

重要

キャンペーンがアクティブになっている間は、キャンペーンコストが発生します。不要なコストを回避するには、完了したらキャンペーンを削除してください。キャンペーンのコストについては、「Amazon Personalize の料金」を参照してください。

ソリューションバージョンのステータスが [Active ] (アクティブ) になったら、Amazon Personalize のキャンペーンでそのソリューションバージョンをデプロイする準備が整います。

キャンペーンを作成するには (コンソール)
  1. https://console.aws.amazon.com/personalize/home で Amazon Personalize コンソールを開き、アカウントにサインインします。

  2. デプロイするソリューションバージョンのデータセットグループを選択します。

  3. ナビゲーションペインの [カスタムリソース] で、[キャンペーン] を選択します。

  4. [Campaigns] (キャンペーン) のページで、[Create campaign] (キャンペーンを作成) を選択します。

  5. [Create new campaign] (新しいキャンペーンを作成) ページの [Campaign details] (キャンペーンの詳細) で、次の情報を入力します。

    • キャンペーン名 - キャンペーンの名前を入力します。ここで入力したテキストは、[Campaign] (キャンペーン) ダッシュボードと詳細のページに表示されます。

    • ソリューション - 先ほど作成したソリューションを選択します。

    • ソリューションの最新のソリューションバージョンを使用するように自動的に更新する – キャンペーンで最新のアクティブなソリューションバージョンを自動的に使用するには、このオプションを選択します。これを選択しない場合は、新しいソリューションバージョンをデプロイするたびにキャンペーンを手動で更新する必要があります。詳細については、「自動キャンペーン更新の有効化」を参照してください。

    • ソリューションバージョン ID – 自動キャンペーン更新を使用して最新のソリューションバージョンを使用しない場合は、デプロイするソリューションバージョンの ID を選択します。

    • 1 秒あたりの最小プロビジョンドトランザクション (API では minProvisionedTPS と呼ばれます) - Amazon Personalize がサポートしている 1 秒あたりの最小プロビジョンドトランザクションを設定します。値を大きくすると、料金が増加します。1 (デフォルト) から始めることをお勧めします。Amazon CloudWatch メトリクスを使用して使用状況を追跡し、minProvisionedTPS必要に応じて を増やします。詳細については、「1 秒あたりの最小プロビジョンドトランザクション数とオートスケーリング」を参照してください。

    • レコメンデーション結果にアイテムメタデータを返す – レコメンデーション結果にメタデータを含める場合は、このオプションを選択します。有効にすると、レコメンデーションを取得するときに Items データセットの列を指定できます。詳細については、「レコメンデーションのアイテムメタデータ」を参照してください。

  6. User-Personalization レシピを使用した場合、キャンペーン設定 で、オプションで探索の重みと探索項目の経過時間カットオフ の値を入力できます。詳細については、「User-Personalization」を参照してください。

  7. [タグ] には、オプションで任意のタグを追加します。Amazon Personalize リソースのタグ付けの詳細については、「Amazon Personalize リソースのタグ付け」を参照してください。

  8. [キャンペーンの作成] を選択します。

  9. キャンペーンの詳細のページで、キャンペーンのステータスが [Active] (アクティブ) の場合、キャンペーンを使用してレコメンデーションを取得し、インプレッションを記録できます。詳細については、「ステップ 4: レコメンデーションを取得する」を参照してください。

    キャンペーンのステータスが ACTIVE になると、キャンペーンの準備が整います。ソリューションバージョンを再トレーニングする場合、またはキャンペーン設定を変更する場合は、キャンペーンを更新する必要があります。詳細については、「Amazon Personalize キャンペーンの設定の更新」を参照してください。

キャンペーンの作成 (AWS CLI)

重要

キャンペーンがアクティブになっている間は、キャンペーンコストが発生します。不要なコストを回避するには、完了したらキャンペーンを削除してください。キャンペーンのコストについては、「Amazon Personalize の料金」を参照してください。

ソリューションバージョンがアクティブになったら、Amazon Personalize キャンペーンでデプロイする準備が整います。でキャンペーンを作成するには AWS CLI、 create-campaign コマンドを使用します。

次のコードサンプルは、キャンペーンを作成する方法を示しています。User-Personalization レシピを使用するソリューションの最新バージョンをデプロイします。作成するキャンペーンは、将来のソリューションバージョンを使用するように自動的に更新されます。このコードでは、次の設定を使用します。

  • ソリューションの最新のソリューションバージョンを使用するように自動的に更新するようにキャンペーンを設定します。 solution-version-arnsolution ARN/$LATEST 形式、 は syncWithLatestSolutionVersionですTrue。コードを使用するには、 をソリューションの Amazon リソースネーム (ARN) solution ARNに置き換えます。

    自動 を無効にするにはsyncWithLatestSolutionVersion、ソリューションバージョン ARN ( なし/$LATEST) のみを指定し、 syncWithLatestSolutionVersionを に設定しますFalse

  • enableMetadataWithRecommendations オプションを に設定しますTrue。これにより、レコメンデーションリクエストオプションにアイテムデータセットのアイテムメタデータをレコメンデーション結果に含めることができます。このオプションを無効にするには、 に設定しますFalse。詳細については、「レコメンデーションのアイテムメタデータ」を参照してください。

  • min-provisioned-tps は 1 (デフォルト) に設定されます。最初は minProvisionedTPS に 1 を使用することをお勧めします (デフォルト)。Amazon CloudWatch メトリクスを使用して使用状況を追跡し、minProvisionedTPS必要に応じて を増やします。詳細については、「1 秒あたりの最小プロビジョンドトランザクション数とオートスケーリング」を参照してください。

すべてのパラメータの詳細なリストについては、「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 を呼び出します。キャンペーンを削除しても、キャンペーンの一部であるソリューションバージョンは削除されません。

キャンペーンを作成したら、それを使用してレコメンデーションを作成できます。詳細については、「ステップ 4: レコメンデーションを取得する」を参照してください。

キャンペーンの作成 (AWS SDKs)

重要

キャンペーンがアクティブになっている間は、キャンペーンコストが発生します。不要なコストを回避するには、完了したらキャンペーンを削除してください。キャンペーンのコストについては、「Amazon Personalize の料金」を参照してください。

ソリューションバージョンがアクティブになったら、Amazon Personalize キャンペーンでデプロイする準備が整います。 AWS SDKsオペレーションを使用します。 CreateCampaign

次のコードサンプルは、キャンペーンを作成する方法を示しています。このコードは、User-Personalization レシピを使用するソリューションの最新バージョンをデプロイします。作成するキャンペーンは、将来のソリューションバージョンを使用するように自動的に更新されます。このコードでは、次の設定を使用します。

  • ソリューションの最新のソリューションバージョンを使用するように自動的に更新するようにキャンペーンを設定します。 solutionVersionArnsolution ARN/$LATEST 形式、 は syncWithLatestSolutionVersionですTrue。コードを使用するには、 をソリューションバージョンの Amazon リソースネーム (ARN) solution ARNに置き換えます。

    自動 を無効にするにはsyncWithLatestSolutionVersion、ソリューションバージョン ARN ( なし/$LATEST) のみを指定し、 syncWithLatestSolutionVersionを に設定しますFalse

  • enableMetadataWithRecommendations オプションを に設定しますTrue。これにより、レコメンデーションリクエストオプションにアイテムデータセットのアイテムメタデータをレコメンデーション結果に含めることができます。このオプションを無効にするには、 に設定しますFalse。詳細については、「レコメンデーションのアイテムメタデータ」を参照してください。

  • minProvisionedTPS は 1 (デフォルト) に設定されます。(minProvisionedTPSデフォルト) には 1 から始めることをお勧めします。Amazon CloudWatch メトリクスを使用して使用状況を追跡し、minProvisionedTPS必要に応じて を増やします。詳細については、「1 秒あたりの最小プロビジョンドトランザクション数とオートスケーリング」を参照してください。

すべてのパラメータの詳細なリストについては、「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 になると、キャンペーンの準備が整います。現在のステータスを取得するには、 を呼び出しDescribeCampaignstatusフィールドが であることを確認しますACTIVE

ソリューションバージョンを手動で再トレーニングする場合、またはキャンペーン設定を変更する場合は、キャンペーンを更新する必要があります。詳細については、「Amazon Personalize キャンペーンの設定の更新」を参照してください。

Amazon Personalize では、作成したキャンペーンを一覧表示ListCampaignsするなど、キャンペーンを管理するためのオペレーションを利用できます。キャンペーンを削除するには、DeleteCampaign を呼び出します。キャンペーンを削除しても、キャンペーンの一部であるソリューションバージョンは削除されません。

キャンペーンを作成したら、これを使用して推奨を行うことができます。詳細については、「ステップ 4: レコメンデーションを取得する」を参照してください。