Amazon Lex で日本語で会話するチャットボットを使ってみる

Amazon Lex は、音声やテキストを使用して、任意のアプリケーションに対話型インターフェイスを構築するサービスです。
Amazon Lex では、音声のテキスト変換には自動音声認識 (ASR)、テキストの意図認識には自然言語理解 (NLU) が使用できるため、リアルな会話を実現するアプリケーションを開発できます。
Amazon Lexは、Amazon Alexa に採用されている深層学習技術と同じ技術を利用できます。
Amazon Lexは、2021.04.02 日本語に対応。東京リージョンで使えるようになりました。

Amazon Lex では、数分で独自の Chatbot を作成し、会話型インターフェイスを提供できるので、質問したり、答えたり、高度なタスクを完成したりすることができます。

Amazon Lex は簡単に構築、テスト、およびデプロイができ、モバイルデバイス、ウェブアプリ、Facebook Messenger、Slack、Twilio SMS などのチャットサービスと連携できます。

Amazon Lex は使用した分のみ料金が発生し、初期費用や最低利用料金はかかりません。また、フルマネージドサービスなので、ハードウェアやインフラの管理を心配する必要はありません。

Amazon Lex では、Lambda、CloudWatch と組込統合が可能で、Cognito、DynamoDB など AWSサービスとも統合でき、セキュリティ、モニタリング、認証、ビジネスロジック、モバイル開発を活用できます。

ユースケース

  • コールセンターのチャットボットと音声アシスタント
  • 質問応答ボットと情報ボット

      最新ニュース、試合の得点、天気予報など、日常的なリクエストに対応するチャットボットを構築できます。
  • アプリケーションボット

      銀行口座へのアクセス、チケットの予約、料理の注文、タクシーの呼出しなどの
      顧客のためのタスクを支援するボットをモバイルデバイスに作成できます。

      Cognito との統合で、各デバイス間のユーザー管理を制御できます。
  • エンタープライズ生産性ボット

      営業データ、マーケティング成果、顧客サービスなど、さまざまなエンタープライズ生産性ツールに接続するボットを構築できます。

Amazon Lex の料金

無料枠  使用を開始した日から最初の 1 年間は、1 か月あたり最大で 10,000 回のテキストリクエストと
     5,000 回の音声リクエストまたは音声間隔を処理することができます。

料金の例 1 か月に 8,000 回の音声リクエストと 2,000 回のテキストリクエストを処理するボット

入力リクエストリクエストあたりのコストリクエストの数合計
8,000 回の音声リクエスト0.004 USD8,000 回のリクエスト32.00 USD
2,000 回のテキストリクエスト0.00075 USD2,000 回のリクエスト1.50 USD

その月の Amazon Lex の合計料金                                       33.50 USD

テンプレートを作成してみる

「Amazon Lex」をクリック
「Get Start」をクリック
「ボットを作成」をクリック

「例から開始」をクリック

サンプルボットの「OrderFlowers」を選択

前画面で設定

前画面で設定

ボット名を「OrderFlowers」とした。

一応、「Template Bot」と設定した。

「基本的な Amazon Lex 権限を持つロールを作成します。」をチェック

「児童オンラインプライバシー保護法(COPPA)」は「いいえ」をチェック
※ COPPAとは、13歳未満の子供のプライバシーを守る法律のことです

Name タグを一応設定した。

他の項目はデフォルト設定で、「次へ」をクリック

「日本語(JP)」を選択

日本語の女性声「Mizuki」を選択
※ 日本語の男性声「Takumi」も選択可能

「完了」をクリック

「会話フロー」を展開すると
用意されている会話のフローがわかる。]

サンプル発話
ユーザーが会話をスタートするフレーズ。
「花を注文します」とか「花を注文」と話しかけるとBotは起動する。
ここに発話を追加すれば、希望した言葉で、このBotを起動できます。

スロットとは、会話の中でユーザから聞き出す必要のある事柄です。

FlowerType(注文する花の種類)
PickupDate(花を受け取る日付)
PickupTime(花を受け取る時間)

スロットのプロンプトを展開すると、スロット値を聞き出すためのプロンプト(どのような聞き出し方をするか)やその他「詳細オプション」がわかる。

「構築」をクリック

スロットのプロンプトを展開すると、スロット値を聞き出すためのプロンプト(どのような聞き出し方をするか)
やその他「詳細オプション」がわかる。

正常に構築された

「テスト」をクリックするとテストを試すことができる。

「検査」クリックで、やり取りの記録、データの内容を確認できる。