[アップデート] Amazon Lex で任意の確認結果を取得するための組み込みスロットタイプが使えるようになりました

2023.08.18

いわさです。

Amazon Lex ではインテント通して、ビジネスロジックの実行に必要なスロット値を取得します。
スロットのタイプは開発者が独自に作成することが多いですが、ボットが収集する情報にはある程度定型的な情報も多く、事前に Amazon Lex に組み込まれているスロットタイプが存在します。
そちらを使うと独自にわざわざ定義したりユーザーの入力パターンに配慮せずに手軽にインテントを定義することが出来ます。

本日のアップデートで、同意や拒否あるいは不明などユーザーに任意の確認を行う組み込みスロットタイプが使用出来るようになりました。

これによって、これまでカスタムスロットタイプとして同様の確認目的のスロットを作成していたシーンでも組み込みスロットに任せることが出来ます。

本日時点では残念ながら、言語が英語のみの対応となっていますが、使い勝手などを確認してみたので紹介します。

組み込み方

今回追加されたものはインテント内の機能ではなくて組み込みのスロットタイプです。
通常どおりスロットを使って独自の収集情報をまず定義しますので、スロットを追加します。

スロット追加時にスロットタイプを選択しますが、組み込みスロットタイプに新しく「AMAZON.Confirmation」が追加されています。

今回追加された組み込みスロットタイプの仕様はこちらに記載されています。
単純な「Yes」「No」以外に、「Maybe」や「Don't know」も取得されるようになっています。

会話してみる

適当なサンプルボットにスロットを追加してみましたので、テスト実行してみましょう。
必須スロットにしているので次のように設定したプロンプトが発生します。

「No」レスポンスを行ってみましょう。
問題なく受け取られたようです。

「Yes」が設定されるであろう、「Ok」で回答してみましょう。
次のようにスロット値としては「Yes」が設定されていますね。入力のブレを組み込みスロットで自動で吸収してくれるので良い感じです。

ちなみにサポートされていないレスポンスをユーザーが行った場合はスロットに値が設定されません。
スロットプロパティで設定した数だけ再試行されます。当然ですが通常のスロットと同じですねこのあたりは。

日本語

冒頭少し触れましたが、日本語の場合は本日時点では次のように組み込みスロットタイプとして存在していません。

カスタムスロットとレスポンスカード

そのため、日本語の場合は引き続きカスタムスロットなどを使って確認スロットを定義する必要があります。

チャットボットなどでレスポンスカードが使用出来るシーンであれば、単純な「はい」「いいえ」を選択させるパターンもありますが、状況によっては多用な入力を受け付けたい場合もあるので、毎度カスタムスロットタイプを定義するのは面倒なので組み込みスロットタイプが使えるようになると便利ですね。

さいごに

本日は Amazon Lex で任意の確認結果を取得するための組み込みスロットタイプが使えるようになったので、実際に使ってみてその内容や、多言語での対応状況などを紹介しました。

なかなか使い勝手良さそうですね。今まで無かったのが不思議なくらいです。
早く日本語もサポートされると嬉しいです。