イベントのアクティブ化を遅延させる

重要

2023 年 9 月 20 日以降は、新しい Personalizer リソースを作成できなくなります。 Personalizer サービスは、2026 年 10 月 1 日に廃止されます。

イベントの遅延アクティブ化を使用すると、ユーザーが実際にページを表示したり電子メールを開いたりしない可能性を考慮して、パーソナライズされた Web サイトやメーリング キャンペーンを作成できます。 これらのシナリオでは、結果が使用されたりユーザーに表示されたりするかどうかをアプリケーション側で知る前に、アプリケーションで Rank を呼び出す必要があります。 コンテンツがユーザーに表示されない場合は、学習のためにコンテンツに対して既定の報酬 (通常は 0) を想定する必要はありません。 遅延アクティブ化を使用すると、Rank 呼び出しの結果をある時点で使用し、イベントを後から、またはコード内の他の場所で、学習する必要があるかどうかを決定できます。

遅延アクティブ化の一般的なシナリオ

イベントのアクティブ化の遅延は、次の例のようなシナリオで役に立ちます。

  • ユーザー向けにパーソナライズされた Web ページを事前にレンダリングしていますが、Personalizer のアクションの選択がいくつかのビジネス ロジックによってオーバーライドされるため、それをユーザーが見ない可能性があります。
  • Web ページの "下半分" にあるコンテンツをパーソナライズしていて、そのコンテンツがユーザーに見られない可能性が高いと考えられます。
  • マーケティング電子メールをパーソナライズしていて、ユーザーに開かれたことがない電子メールによるトレーニングは避ける必要があります。
  • 動的メディア チャネルをパーソナライズしましたが、Personalizer によって選択された曲や動画に到達する前に、ユーザーがチャネルの再生を停止する可能性があります。

一般的に、これらのシナリオは以下の場合に発生します。

  • UI または時間の制約により、ユーザーが見るか見ないかわからない UI を事前にレンダリングしている。
  • 出力を使用するかどうかわかる前に Rank 呼び出しを行う予測パーソナライズを、アプリケーションが実行している。

イベントのアクティブ化を遅延させ、後でアクティブ化する方法

イベントのアクティブ化を遅延させるには、要求本文で、deferActivation = True にして Rank を呼び出します。

パーソナライズされたコンテンツまたはメディアがユーザーに表示され、報酬が妥当であることがわかったらすぐに、そのイベントをアクティブ化する必要があります。 そうするには、eventId を指定して Activate API を呼び出します。

その EventID 呼び出しの Activate API 呼び出しは、報酬の待機時間枠が終了する前に受信される必要があります。

遅延アクティブ化での動作

Personalizer は、次のようにイベントと報酬から学習します。

  • deferActivation = True にして Rank を呼び出し、その eventId の Activate API を呼び出さ "ない" で、Reward を呼び出す場合、Personalizer はイベントから学習しません。
  • deferActivation = True にして Rank を呼び出し、その eventId の Activate API を "呼び出して"、Reward を呼び出す場合、Personalizer は指定された報酬スコアを使用してイベントから学習します。
  • deferActivation = True にして Rank を呼び出し、その eventId の Activate API を "呼び出す" ものの、Reward の呼び出しは省略する場合、Personalizer は構成内の既定の報酬スコア セットを使用してイベントから学習します。

次のステップ