[Amazon Lex] インテントに入らなかった時のエラー処理 (Error Handling) について

2019.04.09

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

1 はじめに

こんにちは、Alソリューション部の平内(SIN)です。

Amazon Lex(以下、Lex)で作成したボットに、一生懸命話しかけても、なかなかサンプル発話にヒットしなくて、延々と、"Sorry, can you plese repeat that?" と返された経験をお持ちの方は、少なくないのではないでしょうか。

今回は、このメッセージが返されるあたりの仕組みを確認してみました。

2 動作確認用ボット

動作確認のためにボットを作成し、インテントを1つだけ追加しました。

このインテントに設定されたサンプル発話には、"Hello"とだけ設定されていますので、それ以外の発話に対しては、ヒットできないことになります。

試しに、"good bye" と話しかけると、いつものように "Sorry, can you plese repeat that?" が返ります。

そして、これを繰り返すと、6回目にレスポンスが変わります。

3 Error Handler

実は、この動作は、Error Handlerに設定されています。

デフォルトで、Clarification prompts には、"Sorry, can you plese repeat that?" だけが設定されているため、常に、このメッセージが返されていた事になります。

また、Maximum number of retriesが5になっているので、5回までは、繰り返し、Clarification prompts が返されることになります。

そして、6回目に、返されたのは、Hang-up phraseに設定されたメッセージあることが分かります。

4 Error Handlerの設定変更

以下のように変更して、動作を確認してみます。

テストしてみると、メッセージが変わっていることを確認できます。

5 最後に

メッセージの内容や、リトライの回数は、ボットの内容に応じて適切に設定することで、UXの向上を図ることができると思います。

また、Amazon ConnectからLexを呼び出すような場合は、ユーザーの発話が、用意されたインテントにヒットしなかった場合に、ユーザーに返されるレスポンスそのものですので、Amazon Connect問い合わせフローのストーリにも、適切に合わせる事が重要だと思います。


弊社ではAmazon Connectのキャンペーンを行なっております。

3月に引き続き、4月も「無料Amazon Connectハンズオンセミナー」を開催致します。導入を検討されておられる方は、是非、お申し込み下さい。

また音声を中心とした各種ソリューションの開発支援も行なっております。