Alexa Live 2021

どうも。ブログを書くのは久しぶりです。Alexa Live 2021 では50 以上も新機能が発表されてもうお腹いっぱいです。当日食べきれなかった分も含めて、Skill Builderのセクションを振り返っていきたいと思います。

個人的な所感と理解なので、異論、訂正 Welcome です。

https://developer.amazon.com/en-US/alexa/alexa-live

発表された機能の一覧と概要はこちらのブログで追うことができます。Developer preview や Private Beta のものが多く、英語のみ対応のものがほとんどですが、使うにはまずリクエストを送る必要があります。興味をそそるものがあればリクエストしましょう!

https://developer.amazon.com/en-US/blogs/alexa/alexa-skills-kit/2021/07/more-than-50-features-to-build-ambient-experiences

それではいきましょう。

Alexa Conversation

よりナチュラルな会話をより少ないコードで実現するAIベースの全くあたらしいスキル開発のかたちです。Pre Wide Model を 利用するというところが大きな特徴です。これまではスキル個別に閉じていた 機械学習のかたちから、これまでに蓄積された会話体験を集約、学習させることによって、より自然に、突然いったりきたりするユーザーの発話にも応対することができるようになります。「蓄積された会話体験」から構築される会話要素の確立の海のことを Knowledge-Graph と呼んでいます。これは、後述するAlexaEntities と繋がっているのでしょうね。きっと。

で、Alexa Conversations を使う一番のメリットは、会話のバリエーションに少ないコードで対応できる、というのが一番大きいのではないでしょうか。

たとえば、

文脈の中で使う「あれ」「それ」「その」みたいなものを適切に汲み取る

「あ、ちょっとまって」などの方向転換に応対する

というような会話が、少ないコードで実現できるようになります。

個人的には、「文脈の中の指示代名詞を理解する」というのはこれまで実装が難しい(というか実現がほぼ不可能に近かった)点で、期待大です。

Voice-Forward-Account-Linking, Voice-Account-Linking-Skill

Login With Amazon(LWA) すれば、よりシームレスに Account Linking を実現できるしくみです。Voice Profile がベースとなっており、必要なスキルを使おうとしたときに、VoiceProfileが登録されていれば、Alexaから「LWAの情報を使ってログインしていいかな?」と伺い、Verificationが スマホに飛びます。スマホで承認すると、LWAに登録されたメールアドレス、電話番号を使って、Account Linking ができるという流れです。App 2 App Linking からちょっと先に進んだかな?という程度の感覚かな。Developer Consoleで ポチポチするだけで、有効になり、Alexaが勝手に聞いてくれるようになるので、ユーザー体験よりも開発の手間を軽減するメリットのほうが大きそう。

NFI Tool Kit

ついにきました、NFI。Name Free Intent です。Self-Serviceモデルです。InvocationNameをすっ飛ばすことができます。DeveloperConsole の Invocation セクションで、スキルでよく使うフレーズを呼び出し名として登録、テストができるとのこと。言語体系的に主語が省略されがちが言語系では、主語にあたるInvocation Name が省略できる(別のフレーズで置き換えることができる)のは、大きなメリットです。待ち望んでいた機能の一つです。(まだ英語圏だけなんですよね。はやく日本に!)

ちな、Developer Console ではもう使えます。Publishしたスキルにのみ有効にできるぽいです。

Paid Skills

有料のスキルが作れるようになります。(やっと)

Sync Locales

同一言語圏の異なるロケールに、変更を自動展開できる機能です。英語圏にスキルを展開する場合に、各言語でUtteranceを追加する必要がなくなります。必要に応じて、個別のロケールには展開しない、ということもできます。日本語でのメリットはほぼないですが、英語圏はユーザーも多いですし、これを機にUS向けスキルを作ってみるというのもいいですね。

Showcase

Alexaと関わりのあるスタートアップの紹介です。気になったものを。

SYNTAINT

Voice 特化型のエッジチップを開発してる会社です。インターネット接続なしに、デバイス自身のチップで学習し、必要に応じて送信するスタイル、というところに可能性を感じます。Without Cloud Connection をベースに会話をパーソナライズできるなら、情報がスマートフォンに基本閉じている状況になるので、セキュリティ視点でのメリットが高いですね。「アレクサの機能向上に協力しますか?」の質問に同意したときだけ、学習結果をCloudに送る、というかたちがベースになれば、Privacyに対する安心感も高まるのでは?

