[Alexa] 日本語スキルでも発話プロファイラーを使った対話モデルの確認ができるようになりました

はじめに

Alexaのスキル開発において、日本語環境でも発話プロファイラーの利用が可能となりました!

Alexa Blogs: 発話プロファイラーで対話モデルの検証が簡単になります

発話プロファイラーを使ってコードを実装する前に会話フローをテストする

これにより、日本語スキルの開発時においても、バックエンドの実装前に会話のテストやインテント/スロットの解決結果を確認できるようになります。

発話プロファイラーを使ってみる

それでは、実際に発話プロファイラーを使ってみます。
以下のようなシナリオのホテル予約スキルを例にとってみます。

A: どちらの市区町村のホテルをお探しでしょうか?
U: 大阪です。 
A: 何月何日のご予約でしょうか? 
U: 3月1日で。 
A: 何泊されますか?
U: 3泊でお願いします。 
A: お部屋にはシングル、ダブル、ツイン、スイートがございます。ご希望のルームサイズを教えて下さい。
U: ダブルがいいです。

適当にスキルを作成し、ホテルを予約するBookingIntentを準備します。

BookingIntentでは予約に必要な以下のスロット値をAlexaにデリゲートして収集してもらいます。

  • LocationAmazon.City
  • CheckInDate(Amazon.DATE)
  • Nights(Amazon.NUMBER)
  • RoomType(シングル/ダブル/ツイン/スイートからなるカスタムスロット)

対話モデルのビルドを行った後、BookingIntent画面右上の「発話プロファイラー」をクリックします。

画面右側に発話プロファイラーが表示されるので、発話を入力して会話フローのテストを行います。

発話を入力すると、発話に対してAlexaが解決したインテントおよびその他の候補が表示されます。
インテントにおいてスロット値の収集が必要な場合は、各スロット値の収集状況が表示されます。

会話を進めていくと、スロット値が収集できていることがわかります。
(発話プロファイラーでは、各スロットに設定した検証は確認できないので、注意が必要です)

必須のスロット値が全て収集されると、マルチターンの会話が終了しました。
発話プロファイラーを使うことで、ここまでのテストをバックエンドを実装する前に行えます。

おわりに

日本語環境のスキル開発でも、発話プロファイラーが利用可能になりました。
バックエンドを実装する前に、発話がどのインテントやスロットにマッピングされるか、スロットの収集をAlexaにデリゲートしたマルチターンの会話の確認、といったテストを行うことができます。

うまく活用して、よりスムーズなUXとなるようにスキルの改善を繰り返していきましょう!