StorylineのReal

 StorylineのReal

下記の発表資料になります。
June 26th, 2018 -- スマートスピーカーを遊びたおす会@IIJ
https://kotodama.connpass.com/event/89650/

8d0803aa4572615f7bce5f5288e6b716?s=128

mochan-tk

June 30, 2018
Tweet

Transcript

  1. StorylineのReal ~Alexa Skill開発 ツール Storylineのリアルなお話について~ June 26th, 2018 -- スマートスピーカーを遊びたおす会

    @IIJ
  2. 自己紹介 もっちゃん (mochan_tk) twitter: @mochan_tk facebook:https://bit.ly/2ySJRr2 • インフラのエンジニアやってます • 自称スマートスピーカー

    ガチ勢! • 夏休みに子供向けIT勉強会を開催予定
  3. アジェンダ • Storylineとは • Storylineを試そうと思った動機 • 何ができるのよ • Realなお話し •

    おまけ
  4. Storylineとは • 今回主に出てくるキーワードは ◦ Storyline ◦ Alexa開発コンソール

  5. Storylineとは • Storyline

  6. Storylineとは • Alexa開発コンソール

  7. Storylineとは • Alexaスキルを簡単に作ることが出来るツール!

  8. Storylineとは

  9. Storylineとは • 気軽にチャットで質問できる • 中の人にStorylineで発表すると伝えたら Good Luckと言ってく れるぐらい気さくな感じ

  10. Storylineとは • Alexaの開発コンソールと連携(Upload)

  11. Storylineとは • 必要なのはGoogleのアカウントのみ

  12. Storylineを試してみようと思った動機 • 子供向けのITの勉強会を開催予定 ◦ ノンコーディングで簡単に開発できるツールを探していたため ◦ Storylineユーザ数は6000人以上(日本人300人ぐらい) ▪ smartio様の記事(数か月前のものです) •

    https://smartio.life/staff-blog/interview-storyline/
  13. 何ができるのよ # 利用できる機能 用途 課題 ① 固定メッセージの利用 決まったパターンのメッセージ ・状態管理ができない ・変数(Slot)が使えない

    ② 音源の利用 効果音の利用など ・長時間の音源、連続再生 ③ GoogleSpredSheetの利用 メッセージのメンテナンスしやすい 共通メッセージを外部 (SpredSheet)で一括管理できる ・シートの1列しか利用がで きない ④ Web API の利用 拡張性の高い動きが実装可能
  14. 何ができるのよ (Private Only)

  15. 何ができるのよ # 利用できる機能 用途 作ったスキル ① 固定メッセージの利用 決まったパターンのメッセージ いろいろ ②

    音源の利用 効果音の利用など [ 発表タイムキーパー ] ・ドラの効果音鳴らす ③ GoogleSpredSheetの 利用 メッセージのメンテナンスしやすい 共通メッセージを外部 (SpredSheet)で一 括管理できる [ 断捨離の時間 ] ・複数の質問をして本当に 必要なものであるかを判定 ④ Web API の利用 拡張性の高い動きが実装可能 [ りんなとおしゃべり ] ・某女子高生AIと会話する (制限あり)
  16. Realな話 • Storylineって開発しやすいかなぁ。。 ◦ 日本語版だとできないこと多いし。。

  17. Realな話 • 例えば ◦ stopとhelpのIntentが自動で作成されるため ▪ 申請時のリジェクト対象

  18. Realな話 • 不要なstop、helpのインテントを削除して対応 ◦ この件の解決は簡単

  19. Realな話 • 他にも ◦ 日本語版は変数が使えない ▪ helpには使える書いてある。。> https://bit.ly/2lvpDtJ

  20. Realな話 • でも海外だと ◦ Storylineで作ったスキルが ▪ Alexa Skills Challengeで$20000ドルの賞金を勝ち取っ たりと

  21. Realな話 • 勘違いしていた! ◦ 本当の姿(英語版)だと本当に使い勝手の良いツールだっ た! ◦ Storylineの本当の姿が見えていなかった!

  22. Realな話 • じゃあ!日本語版を捨てて、英語版を作れバイインダ!

  23. Realな話 • 。。そういうわけにはいかない。。日本語のスキル開発したい

  24. Realな話 • で、どうしたかというと。。こうしました ◦ Alexa開発コンソール上で日本語化対応を実施! ▪ 公開までもっていけるかまで一応確かめました

  25. Realな話(日本語化) ① いったん英語版のStorylineで開発、Alexa開発コンソールに Upload

  26. Realな話(日本語化) ② YesIntentとNoINtentが自動作成されているのを確認

  27. Realな話(日本語化) ③ 設定で対応言語に「日本語」を追加

  28. Realな話(日本語化) ④ 英語版のJSONをコピーして日本語版上でペースト

  29. Realな話(日本語化) ⑤ 不要なIntentを削除して

  30. Realな話(日本語化) ⑥ CatchAllIntentの中身を日本語版に置き換える

  31. Realな話(日本語化) ⑦ 呼び出し名、公開名を日本語に変更

  32. Realな話(日本語化) ⑧ 公開前にはさらにひと手間 • 英語と日本語両方の検証を通しておく • 言語設定から英語を削除(他の方法が無いか検証中) • Storyline上の「Publishing」のページもちゃんと埋めておくと 後々楽ができそう

  33. Realな話 • できなかっことがいくつか解決できた ◦ 「はい」「いいえ」の状態管理ができない ◦ ユーザ発話のオウム返し

  34. Realな話 • 「はい」「いいえ」の状態管理ができない ◦ これは何のことをいっているのかというと ▪ 「はい」、「いいえ」を複数使う会話パターンがあったとき、 どの会話パターンの「はい」、「いいえ」なのか区別できな かった(Storylineの日本語版)

  35. Realな話

  36. Realな話 • 英語版だとなぜできるのか ◦ 標準ビルトインテントのYesIntentとNoIntentを呼び出すこと ができるから(Storylineの英語版なら) ◦ 多言語的な対応をやってくれることになるので ▪ 「Yes」というより、その言語の「肯定」な発言で待ち構えて

    いる状態 ◦ Storylineの裏処理で状態管理をやっているっぽい
  37. Realな話 • 複数の質問 ◦ 「はい」、「いいえ」でこたえる複数の会話パターンの実現

  38. Realな話 • できなかっこと再掲 ◦ 「はい」「いいえ」の状態管理 ◦ ユーザ発話のオウム返し

  39. Realな話 • Storylineなら変数使ってできます! ◦ (ただしStorylineの英語版のみ)

  40. Realな話 • ユーザ:「〇〇について懺悔したいです」 ◦ Alexaスキル:「〇〇についての懺悔ですね?」

  41. Realな話 • 行きついた最高の組み合わせ! ◦ Storyline(英語版) ◦ Alexa開発コンソール(日本語化する) ◦ ただし、推奨とかはされていませn

  42. おまけ • Googleスプレッドシートの1列目しか使えない問題 ◦ 色々検証したが解決できず ▪ 代替案、複数のシート利用して2列目以降の扱いで使う

  43. おまけ • Googleスプレッドシートでやりたいこと ◦ 2列目以降は実質とれない ✖

  44. おまけ • Googleスプレッドシートのシートで列の代わりを。。 ◦ 割り切って構造だけキープ

  45. おまけ • 参考にさせていただいたGoogleスプレッドシートのシート単位 URL取得方法 ◦ https://bit.ly/2MXuj85

  46. おまけ • ちなみに今Storyline Contestが開催されてます ◦ Storylineで作ったスキルが100人のユーザに使われると ▪ Storyline Tシャツがもらえます!

  47. おまけ • 「懺悔の小部屋」はワンチャンありますでしょうか? ◦ 6月中に100人のユーザ様に利用していただければ。。

  48. おまけ • 設計図の代わりとしての活用(例えばDialogflowに移行する時 など) • StorylineでできることはDialogflowでもだいたいできる気はしま す

  49. ご清聴ありがとうございました!