SPAN

家中のエネルギーを制御できる管理パネル。どのエネルギーをどこに振り分けるか自由自在。どこに何からくる電気をあてれば効率的か?なんてのは、素人目にはわかるわけもないので、レコメンデーションくれて、もっともエコな配分をしてくれるとか最高でしょう?

Voiceflow

おなじみ?Voiceflow。VoiceAppのVisualEditorです。もう、VisualEditorというより、ノンコーディングな統合開発環境+プラットフォーム、といった感じさえしますね。Alexa Conversation が出てきてどういう棲み分けになるか、また、Alexa ConversationをVoiceflowがどのように取り込んでいくのか、気になるところ。

APL Widget

APL のパーツをスキル起動なして、Alexaの画面から選べる小さなビジュアルパーツのこと。ランキング、レコメンデーションなど。ランキング、レコメンド以外での用途があまり思いつかなかったけれど、スキルの入り口として、こんなことできますーをラフに追加、削除できるというのは、トライアル という意味ではよい入り口かも、と思います。

ACDL

Alexa Conversation Description Language の略で、Alexa Conversations を使ったスキルのマネジメントをCLIでできますよ。というツールです。ASK-CLI 経由で利用し、Developer Console には極力行きたくない人向けのツール。Automationをどこまでできるかは、個人的には未知数。(使ってみないと。

https://developer.amazon.com/en-US/blogs/alexa/alexa-skills-kit/2021/03/announcing-general-availability-for-alexa-conversations

https://developer.amazon.com/en-US/docs/alexa/conversations/acdl-reference.html

Dialog Evaluation Tool and CI process

最近はお客さんのスキル開発で、言語モデルの評価やCIプロセスに関わることが多いので、こういうツールに興味が深まっているところ。NLU Evaluation ToolsやASR Evaluation Tools APIから使えるので、CI回すこと自体はそんなに難しくないですが、実際に発話してテストしないと何が出てくるか本当に分かりづらいのがVUIなので、開発チーム以外の人でも容易にさわれて、フィードバックできる統合的なプロセスを回せるUIであって欲しいなと思います。

Send Phone

VUIで調べた結果などをスマフォに送って、詳細はそっちで見てねを実現できます。

Event Trigger

Location Service と連携して、たとえば、ジョギングに出たら、いつもの音楽が鳴る、とか、目標のタイムは、とか言ってくれるようにできます。個人的には、空港に入ったら、あなたのフライトはこれで、ゲートは何番でーとか言ってくれるとか最高。

Gaming

Shared Activities API で ネットワーク内のアレクサユーザーを招待してゲームに参加させることが可能になります。ステートマネジメントなどは Shared Activities API側で管理するので、こちらは(いつものように)Directiveを送り込むだけ。

Visual Studio ToolKit

Devコンソール使わせる気ないなw と思わせるほどにリッチになってます。ローカルビルドで、SkillシミュレーションAPIをたたけたり、APLをAlexaのコンソールとほとんど同じかそれ以上な使用感でプレビューできたり、かなり高機能です。

AskSDKControllsFramwork for Nodejs

マルチバリュースロットと中間状態は定義しなくても補完してくれるのがいいですね。

AIBased Sample Utterance Recommendation Engine

サンプル発話を提案してくれる機能です。10程度のUtteranceを一気に追加できるます。しかも、不適切な発話排除機能つき。最初に5つほど考える必要がありますが、5つなら絞り出せますね。

Alexa Entities

Alexa Conversations のところでも出てきました。ちょっと難しい言葉で説明してしまったので、ここで簡潔に言い換えると、「任意の単語(発話)に関連する情報がリンクされて繋がってる辞書」のことです。例えば、「オランダ」というユーザー発話に対して、Alexa Entity上では、Netherlands という別の表現や、人口、首都、広さなどの関連する情報がリンクされています。これらの情報は、Link Data API で取得できます。

https://developer.amazon.com/en-US/docs/alexa/custom-skills/linked-data-api-reference.html

ちなみに、BuiltIn Intent にはデフォルトでこの機能が有効になっています。

Custom Pronounciation

特定の単語、ブランド名、キャラクター名などの発話をセルフサービスで追加できる機能です。個人的には1、2を張るくらい熱かった発表です。

Hosted Skill

FreeTierの制限がなくなりました!100ドルのクーポンが25ドルに減額されましたけどw

ということで、気になったところの所感をでした。まとめるだけで一苦労。。