2-2. Welcomeボットの作成

Welcomeインテントの作成

左メニューからインテント を選択し、インテントの一覧を表示します。

デフォルトの “FallbackIntent”と”NewIntent”がすでに作成されており、ボットの現在のバージョンがドラフトバージョンであることが分かります。

FallbackIntentはボットがユーザーの発話(Utterance)の意味を解釈できない場合に選択されるデフォルトのインテントです。

自動作成された”NewIntent”をクリックし詳細画面を開きます。

新規にインテントを作成する場合は、画面右上の [インテントの追加] ドロップダウンボタンをクリックし、[空のインテントを追加] を選択して下さい。

[インテント名] と [インテント詳細] を入力ます。

  • インテント名 Welcome
  • 説明 最初の受付を行うインテント

[サンプル発話] パネルまでスクロールして開き、 [プレーンテキスト] ボタンをクリックします。

ここでは一度に複数の発話(Utterance)を追加できるので、初期登録時には最も簡単な方法です。[プレビュー] ボタンをクリックして 1 つずつ追加することもできます。

プレーンテキストエディタは日本語の取り扱いに不具合があるため、コピー&ペースト以外の方法で編集すると内容が全て消えてしまうことがあります(Undoはできない)。そのため初期登録以外では使用しないようにして下さい。

インテント(意図)をトリガーする発話を表す以下のテキストをコピーし、テキストウィンドウに貼り付けます。

こんにちは
おはよう
あの
すみません

プレビューボタンをクリックすると、このインテント内の4つの異なる発話(Utterance)として定義され、これらが表示されます。

続いてスロットを1つ追加します。下にスクロールしスロットセクションで [スロットを追加] ボタンを押して下さい。

下記を入力します。

  • このインテントには必須 チェック
  • 名前 Name
  • スロットタイプ AMAZON.LastName
  • プロンプト

    あなたの名前を教えて下さい。
    

[追加] ボタンを押すと、スロット [Name] が追加されます。

最後にインテントの終了メッセージを作成します。これは、ボットのインテント処理が完了した場合にLexがユーザーに対して応答する内容です。 [応答を閉じる] セクションまでスクロールし、”インテントが履行された後にユーザーに送信される応答”の吹き出しを展開し、 [メッセージ] フィールドに次のメッセージを入力します。

こんにちは {Name}さん。僕はAmazon Lexボットです。今日はどうしましたか?

メッセージ内の{Name} は自動的に展開される変数であり、選択されたスロット Name を表しています

これでWelcomeボットは完成です。最後に下部にある [インテントを保存] ボタンをクリックし、[構築] ボタンを押して下さい。構築(ビルド)後にボットをビルドしてテストできるようになります。このビルドプロセスは 30 秒以上かかりますので、終わるまで待って下さい。

ビルド後、エラーがないことを確認して、 [テスト] ボタンを押すとテスト用のウィンドウが表示されます。ここで新しいボットをテストできます。さまざまなフレーズを試してみてください。サンプル発話セクションで定義したフレーズを入力するとインテント(意図)が認識され、あなたの名前を入力するとLexは終了メッセージを出力します。

フレーズとして”こんばんは”を入力してみて下さい。これは発話(Utterance)には登録していないフレーズですが、ML技術により正常に処理されWelComeインテントがトリガーされます。

“Missing required key ‘sessionId’ in params”というエラーが赤字で表示された場合は、ブラウザをフルリロードして対応して下さい。テスト画面のバグとして考えられ回避できません。

テキスト入力だけでなく音声を使ってテストすることもできます。ダイアログの下部にあるマイクアイコンをクリックしてフレーズを話し、「ティック」アイコンをクリックしてオーディオストリームをLexに送信することで行うことができます。

日本語での音声認識については制約があり、一部認識できないフレーズもあります。うまく認識されない場合は、何度かトライしてみて下さい(ゆっくり正確に発音する)。

[検査] ボタンを押すと、LexのMLエンジンにより選択されたインテントやスロットの値を確認することができます。

次にフレーズとして ”日本語で話せますか” と入力してみて下さい。このフレーズはLexがWelcomeインテントとして認識できないため、FallbackIntentインテントが選択され、メッセージが返されます。

Fallbackインテントを構成

FallbackIntentからのデフォルトのメッセージは分かりにくいので、更新してもっと分かりやすいメッセージを返すようにします。左上の [Back to Intent list] リンクをクリックして、インテントの一覧画面に戻って下さい。

インテントの一覧から FallbackIntent クリックして詳細画面を開いて下さい。

応答を閉じるセクションまでスクロールダウンして、「インテントが履行された後にユーザーに送信される応答」をクリックして表示される メッセージ フィールドに次のテキストを追加します。

すみません。発言を理解できなかったのでもう一度お願いします。

先ほどと同じように [インテントを保存][構築] を行います。

画面下部のテスト画面で、さきほど同じように失敗する発話を試みると、今度は日本語のメッセージが表示されるようになります。

これで始めてのWelcomeボットの作成は完了です。