#はじめに
AI TOKYO LAB技術チーム(非公式)の小野&鈴木です。これから気が向いた時にAIに関するサービスやライブラリを実際に触ってみてその感想等をゆるめに書いていこうと思います。不定期&非公式なのであまりご期待なさらずに。
2日前に一般提供開始されたAmazon Lexを使ってみました。Amazon Lexは自動音声認識と自然言語理解の技術を使って
非常に魅力的なサービスと生き生きとした音声対話を実現するアプリケーション
(要するにチャットボット)を構築できます。
今回は音声認識の機能は試しませんでしたが、チャットボットを構築してみました。
自然言語理解と言っていますが、基本的にはIBMのWatosonと同じ技術を使っているようです。対話のパターンをあらかじめ登録しておいて、ユーザーの発話文中の特徴語(book, appointmentなど)から、特定の対話パターンに遷移します。それ以降の対話は、ボットがユーザーに特定の情報を聞き出すように誘導します。ボットの発話文や、聞く内容なども目的に応じて設定しておきます。
以下、構築手順を紹介します。
#試してみた
上部メニューの「サービス」->「人工知能」->「Lex」を選ぶと下のような画面になります。自分でゼロから作成することもできますし、3つあるサンプルから選んでテストすることもできます。
今回は「BookTrip(旅行の予約)」ボットを試してみます。
しばらくするとボットが作成されるので右下のテスト用チャット枠でさっそく試してみます。水色がユーザの発話、グレーがLexの応答です。
このように予約用の対話ボットができていることがわかります。typoした時に全く同じことを聞き返されているなどツッコミどころはありますがユーザが結構適当な文章で打ち込んでも対応してくれています。
(予想外の発話に対しては同じ応答を繰り返す仕様のようです)
Sample utterancesにある例文のような発話がされたときにホテル予約や車予約のintents(いわゆるシナリオ)に遷移して、ユーザから情報を聞き出していく流れになります。
対話により取得したい情報をLocation、RoomTypeのように変数として登録しておき、それを質問する形が基本になります。
変数にマッチさせる単語リストはAmazonで用意されているビルトインと、自分で設定した単語リストのどちらかから選択します。設定されているRoomTypeはこのような感じ。
singleはリストにないですが会話では何故かスルーされていますね。
いわゆる「シナリオベース」の対話ボットを作成するのに役立ちそうです。ただし、まだ日本語には対応していないので今後の対応が期待されますね。
おまけ
Rekognition(画像認識)も試してみました。
FrogやAmphibian(両生類)だけでなくTree Frogという種類まで特定されているのは驚きです。
ついでにPolly(テキスト音声化)も。
普通に読めるみたいです。色々試してみたいですね。
それではまた。