Alexaには、自作の会話アプリをアップロード・公開できる「スキル」という仕組みがあります。
目次
コードを書かずに自作スキルを作る方法
「自作の会話アプリ(スキル)」と聞くとどうしてもJavaScriptやPythonなどのコーディング知識と、AWS / Herokuなどのサーバーの知識が必要ではないかと身構えてしまします。
ですが心配する必要はありません。2019年8月時点ですでに、コードを書かずに自作の会話アプリ(以降「スキル」)を作る方法が複数用意されています。
コードを書かずに自作スキルを作れるサービス・ツール(随時追加)
コードを書かずにスキルを作るツールやサービスには、以下のようなものがあります。
- Alexa Skill Blueprints: テンプレートから自分専用のスキルを作れるサービス
- Voiceflow: ドラッグ&ドロップでスキルを作成・公開できるサービス
- Skill Flow Builder: ゲームなど、物語系のスキルをチームで開発しやすくするツール
- (随時追加予定)
Alexa Skill Blueprints
Amazonが用意するテンプレートに、自分でオリジナルのコンテンツを追加できる仕組み。それがこのBlueprintsです。
誰でも簡単に自分のためのスキルを公開できるため、Alexaをカスタマイズしたいと思った方はまずこのBlueprintsを触ってみると良いかなと思います。
Blueprintsに関する記事一覧
Voiceflow
Voiceflowはコードを書かずにAlexaスキルを作ることができるオンラインサービスです。
以前はStorylineというサービスの方がよく紹介されていましたが、サービスのピポットや終了などがあり、現在はvoiceflowを使った開発が注目されています。
簡単にスキルを作れることや、AWSなどのサーバーをホストする必要がないこと、無料から始めることができることや、APL / 課金などにも対応していることから注目されています。
Skill Flow Builder
Skill Flow Builderは前の2つと比較すると少し技術系の知識が必要となります。というのも、あくまでストーリーやゲームロジックをノーコーディングで作れるツールであり、アップロードや公開のためのサーバーについては自分で作業する必要があるからです。
英語スキルでは問題なく作成・リリースができます。
しかしいわゆるマルチバイト的な問題で日本語を含むスキルはうまくデプロイできない問題が発生していますので、ツールのアップデートを待つ必要があります。
Skill Flow Builderには2つのツールが含まれています。

