jiigのREDOブログ

やったことや考えたことなどを不定期に書き残していきます

Alexa Skill KitでAmazonEchoのスキルを自作する方法(2)

Alexa Skill KitでAmazonEchoのスキルを自作する方法(1)の続きになります。

redorereadblog.hatenablog.jp

 

だらだら書いているうちに、日本語スキル開発環境がリリースされてしまい、そちらの記事を書こうとしています。

なので、この記事は少し中途半端でインテントのSlotとLambdaには触れていません。。(言い訳) 

スキル作成の続き

 Intentとその発話サンプルをひととおり登録し終えたら、画面上部の[Build Model]をクリックし、入力した情報で対話モデルをビルドします。この処理は少し時間がかかります。ビルド処理はバックグラウンドで実行されるので、[Configuration]をクリックして設定画面に移動します。

すでにconfiguration画面で設定ができている場合は、ここから[Test]でスキルのテスト画面に移動することも出来ます。

f:id:jiig999:20171114163229p:plain

 

 

[Configuration]をクリックすると、Builderが終了してもとの画面のUIに戻ります。いずれは、設定やテストなどすべてBuilderのUIに統合されるのだと思いますが、今は対話モデル作成部分のみがベータ版として対応しているようです。

ここでは、Alexaから処理要求を受け取り具体的なスキルを実装するLambdaのARNを指定します。先にLambdaファンクションを作成しておき、そのARNを指定することになります。スキル本体の処理は、Lambdaを使わず自分でスクラッチしても良いです。その場合は[HTTPS]にチェックを入れ、エンドポイントを入力します。

その他の項目はデフォルトのまま[次へ]をクリックします。

f:id:jiig999:20171114163309p:plain

 

 

LambdaのARNなどのチェックが行われ、エラーが無ければこの画面に遷移します。

スキル情報〜テストまでの4つにグリーンチェックが入っていれば、スキルがテスト実行可能です。この時点で、Amazon Developerと同じアカウントを使っているEcho端末からもテストが可能です。公開するまでは、他のユーザーアカウントから呼び出すことはできません。

f:id:jiig999:20171114164505p:plain

 

 

画面中ほどに、サービスシミュレーターがあります。EchoやEchosim.ioからもテストできますが、この画面からだとしゃべるかわりに、文字を入力してテスト実行できます。

Alexa Skill Testing Tool - Echosim.io

 

発音の認識間違いなどに苦労せずにすむので、まずはこの画面からテストすることをおすすめします。

しゃべる内容を文字で入力し、XXXを呼び出すボタンをクリックすると、Alexaと会話したことになって処理が実行されます。

左下に、Alexaからスキルへのリクエスト内容が、右下にはスキルからのレスポンスが表示されるので、うまく動かないときはここを見ると良いです。

f:id:jiig999:20171114164517p:plain

 

上の例では「i wanna start meeting」と入力してみました。実はIntent作成時のサンプル発話としては登録していない表現ですが、Alexaがよきにはからってくれて、ちゃんと"StartMeetingIntent"と判定されています。

  

まとめ

今回はスキル本体となるLambdaと、IntentのSlotについてはすっ飛ばしました。すみません。

Intentのサンプル発話をどれだけ網羅して設定しておく必要があるかは、正直なんとも言えません。Alexaはどんどん賢くなっているので、わりと適当に設定しても大丈夫な気がします。少なめに定義しておいて、うまく意図解釈してくれない(=Intent判定を誤る)ときに追加していけば良いかなぁという印象です。