チュートリアル: Alexa ConversationsのAPI引数の確認



チュートリアル: Alexa ConversationsのAPI引数の確認

Alexa Conversationsスキルでは、Confirm APIダイアログアクトを使用して、AlexaがユーザーにAPIの引数を確認することができます。ユーザーが引数を拒否すると、Alexaは引数を再度リクエストします。たとえばWeatherスキルの場合、Alexaはユーザーに「{city}の天気ですね?」などとたずねます。

このチュートリアルでは、チュートリアル: Alexa Conversationsのダイアログにアノテーションを付ける方法のダイアログに引数の確認を追加する方法について説明します。そのダイアログは次のとおりです。

ユーザー: 天気を教えて。
Alexa: どの都市のですか?
ユーザー: 神戸。
Alexa: 神戸の気温は二十一度です。

このチュートリアルでは、次のようにダイアログを展開して、city引数を確認します。

ユーザー: 天気を教えて。
Alexa: どの都市のですか?
ユーザー: 神戸。
Alexa: 神戸の天気ですね?
ユーザー: はい。
Alexa: 神戸の気温は二十一度です。

Alexa Conversationsスキルに引数の確認を追加する手順

スキルに引数の確認を追加するには、次の手順を実行します。

  1. ダイアログに引数確認のターンを追加します
  2. 確認を求めるAlexaターンにアノテーションを付けます
  3. 確認を提供するユーザーターンにアノテーションを付けます
  4. スキルモデルをビルドします

前提条件

このチュートリアルを実行する前に、チュートリアル: Alexa Conversationsのダイアログにアノテーションを付ける方法を完了する必要があります。

ステップ1: ダイアログに引数確認のターンを追加する

最初のステップは、ユーザーに引数の確認を求めるAlexaターンと、それを確認するユーザーの応答を追加することです。

ダイアログに引数確認のターンを追加するには

  1. 開発者コンソールで、チュートリアル: Alexa Conversationsのダイアログにアノテーションを付ける方法で作成したダイアログに移動します。
  2. ダイアログの下にあるAlexaのセリフをクリックし、神戸の天気ですね?と入力します。
    Alexaターンとユーザーターンの順番が正しくないというエラーメッセージは、ターンを配置し直すと消えます。
  3. Alexaターンの左側をクリックし、ユーザーターン「神戸」の下にドラッグして再配置します。
  4. ユーザーの発話をクリックし、はいと入力します。
  5. ユーザーターンの左側をクリックし、Alexaターン「神戸の天気ですね?」 の下にドラッグして再配置します。
  6. ヘッダーバーの保存をクリックします。
    Weatherスキルのダイアログ
    確認のAlexaターンと肯定のユーザーターンがあるWeatherスキルのダイアログ

ステップ2: 確認を求めるAlexaターンにアノテーションを付ける

引数を確認するには、Confirm APIダイアログアクトを使用して、Alexaターン「神戸の天気ですね?」にアノテーションを付けます。

このダイアログアクトを使用するのは、特定のAPI(GetWeather)の引数を確認しているからです。任意のAPIの引数を確認する場合は、引数を確認を使用します。

情報を求めるAlexaターンにアノテーションを付けるには

  1. ダイアログで、Alexaターン「神戸の天気ですね?」内の任意の場所をクリックします。
    Alexaの応答パネルが右側に表示されます。
  2. ダイアログアクトにはConfirm APIを選択します。
  3. 確認するAPIGetWeatherを選択します。
    確認するAPI引数には、cityが自動的に設定されます。
  4. Alexaの応答応答セクションで、新しい応答を作成をクリックします。
  5. 応答名にconfirm_cityと入力します。
  6. Alexaプロンプト「神戸の天気ですね?」で、神戸を強調表示します。
    スロットタイプ選択ボックスが表示されます。
  7. スロットタイプ選択ボックスの下部にある新しい引数を作成cityと入力し、追加をクリックします。
  8. 視覚応答の下までスクロールして引数セクションを表示します。
  9. city引数のスロットタイプとして、AMAZON.Cityを選択します。
  10. 保存をクリックします。
    Weatherスキルのダイアログ
    Alexaの応答の設定
  11. 右側のパネルの応答セクションで、変数引数マッピングをamazonCITY0cityに編集します。
  12. ヘッダーバーの保存をクリックします。
    Weatherスキルのダイアログ
    Alexaターンの設定

ステップ3: 確認を提供するユーザーターンにアノテーションを付ける

次に、ユーザーターンでダイアログアクトが肯定の発話セットを定義します。これは、ユーザーが引数を肯定するさまざまな発話をまとめたものです。

確認を提供するユーザーターンにアノテーションを付けるには

  1. ユーザーターン「はい」内の任意の場所をクリックします。
    右側にユーザー入力パネルが表示されます。
  2. ユーザー入力パネルで、ダイアログアクトに肯定を選択します。
  3. 発話セットの下にあるボックスをクリックし、新しい発話セットを作成を選択します。
    発話セットの設定用のボックスが表示されます。
  4. 発話セット名にaffirm_cityと入力します。
    ダイアログアクトは既に選択しているため、ダイアログアクトボックスには肯定が自動的に設定されます。
  5. サンプル発話発話を追加をクリックし、その通りと入力してEnterキーを押します。
    発話のボックスが灰色(参照用)になっている場合でも、この手順を実行する必要があります。
  6. 上述の手順を繰り返して、サンプル発話にうんあってますを追加します。
    各エントリの後には、必ずEnterキーを押してください。
  7. 保存をクリックします。
  8. ヘッダーバーの保存をクリックします。
    Weatherスキルのダイアログ
    発話セットの設定

ステップ4: スキルモデルをビルドする

ダイアログの各ターンの横には、そのターンの設定が完了していることを示すチェックマークが表示されます。

Weatherスキルのダイアログ
設定が完了したダイアログ

チェックマークではなく感嘆符が表示される場合は、前の手順で何かが抜けているため、スキルモデルをビルドできません。不足している設定を見つけるか、スキルモデルのビルド時に表示されるエラーメッセージを参照して詳細情報を確認します。

スキルモデルをビルドするには

クイックビルドが成功すると、完全ビルドが開始されます。