Skill Flow Builder Editor
ゲームロジック・シナリオ作成のためのデスクトップアプリ
Skill Flow Builder Editorを使用することで、デザイナーとライターはビルトインのストーリーツリーを視覚化できます。Skill Flow Builderは、物語を連続したシーンとして構築するので、ボタンをクリックするだけで移動が可能になります。開発チームに依頼しなくても、物語を書いたり更新したりでき、ビジュアルや効果音を追加したり、ゲームロジックを実装することもできます。Amazon Pollyの音声を特定のキャラクターに割り当て、画像を追加し、BGMを追加します。
https://developer.amazon.com/ja/docs/custom-skills/understand-the-skill-flow-builder.html
スキルの実装部分をノーコーディングで実現するためのツールがこちらです。
デスクトップアプリとしてダウンロードし、GUIで物語やゲームを実装することができます。
また、このアプリで作成したデータをエクスポートし、次に紹介する”Skill Flow Builder Core”ツールを使用することで、簡単にデプロイができます。
Skill Flow Builder Core
開発者向けに、Skill Flow Builderはコマンドラインインターフェース、コンテンツデバッガー、既存の開発ツールとの統合、拡張機能のサポートを提供しています。Skill Flow Builderを使用すると、Alexa Skills Kit SDK、ASK Command Line Interface(ASK CLI)、AWS CLIなどのツールを使用できます。Skill Flow Builderは、Alexa Presentation Language(APL)テンプレートの拡張機能やスキル内課金と統合できるので、実装時間が短縮されます。
新しいSkill Flow Builder形式(.abc)ファイルをデザイナーやライターから受け取る場合、コードを編集する前にスキルとしてのコンテンツをデプロイして検証できます。シーン指示と呼ばれるビルトインのコード記述機能を使用することで、ビジネスロジックを直接.abcファイルに実装することも可能です。
https://developer.amazon.com/ja/docs/custom-skills/understand-the-skill-flow-builder.html
手元のPCで作ったスキルを実際に公開するためのツールや、GUIで作成した物語・ゲームを実際に動かすためのコードライブラリなどが用意されています。
Skill Flow Builder Editorで作られたエクスポートファイル(.abc)をCLIからデプロイすることで、Alexaに関するコーディングを行うことなくスキルのデプロイが可能となります。
どのツールを使うのがおすすめ?
理想はすべて触ることですが、今回紹介しているツール・サービスの中では以下のような棲み分けができるでしょう。
かかりつけ医の電話番号やちょっとしたレターなど、個人・家族で使うものを作りたい -> Alexa Skill Blueprint
「別に公開したいわけじゃないんだよなぁ」という時はまずこれを検討しましょう。
Amazonが公式のアプリとして提供している機能で、用意されたテンプレートにテキストを入力するだけで利用できます。
「カスタムQA」がとくに強力で、家の中で「あれどこに置いていたっけ?」となるものを教えてくれるリストや、電話番号のリストといった「ねぇ、◯◯ってなんだっけ?」「え、覚えてないの?」みたいなやりとりが家族で発生する場合はここに登録しておくと便利です。
また、テンプレートの種類は随時追加されていきますので、定期的に見ておくことで新しい発見があるかもしれません。
個人的にスキルを作ってみたい・簡単にモックアップを作ってデモしたい -> Voiceflow
個人で開発されている方や、社内で提案してみたいという方にオススメしたいのはこのVoiceflowです。
ブラウザ上でドラッグ&ドロップするだけでスキルが作成・公開できる上に、日本語のコミュニティも活発という点が魅力的です。
用意した台本をただ読み上げるだけの「オズの魔法使いテスト」のような形でスキルを作成し、それをクライアントや社内で評価してもらうことができます。
オズの魔法使いテストでは、被験者は本物のシステムとやりとりしていると思っていますが、実のところそのシステムは、魔法使い、すなわちデザイナーに操作されているのです。これは本当に上手くいきます。Amazon Echoを部屋に置き、音声をPCから出力すれば、ほとんどの被験者は喜んで騙されます
https://blogs.adobe.com/japan/web-how-to-voice-ui-prototyping-delight-users/
また、最近他のユーザーが作成したテンプレートを利用できるようなマーケットプレイス機能もできたとのことで、より簡単にスキルが作れるようになるのではと期待しています。
AWSアカウントはあり、開発チームもいる。ただし開発はノーコーディングでやりたい -> SKill Flow Builder
ちょっと複雑な条件に見えますが、要は会社でスキルを作りたい時の選択肢ということです。
実際にスキルを作られた方はわかると思いますが、ゲームや物語系のスキルを1から作ろうと思うとそれなりの工数とASK SDKなどのAlexa開発に関する知識が求められます。
しかしSkill Flow Builderを使った場合、作成した物語やゲームをコードに実装する部分についてはツール側がやってくれます。
開発チームにはSkill Flow BuilderのCLIツールでデプロイする方法など、最低限の協力だけ依頼し、Skill Flow Builder Editorで開発を進める。
そのような形であれば、これまでAlexaスキルを作ったことがないチームや、あまり開発側のリソースが用意できないチームでもゲームスキルなどを開発・運用できるようになるでしょう。
コードを書いてスキルを作る方法を知りたい方は
技術系記事をまとめているブログにて、定期的にAlexaスキル開発系の記事を公開しています。
また、技術書典5にて販売したAlexaスキル開発についての書籍もDL購入可能ですので、ぜひこちらもどうぞ。
まとめ
スキルストアを見ているだけだと、痒いところに手が届かないなぁと感じることが時折あります。ですが、そんな時に簡単に自分用のスキルを作る方法があるということを知っていると、DIYで生活をより便利にすることができます。
無料から始めることが可能なサービスも複数ありますので、ぜひお試しください。