[alexa day 2019 参加レポート]Alexa Skills Kit 最新アップデート


# 概要

登壇者: アマゾンジャパン合同会社 吉田 一茂さん
ターゲット: スキル開発者 (企画者・VUIデザイナー・プログラマー)

Alexaスキル開発者向けフレームワーク、Alexa Skills Kit (ASK)について、近況や最近リリースした機能についてご報告いたします。スキルの基本的なところはご理解いただいている前提ですが、幅広い皆様にご参加いただけるよう、ディープにテクニカルなお話というよりは、なるべくハイレベルでのご紹介をさせていただきます。

引用: https://alexaday2019.aajug.jp/session/307/

# アレクサ搭載デバイスについて

いろんな種類のalexa対応デバイスがリリースされた/されている

- CESでの展示にて
    - 電子レンジ
    - キーボード
    - スピーカー
    - ...etc
- FireTVStick
- ヘッドホン
    - boseに続き、sonyからもアレクサ搭載のヘッドホンが出た
    - [Alexa Mobile Accessory Kit](https://developer.amazon.com/ja/docs/ama-kit/alexa-mobile-accessory-kit-overview.html) で実装してる
        - bluetoothで繋がったスマホアプリからalexaをcallしてるもの
- [lenovoのタブレット](https://www.lenovo.com/jp/ja/smart-tab)
    - alexa搭載のスマートディスプレイ <-> 普通のタブレット の使い分け可能
- Fireタブ
    - showモードに対応するとのこと
- echo input
    - すでに持ってるスピーカーとかAV機器をalexa対応できる
- win10向けのアレクサアプリ
    - 一部のパソコンはハンズフリーで使える
    - 他のメーカーも今後対応して行く予定

# アレクサのスキルについて

- すでに2500以上のスキルが日本からリリースされてる
    - 育児、生活、ゲーム、ヘルスケア、などジャンルは様々
- 日本は特に画面付きの製品購入率高いらしく、echo spot/showなどは人気っぽい
    - 音声だけでなく画面も => マルチモーダルと呼ばれる
- APLスキルアニメーションを実現してるものもある
    - APL（Alexa Presentation Language）はecho showとか用の画面実装のための言語
    - [強欲なうさぎの迷路](https://www.amazon.co.jp/Kyukkyu-%E5%BC%B7%E6%AC%B2%E3%81%AA%E3%81%86%E3%81%95%E3%81%8E%E3%81%AE%E8%BF%B7%E8%B7%AF/dp/B07GT2CWDG)
    - https://qiita.com/kyukkyu81/items/385d500b1aa200dff201

## 様々なユースケース

- ボードゲームの進行役としてalexaを使う
- 位置情報取得のAPIもあり、外出先での利用などもどんどん増えそう？
    - 「アレクサ、あとどれくらいでつく？」みたいな使い方など
- 車載なalexa
    - amazonからecho autoってのがでてる（いまは招待制）
    - 車載のスキルにおけるベストプラクティス
        - https://developer.amazon.com/ja/docs/custom-skills/best-practices-for-designing-alexa-skills-for-automotive.html
    - [automotive property](https://developer.amazon.com/ja/docs/custom-skills/automotive-property-for-alexa-skills.html)

## マネタイズ

以下のようなものにの利用が考えられる

- アカウントリンク
- amazonPay
    - スキルから使えるので、スキルを通してなにか購入してもらう的な
- スキル内課金
    - 現在日本は未対応


## その他の便利っぽい仕組み

- リスト機能/リマインダ機能が結構便利、カスタムスキルからもAPIでアクセス可能
- 通知機能も便利、プロアクティブイベントAPIでカスタムスキルで使える

# blueprint
    
- 独自のQ&Aなど、簡単なものであればノンコーディングで作れる
- https://blueprints.amazon.com/
- [プライベートなスキルが作れるという点がよい、みたいな意見もあった](https://dev.classmethod.jp/voice-assistant/amazon-alexa/alexa-blueprints-potential-for-alexa-future/)

# 開発者向け新機能について

- amazonでは優秀なスキルのディスカバリ向上に取り組んでる
    - 優秀なスキルを、より多くの人に知ってもらう/使ってもらう工夫
    - この一環で、echo show なんかで「アレクサ、スキル」とか言うとおすすめスキルとか出してくれる
- 最近、スキルを有効にしなくても使えたりすることあるっぽい
    - ロジック変わったかも？とのこと

## alexa-hosted skill
- スキル開発にはalexa開発アカウントとawsアカウントが必要だった
- が、去年からはスキル開発時に「alexaがホスト」を選択するとawsアカウント不要になる
- alexaの開発コンソールにコードエディタも統合されているので、直接ソース編集もできる
    - 裏ではlambda動いてるぽい
- 本格的にスキル開発するならやっぱりaws使おう、とのこと

### 発話プロファイラ

- 発話のテストをするもの
    - どのインテント/スロットが紐づくかのチェックができる
- それが日本語でも利用可能になった
    - https://developer.amazon.com/ja/blogs/alexa/post/95b2ae24-2ded-4e6d-bd22-b9c7e5bb23bc/improve-your-interaction-model-throughout-the-skill-building-process-jp

### インテントチェーン

- UX向上にとてもよい
- 中間の無駄が省かれて、よりよいUXを提供できるようになる

```
ユーザー「アレクサ、コーヒーショップを開いて。」
ALEXA「コーヒーショップへようこそ。注文を始めるには「注文をお願い」と言ってください。」
ユーザー「注文をお願い。」
ALEXA「コーヒーとお茶のどちらにしますか？」
ユーザー「コーヒー。」
```

が

```
ユーザー「アレクサ、コーヒーショップを開いて。」
ALEXA「コーヒーショップへようこそ。お茶とコーヒーのどちらにしますか？」
ユーザー「コーヒー。」
```

こうなる

引用: https://developer.amazon.com/blogs/alexa/post/b3939b11-5cef-4598-b2f9-c7ad904e1692/understanding-intent-chaining



### 動的エンティティ

- 定義しておいたスロット値のリストに対して、コードから動的に値を追加して処理できる
- 例えば、 `コーヒー` `紅茶` が定義されているリストに対して、 `桜ラテ` みたいなのをコードからリストに追加できる
- 期間限定メニューとか、特定の状況/人物のときだけスロット値として対応してる、みたいなことができるぽい


# 感想

最近ちょっとalexaがおろそかになっているうちに、便利そうな機能増えてるようですね。
少し真面目にスキル作ってみたい。