LoginSignup
13
12

More than 5 years have passed since last update.

Amazon AlexaとAWS Lexを比較したメモ

Posted at

背景

  • 以下の動機から、Alexaを使い始めようと考えたため。
    • Amazon Echo が日本で発売されるらしい。
    • Custom Skillというので一儲けできるらしい。
    • Lexで作った対話アプリをAlexaに移行しちゃえばいいのでは。

Alexaとは

  • AlexaはAmazonが開発したAIアシスタント。 音声交流や音楽再生、予定表リストの作成、アラームの設定、ポッドキャストのストリーミング、オーディオブックの再生と天気や交通情報、リアルタイム情報などの提供ができる。 2017年10月時点では、英語とドイツ語のみ対応。日本語も年内対応予定。 Amazon Echo等、Alexa対応デバイスにSkill(アプリケーション)をセットし、音声入力によって起動することで動作する。

Alexa概念図

Lexとは

  • Amazon Lex は、音声やテキストを使用して、任意のアプリケーションに対話型インターフェイスを構築するAWS上のサービス。SDKを用いて任意のアプリケーションで動作する。
  • 2017/10末時点では、日本語対応はしていない。

![Lex概要]Lex.JPG

機能比較

  • 大きく違うのはアプリのインストール。AlexaはechoなどのAlexa対応デバイスにSkillをインストールすることで利用可能になるが、Lexは独自でアプリケーションを組む必要がある。(AlexaもSDKを提供しており、アプリケーションを組むことは可能)
    • ただしLexについても、Facebook MessangerとSlack用のChatbotに関してはマネジメントコンソール内で作成できる。
  • よって、LexとAlexaでは基本的な仕組みは同じものの、用途が異なる。
  • また、Alexa対応デバイスを利用する場合、Alexaに対し特定の起動コマンド("Alexa,ask ◯◯")を発話することでSkillが起動する。
  • Amazon Echoの2017年内の日本語対応を発表しているため、独自Skillも日本語版が年内に作成できるようになるはずだが、Lexに関しては明確な発表は今のところない。
  • Alexa SkillはAmazonアカウントに紐付いており、一方でビジネスロジックはAWS Lambdaを利用するため、CustomSkillを使うならAmazonとAWSの両方のアカウントを持つ必要がある。
  • AlexaのビジネスロジックもLexのビジネスロジックもLambdaだが、Lambdaのインターフェースは異なるので、同一のLambdaFunctionを共有することはできない。よって同一の対話アプリをLexとAlexaで組むというのは難しい。また、Lexで作ったLambdaFunctionをAlexaに移行するにはソースコードの修正が必要。
機能 Alexa Lex
アプリ起動方法 "Alexa, ask ◯◯(Skill名) XX(Utterance)" と発話 対話アプリ内でSDK、APIのパラメータに指定
アプリインストール方法 Alexa対応デバイスにインストール 独自アプリを作成。(facebook Messanger,Slack用チャットボットはLex内で作成可能)
想定するアプリケーションの種類 Amazon Echo, および同様のアシスタント チャットボットアプリ
対応言語 英語、ドイツ語、(もうすぐ)日本語 英語(日本語対応予定は不明)
アプリ作成アカウント Amazonアカウント(Lambdaを動かすのにAWSアカウントが別途必要) AWSアカウント
ビジネスロジック AWS Lambda AWS Lambda

結論

  • Alexaは音声アシスタントとして、Lexはチャットボットとして使うのが正当パターン。
  • それ以外の使い方ができないわけではない。
  • Lexで作った対話システムをAlexaに移行するにはそれなりに移行作業が必要。

用語

  • ほとんど同じ。
機能 Alexa Lex
アプリケーション Skill Bots
(アプリケーションの持つ)機能 Intent Intent
意図理解のための発話サンプル Utterance Utterance
変数 Slot Slot
13
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
12