開発者コンソールを使ってA/Bテストをセットアップする

ASK開発者コンソールを使って、エンドポイントベースのテストを作成できます。テストをセットアップして有効にしたあとに、スキルユーザーがスキルを起動すると、2つのバージョンのいずれかがランダムに提供されます。テストが終了したら、収集したメトリクスを分析し、どのスキルバージョンを使い続けるかを判断します。

このチュートリアルについて

このチュートリアルでは、開発者コンソールを使ってA/Bテストをセットアップする方法を学習します。

前提条件

A/Bテストの利用資格条件

A/Bテストを実施するには、以下の利用資格条件を満たす必要があります。

チュートリアルの条件

このチュートリアルでは、A/Bテストを行う2つのスキルバージョンに具体的にどのような変更を加えるかについては扱いません。このチュートリアルを開始する前に、A/Bテストの目的を設定し、スキルにどのような変更を加えるかを決めておく必要があります。

手順の概要

以下のタスクリストは、このチュートリアルの各ステップをまとめたものです。

ステップ1: T1とCの動作を分ける

以下の手順に従って、スキルの動作をT1とCに分けます。

エンドポイントベース

エンドポイントベースのA/Bテストを実行するには、スキルコードをT1とCのバージョンに分岐させる必要があります。以下は、その方法のコード例です。

Node.jsの例

const experimentId = "<<experiment_id>>"; // ASK CLI/開発者コンソールでテストIDを自分のIDに置き換えます
      const experiment = handlerInput.requestEnvelope.context.Experimentation
                          .activeExperiments.find(exp => exp.id == experimentId);
      if (experiment) {

        const treatment = experiment.assignedVariant.name;

        if (treatment == interfaces.alexa.experimentation.VariantName.TREATMENT_1) {
          return handlerInput.responseBuilder.speak("トリートメントの応答")
                .addExperimentTrigger(experimentId)
                .getResponse();
        } else {
          return handlerInput.responseBuilder.speak("control response")
                .addExperimentTrigger(experimentId)
                .getResponse();
        }
      } else  {
        return handlerInput.responseBuilder.speak("トリートメントには露出しません")
              .getResponse();
      }

ステップ2: A/Bテストを作成する

開発者コンソールを使って、選択したテストメトリクスのA/Bテストを作成します。

開発者コンソールを使ってA/Bテストを作成する

  1. Alexa開発者コンソールにサインインします。
  2. 認定タブを選択します。
  3. 左側のナビゲーションメニューで、A/Bテストタブを選択します。
  4. A/Bテストページで、作成をクリックします。
  5. A/Bテストの作成に必要な情報を入力します。
    • 名前 – A/Bテストの一意名です。2つのテストに同じ名前を付けることはできません。ただし、いずれかのテストを削除した場合は同じ名前を使用できます。最大255文字です。
    • 仮説 – テストで評価している仮説の説明です。参照目的でのみ使用され、テスト結果に影響することはありません。
    • テストの種類
      • エンドポイント別のテスト – エンドポイントベースのテストを実施します。
    • コントロール – これらのフィールドは、選択したテストの種類に応じて自動入力されます。
    • メトリクス – テストしている承認済みのテストメトリクスのリストです。各メトリクスは、KEYGUARDRAIL値のいずれかで指定する必要があります。また、各メトリクスの期待結果としてINCREASEまたはDECREASEを含める必要があります。
      • 種類ガードレールキーのいずれかを選択します。
      • 方針増やす減らすのいずれかを選択します。
    • テストをオーバーライドするオンに切り替えると、開発者アカウントをテストの特定のコントロールグループに割り当てることができます。それ以外の場合、テストを開始すると、アカウントがランダムに2つのうちいずれかのグループに割り当てられます。テストを開始したあとに、オーバーライドを削除することはできません。
      • コントロールグループ – アカウントをテストのコントロールグループに割り当てます。
      • トリートメントグループ – アカウントをテストのトリートメントグループに割り当てます。
  6. 作成をクリックします。

    A/Bテストページにリダイレクトされます。テストの詳細が、このページの表に表示されます。

ステップ3: (任意)A/Bテストを評価する

A/Bテストを実際のユーザーに公開する前に、意図したとおりに機能することを確認します。このためには、開発者アカウントのユーザートリートメントオーバーライド値をT1に設定します。この値を設定すると、スキルの起動時にトリートメントエクスペリエンスが提供されます。

A/Bテストを評価する

  1. Alexa開発者コンソールにサインインします。
  2. 認定タブを選択します。
  3. 左側のナビゲーションメニューで、A/Bテストタブを選択します。
  4. A/Bテストの表で、編集するテストを探し、ドロップダウンボックスをクリックして開始を選択します。
  5. ポップアップボックスで、テストを試すを選択します。
  6. 開始をクリックします。

    テストを開始すると、スキルはステップ2: A/Bテストを作成するで選択した設定で起動します。

    テストの評価が完了したら、A/Bテストを終了するを参照してください。

ステップ4: A/Bテストを開始する

A/Bテストを開始すると、T1エクスペリエンスがユーザーに公開されます。

A/Bテストを開始する

  1. Alexa開発者コンソールにサインインします。
  2. 認定タブを選択します。
  3. 左側のナビゲーションメニューで、A/Bテストタブを選択します。
  4. A/Bテストの表で、編集するテストを探し、ドロップダウンボックスをクリックして開始を選択します。
  5. ポップアップボックスで、テストを開始を選択します。

    テストを開始すると、ステップ2: A/Bテストを作成するで設定した内容で開始されます。

    テストを実行したら、A/Bテストを終了するを参照してください。

ステップ5: A/Bテスト結果を分析する

A/Bテストの結果は、テストの実行中でも終了後でも分析できます。一部のメトリクスは、確認できる状態になるまで2~5日かかる場合があります。

A/Bテストを分析する

  1. Alexa開発者コンソールにサインインします。
  2. レポートタブを選択します。
  3. 左側のナビゲーションメニューで、A/Bテストタブを選択します。
  4. テスト日付範囲を選択のドロップダウンで、テスト名と分析を表示する日付を選択します。

    データが、ページ内の表に表示されます。

  5. (任意)編集完了を選択して現在のテストを変更します。

ステップ6: (任意)露出度を上げる

データを分析したあとに、結論が出せないとわかる場合があります。より多くのデータを収集したい場合、T1グループの露出度を上げてT1グループにより多くのユーザーを含めることができます。この設定をしたあとも、A/Bテストを継続できます。

露出度を上げる

  1. Alexa開発者コンソールにサインインします。
  2. レポートタブを選択します。
  3. 左側のナビゲーションメニューで、A/Bテストタブを選択します。
  4. A/Bテストの表で、更新するテストを探し、ドロップダウンボックスをクリックして編集を選択します。
  5. トラフィックの露出を更新します。
  6. 保存をクリックします。

ステップ7: A/Bテストを終了する

A/Bテスト結果に満足できたら、テストの状態をCOMPLETEDに変更します。その後、テストがメトリクスを収集することはありません。

A/Bテストを終了する

  1. Alexa開発者コンソールにサインインします。
  2. 認定タブを選択します。
  3. 左側のナビゲーションメニューで、A/Bテストタブを選択します。
  4. A/Bテストの表で、編集するテストを探し、ドロップダウンボックスをクリックして完了を選択します。
  5. ポップアップボックスで次のように選択します。
    • A/Bテストを中止 – テストを停止します。スキルのトリートメントバージョンは公開されません。
  6. 完了を選択します。