なんも分からないのでしらべた

なんもわからん!…ので、できる範囲で調べる。

SmartHacks スマートスピーカーオフ会#3行ってきた(雑記)

SmartHacks山本さん主催のスマートスピーカーオフ会行ってきた。
f:id:kbn1053:20180418010020j:plain

しかし、参加者が山本さんと自分だけというガチ会になってしまった…。

詳細

山本さん(以下、敬称略)
自分

  • 山本:須磨スマボスの中の人技術者でわりとすごい人ですよ。経歴もすごい。(経歴参考)
    • 自分:若干怪しめの職業youtuberの人かと思ってましたw
    • 山本:唯のyoutuberではないw ご本人も人あたりの良い方ですよ~😊
  • 山本:スマートスピーカーのLED表示方式はechoが優れてると思います。GoogleHomeは後ろ向きに置いた場合、LED表示見えなくなっちゃうんですが、echoだとそんなことない。高い所に置いても見えます。
    • 自分:確かに。まぁ据え置きしちゃうとLED表示ほとんど気にしませんが…
    • 山本:それはそうですwあとは話者方向をLEDの光で示してるって小ネタもあります。
  • 自分:スマートスピーカーの基本言語は英語だけど、そこから日本語に対応にさせるのって固有問題も多いしコストが高いですよね。いつかスマートスピーカーの日本市場が見捨てられないか怖いっす。
    • 山本:各社の感触ですが、片手間でやるレベルではない力の入れ具合を感じます。真の意味でのIoT、音声入力機器が遍在するようになるまで継続してやってくれると思いますよ。
    • 自分:日本技術ベースのスマートスピーカーが出ないのは残念ですね…。海外に丸投げしてて大丈夫かよという感じも。
    • 山本:一応Lineさんは日本で音声入力やってると言えるのではないでしょうか?
  • 自分:音声入力技術で先行してるメーカー(cortana,shiri)あったのに、amazonが米国で優勢になったのはどうしてなんでしょう?
    • 山本:機能の切り取り方が良かったのでは?何でもできる機械(スマフォ)に新機能(音声入力)が追加されても全然感動が無いです。そこを音声入力機能を専用ハードとして取り出したことが革命だったのではないでしょうか。ユーザーに"音声入力便利ですよ"と改めて意識させるという。
    • 自分:なるほど。 実際、既存の音声入力機能って過去からの蓄積で全然役立たずのイメージがあって、一切使う気になれなかったですね。そこをうまく脱却したと。
    • 山本:そうですね。そして、スマートスピーカーで音声入力が見直された後に、「それandroidでも使えますよ」と音声入力に慣れたユーザーを逆輸入するルートがあるのはGoogleさんの強みです。
  • 山本:echo spot良いっすよー。音声操作のフィードバックで映像と文字表示させると便利。米国で一番売れてるらしいです。
    • 自分:音声のみでアプリ作るのと段違いの情報量出せますね。 多数のサジェスト出したとしても苦痛にならない。音声のみだと3個が限界。というか2個の判断がすでに苦痛です。
    • 山本:spot用のスキル作成も、音声のみとほぼ変わらないようです。デバイスに画面がある場合のみ文字表示するなどのオプション処理書けばOKのようです。
  • 自分:最近のアプリ/スキル数の増加どうです?もう廃れてない?
    • 山本:そんなことないです。バリバリ増えてるけど、GoogleHomeのアプリ増加量はちょっと落ちたかも…?Alexaはものすごい増えてる。
  • 自分:その差はなぜでしょう?
    • 山本:ハンズオン等の説明レベルが違うのかもしれません。とりあえず丁寧なチュートリアル資料があり、見よう見まねでアプリ申請出せるところまでガイドするのがdeveloperを増やすのに大事と感じます。
    • 自分:Dialogflowのコンソールも、初めて見ると「ヤベェ」ってなりますね…。これに限らず、なんでも新しい技術初めて入門するとき、滅茶苦茶壁があるじゃないですか。超えるのにやる気がものすごい必要。でもチュートリアルを実際に始めると思ったより大したことないという…いざ始める時の気合部分がすごい壁。
    • 山本:分かり味あります。とにかく用語とか分からずとも入門通りやって、動くものができるのが大事ではないでしょうか。
  • 山本:個人所有でスマートスピーカー一番持ってるのは筋トレ君(?正確なアプリ名失念)の人ですね。8個持ってるそうです。
    • 自分:持ちすぎる!そんなにいる?
    • 山本:スマートスピーカーラブゆえに、だそうですwプログラミングもアプリ開発でほとんど初めてやったとのこと。良い話ですよね🤗
  • 自分:clovaは他社に比べてちょっと劣勢では?
    • 山本:Lineと連携できるという強力な強みあるのでそんなことないですよ。IFTTTでの発話も唯一対応してるのも。今のところ各社それぞれ強みがあるので、業界的には面白い状態です。切磋琢磨されて良いと思います。
  • 自分:米国の20%(4000万人)所持に比べて、日本の普及具合はまだまだこれからという感じだけど、ブレイクするタイミングいつだろうか?
    • 山本:iphoneの爆発的普及した過去を考えると、何らかのキラーコンテンツ(アプリ)の登場で一気に普及するというルートがあり得ると思います。
    • 自分:自分はちょまどさんが言ってた「スマートスピーカーは老人と子供にこそ必要」説を押したいです。老人への必要性を十分説明できれば、行政が(防災無線代わりに)実験的に各家に配布しだしたりするとか…
  • 自分:個人開発のアプリだと工数的に会話をリッチにできない、いわゆるchatbotレベル止まりであんま高度にできないんじゃないですかね?
    • 山本:そもそもスマフォで「文字ポチポチ入力しなくてよい」だけで音声入力にする意味がありますよ。画面見なくて良いし、いちいち漢字変換したりしなくていいってのはそれだけで素晴らしい進化です。
  • 自分:これからのスマートスピーカー利用イメージは?
    • 山本:大手企業では仮想と現実の融合、境目をなくすような目標持ってますね。スマートスピーカーでも、会社では音声入力して、電車内ではスマフォ操作して、家に帰るともう一度音声入力に戻るようなシームレスな体験ができます。
    • 山本:スマートスピーカーの入力機器・筐体がどうこうではなく、もはやどんな状況でも音声入力できるのが当たり前になる、という風になると考えています。

メモ取らなかったので大体の内容です。読みやすいように補完してます。
ヤバイ内容はヤバイのでカットしてます。ヤバ味が必要な人はOFF会へGO!

その他

2時間ぶっ続けでしゃべってたと思うんですが、短期記憶がやばいので書き起こしはこんなもんです。
良い話が非常に多いかったので次回、許可あれば録音したいですね😎
あとは全体的に聞いてばっかりになってしまい、山本さんには感謝しかない。

Build Actions for GDG Tokyoに行ってきた(雑記)

2018/4/16にBuild Actions for GDG Tokyoに行ってきたので内容をメモ。
f:id:kbn1053:20180417165013j:plain

GDCとGDG混同する…。
GDGとはGoogle Developers Groupの略らしい。

公式

gdg-tokyo.connpass.com

当日のスライドは基本的に公式にまとまっている。

各種リンク

tgetterまとめ
togetter.com

ハッシュタグ*1 #buildactions
twitter.com

まとめ

  • GoogleHome IoTの最大の特徴は、電気がついているか、鍵が開いているか等の機器の状態を取れること
    • developerはIFTTT構成を超えたものを作っていこう
  • 人と人とが会話するときには言葉に現れない隠れた前提条件が存在する。
    • VUIでは(多くの場合)前提がない状態から始まる。それを意識してVUIを組み立てる。相手をおもてなしする。
  • AWS でも(lambdaで?)ライブラリ読み込めば普通にapp.tellとかできるので楽っすよー(田中みそさん)
  • 開発者向けslackチャンネルがあるよ!


詳細

ノベルティ

トートバックとスポンサー企業のチラシ(アマゾンギフト券2000円クーポンコード)
f:id:kbn1053:20180418002859j:plain

Actions on Google概要・開発フロー byあんどうやすしさん

  • AoGのうれしみ:難しい自然言語処理やってるくれる
  • GoogleAssistantの強みは他社より対応デバイスが多いこと
  • 会話(VUI)が効果的なものを意識しよう
    • 一発何かやってよ
    • 簡単なアクション・処理
    • 手を使わないもの
    • 理想的には上記に縛られないようにな処理も便利に受付できるべきだが…
  • 逆に効果的でないアクションもある
    • あれやってこれやってそれやって。複雑すぎるもの
    • 命令する人も大変
  • ユーザーはVUI対象に勝手に人格を認める
    • 作り手はペルソナを用意して作ること。(口調、態度など)
  • 会話フロー組み立てはまずはうまくいくパターンから作ろう
    • ハッピーパスという
    • その後、ダメなパターンを復帰させる会話(会話の修復シナリオ)などを継ぎ足していく
メモ
  • Dialogflow利用しつつUGCやる構成作れる?
  • GoogleHome以外のデバイスに特化したアシスタントアプリどんなイメージ?

VUI Design概要 by 田中洋一郎さん

  • 人間対人間の会話が成立する前提
    • 人の話は内容を予想しながら聞く、つまり隠れた前提を持っている
    • 長年連れ添った夫婦のツーカー
  • 人間対機械
    • コンテキストの質を高くする
    • 人間の失敗を前提にする
    • よくばってあれこれ言わない
    • おもてなしの心
  • 書き文字vs話言葉
    • 話言葉はロジックではなくユーザーを信頼した組み立て方をするとよい。
      • 「ヒントと言うと、いつでも聞くことができます」より「ヒントを聞きたいですか?」
    • いつでも終われるようにしておく
    • 前提として会話は短く単刀直入にする。
  • アプリの第一印象はwelcomメッセージ
メモ
  • chatbotとの差別化ポイントどこだろう。会話ボリュームの設計・実装量を考えると個人開発では差別化できない?
  • 人間同士の隠れた前提を、ソフトウェアの実装に置き換えて考える。前提とはアプリ内に蓄積されたユーザーのパーソナルデータの蓄積具合ではないか。
    • 単純にはユーザーデータ取りまくって次回以降の会話にフィードバックする。「また今日も残業ですか…?」
  • アプリの調査方針の指針。welcomeメッセージの質をスコアリング。
  • おもてなし実装はコスト高い。安くおもてなししたいがアイデア?chatbotのノウハウあるかな?
  • おもてなし実装具合でアプリの質がばらける?GoogleHomeのメイン音声との切り分けはブランド的には正しい。

VUI設計後の実装からリリースまでのポイントby 田中洋一郎さん

  • spreadsheetいいよ~。背景色交互に色も付けられるよー。
    • UMLもいいよ~。
  • VUIの設計ツールは国内(日本語)対応したもの無い
    • 海外はあるけど日本語文字入れるとだめだった。
  • spreadsheetで台本作る->会話の変化ポイントを見つける->UMLに起こす->インテントを作る
    • インテントはユーザー目線で作る
    • UMLのフローによって実装時のfuifilmentが一意に決定される

LT (1) VUI with IoT by大橋啓介さん

  • HomeIoTアプリ作ろう
    • IFTTTとかでやってる人はにわか(意訳)*2
  • メリット
    • ウェイクワード後のアプリ名が不要になる
    • 部屋の指定ができる
    • バイスの状態が取れる。強力。
  • 前回のハンズオン資料見てね

docs.google.com


(以下もくもく会にて質疑)

  • 家のデバイス情報はHomeGraphで管理
    • HomeGraph自体は非公開データです(Google社山口さん)
  • バイスの基本操作はある程度限られている
    • テレビだと音量操作とかできるよ
    • 海外だとサーモスタット操作とかあるよ
メモ
  • 風呂大好き日本人的にはオート風呂したい。風呂ハードメーカーさん早く。

LT (2) SSMLで出来ること by 里山南人さん

  • audioタグで音声再生は楽しい
  • サウンドライブラリ結構いいよ
    • youtubeのサウンドライブラリも見てみて。ただstrageとかに置きなおす必要はあるけど…

LT (3) Dialogflowのオススメな使い方 by津田恭平さん

  • JSON見たらparseしたくなる病はやめよう
    • ライブラリのapi使えばできちんとデータ取れるからそれを使おう
  • dialogflowはzipダウンロードしてGit管理する

もくもくタイム

  • 割と時間押してて30分ぐらい

スポンサーセッション by株式会社grooves (Forkwell) 様

  • エンジニアのキャリアアップやってます
    • スパム送りまくるエージェント会社とは違うぜ
  • 会社との交渉力をつけるべき
    • それには個人のスキルセットが大事だ
  • 今キャンペーン中で登録するとアマゾンギフト券あげるのでよろしければどうぞ!

懇親会

  • ピザとコーラorアサヒビールorウーロン茶
  • twitterに生息している人が参加してて面白かった
    • 個人名刺にはtwitterアイコンつけたほうが認識されやすい…
  • 本名や姿は不明だが開発したアプリ名言うと「あーあのアプリの人!」ってなるのは開発に熱気がある界隈感あって良いなあ
  • いらすとやにお世話になってない開発者はいない
その他

当初connpassにて、160番で補欠だった。
規模が大きいイベントは大体当日までにキャンセル者多数出るので経験上参加可能になることが多い。
狙ったイベントは補欠でも諦めずに入れとくと良いかも。

あとは、発表内容が先月ののVUI meetingと結構かぶってた…*3

*1:海外のタグと共用?

*2:developerを煽っていくスタイル

*3:一カ月だとそりゃそうだよな…😓

GoogleHomeアプリ「東京都府中市のゴミカレンダー」をリリースしました。

GoogleHomeアプリ「東京都府中市のゴミカレンダー」をリリースしました。

www.youtube.com

公式リンク

assistant.google.com

経緯・工数など

東京都府中市でゴミカレンダーが一部不配だったようです。
www.asahi.com

記事は4/4の問題になっていますが、自分が知ったのが4/5の夕方のTVでした。
なんやかんややって4/6の19:30に完成してGoogle社に申請。
土日は承認システム休みで、今日の10:30に承認OKが出てました*1

ベースとなるソースはあったのですが、差分対応部分がDB構造へ影響出てしまって、トータルの作業時間およそ15.5h。思ったよりかかりました…。

その他(きっかけ)

丁度はてなで話題となっていた「国税庁のURL変換器」について、作られたハッカーのnote.読んだのですが、
以下の内容がカッコイーと思いました。

エンジニアの業界では,「ハック」という言葉があり,「ハッカー」と言うとなんかコンピュータを使って何かすげー事をする人みたいなイメージがあるんですが,
元は「雑だけどうまく役に立つものを作る」みたいな意味らしいです.

自分も今回作れる材料が丁度揃っていたので、いっちょ対応してみようかと思い立った感じです。


いいよね。ハッカー
憧れる。

*1:多分朝1で承認処理やってくれた風。感謝…

Google Homeを遊びたおす会へ行ってきた(雑記)

田中みそさんが主催したGoogle Homeを遊びたおす会に行ってきた。
個人主催の勉強会で、300人近い規模の奴は初めて。終わってみると暴動等もなく、懇親会もいい感じに熱気があって良かったなー、と思う。
あとはGoogle社の山口さんに個人的な質問ができたのは収穫だった。

f:id:kbn1053:20180329063415j:plain

公式

kotodama.connpass.com

  • 当日のスライドも上記ページにある。

まとめ

・GoogleHome連携用のラズパイ、1ヶ月稼働すると25円ぐらい。
・「ChromeCastへの命令文言がサードパーティに奪われてるよ!」→ 「AoG内部処理のランキングやサジェスト変動による影響。日々調整・改善してます。(まずいので対応します的な感じ)」
・(個人質問)AoGは英語圏発のシステムなので、漢字の読み方が文脈で変わるなどの日本語固有問題は個別に対処している。不足には対応していきたい。AoGサポートページからどんどん質問投げてくれ。

詳細

Google Homeでつくるスマートホーム by 田中みそ

  • TVの操作で音声操作は煩雑。結局はリモコンが楽。Firebase Hostingでアプリ化したリモコン1個で完結させる。
  • 家電操作程度ならIFTTTで作るのは問題ない。簡単に変数取れるので楽。
  • GoogleHome怖い話。深夜に家電が勝手に動作。外部侵入を疑ったが、寝言に反応してGoogleHome起動してただけだった…
  • 「嫁ブロックどうやってクリアした?」
    • 「実用に訴える。実際小さな子供がいて、手が離せないときに家電操作は便利で実用に足る」
  • 「沢山GoogleHome買ってたけど使用頻度どう?」*1
    • 「いろんな部屋に置いたけど、ほとんどの利用はリビング」

他にも色々質問あったけど、メモが間に合わず。

メモ
  • リモコン1個に統合(スマフォのみ) > 音声操作 > リモコンだらけ という使い勝手の図式がありそう。スマフォでできるならそれでいいよね。でも、メーカーごとにリモコンアプリ出されてもうざいだけ。
  • バナナパンツでアイスブレイクしていくプレゼンスタイル。技術者には、芸人スキルも必要ということ。大変な時代。
  • 勉強会に参加して田中さんのイケメン具合を確認しよう、というキャッチコピーが思い浮かんだ。

AoG会議室予約システムの構築 by MS太田さん

  • OAuth認証必要なエンドポイントとの連携はすぐできるよ!
  • AoGのoverviewの一番下にAccountLinkingある。認証方式色々ある。細かく説明しないけど、OAuth知ってる人なら悩まないような項目だよ。楽勝。
  • シミュレーターでのAccountLinkingテストは会話が即終了するのでハマる。DEBUGタブに認証トークン(?)出てるのでそっちを見よう。
  • 会議室予約システムのサンプルコード、GitHubにコード上げてるので見てね。AccountLinkingのサンプルとしても使えるはず。
  • AoGの最大の強みは、Android携帯で(iOSでも)動くということ。スマートスピーカー持ってない人でも、スマートスピーカー持ってるようなもん。意識していこう。

質疑無し。

メモ
  • AccountLinking使ったことないので参考になる。ソース公開されてるのでありがたい。
  • AoGシミュレーター周りはハマりポイントが多い。個人の知見がわりとある気がするナァ。
  • Office365とリンクしてたけど、G suiteとも行けるようになるんじゃね?的なtweetがあった。G suite使った良い感じのアプリ作れそう。

Google Home 用のお遊びアプリをMicrosoft Azure使って作ってみた by ちょまど

メモ
  • 設備不具合のため、大変なことに。田中さんもデモできなかったので、GoogleHome周りのプレゼン機器呪われるのかもしれん。
  • 技術者は油断すると固いプレゼンになっちゃうことが多いと思うので、クイズ付きのプレゼンできる人はそうはいない。と、おもう。

Actions on Googleでできること by 山口能迪さん

  • IFTTTメリデメ。メリットはコードなしで作れる。デメリットは応答結果が無いこと。
  • メディア系のアプリ=DirectActionsは法人事業者のみ対応してる
  • Explicit invocationで会話変数取れるので、会話が短縮できるよ。
  • Implicit invocationでファジーなユーザー呼び出しからアプリが呼び出されるようになる。もっとImplicit入れてくれ。*2
  • ユーザー入力のゆらぎに対応するには形態素解析とかやらんといけないので大変。そこらへんはDialogflowで対応できる。コンソールからユーザー入力見てトレーニングしていこう。
  • ラズパイあるならAIY Voicekit使おう。田中さん使ってくれ。
  • Chrome CastのGoogleHomeテレビつけてがサードパーティに取られてるんだけど!」
    • 「AoGの内部処理でランキングが変動したせいかも。日々調整してます。まずいので対応したい」
  • 「simulatorでImplicit invocation動くのか?」*3
    • 「設定でOFFモードになっててONにしました。できるようになってるはず」
  • (fishさんの質疑にて)「終了系のIntentとか各ユーザーが作るのは無駄では?共通化してほしいんだが」
    • 「公式からsample出します!zipインポートして使えるようにします」
メモ

f:id:kbn1053:20180329083551p:plain

  • 懇親会で山口さんに質問したくて長蛇の列。山口さん休む暇もなし…。
  • 懇親会にて:スマフォのGoogleAssistantから表示できる使い方・ヒントページにある楕円で囲まれた文字部分は「押せる」。押そう。

f:id:kbn1053:20180329094335p:plain
f:id:kbn1053:20180329094344p:plain

  • 懇親会にて:SSMLで文末の「?」部分をうまく疑問形音声にできないか。*4
    • 対応に挙げときます!現状でも、疑問文的な文末表現は疑問形で発話している。漢字の読みが変わるなど、日本語固有対応が必要なことが多い。何か気づきあればサポートページから投げてほしい。
  • Explicit invocationは2個引数取れるようだ。がおまるさん試してた。色々できそう。


質問できなかった
  • テストアプリはAoGのtestDraft押下しないと1ヵ月で反応しなくなるらしいけど、最近どうなの?
  • 面白ワード(↑↑↓↓←→←→BAとか)に反応するけど、一覧とかある?

Dialogflow tips by fishさん

  • Dialogflow挫折経験あり。頑張りたい。
  • Dialogflowは静的な処理は得意。プログラミング不要でほぼできる。
  • Entityってなんだ?辞書みたいなものと考えよう。必須チェックボックス入れないと取りこぼし出ることがあるよ。
  • Intentアンチパターン。似たような会話のintent作りまくると、失敗することが多い。Entityを使い1つのintentにするとよい。
  • Dialogflowはいろいろなサービスと繋がれる。システム作る場合は、Dialogflowをなるべく処理フローの先頭に持ってくるべき。体験として後ろの方に置くとキツかった。
  • 設計Tips。zipエクスポート機能があるので、定期的にエクスポートして差分管理するとよい。
  • スクリーン無い状態であれこれ説明するのは無理だ。スクリーン有無状態が取れるので、処理を分けよう。
  • プロジェクト上限数は課金して申請すればもりもり上げられる。課金自体は無駄にはならないので申請しよう。
  • 遊び倒す。Dialogflowでmp3再生はコード書かなくてもすぐできる。やろう。
メモ
  • fishさんプレゼン慣れしてる。
  • 各社サービス(line,FB等)と簡単に連携できるのは魅力。
  • 話し言葉自然言語処理サービスととらえる?

スポンサーLT by Smart Hacksさん

  • ランキング見るとGoogleHome / Amazon echoでアプリ人気違う。片方でダメでももう片方で使われるかも。
  • 企業作成アプリに個人アプリも負けてない。作ろう!
  • 開発者個人インタビューやってるよ!あと企業さん広告いかがっすか?*5

その他

IIJ入ってるビルがものすごいデカい。運営のSmartHacksさんとIIJスタッフさんお疲れさま。
普段着と同じ服装の人いた。危なかった。<-勉強会に着ていく服がねえ問題。

*1:これ自分です

*2:なみあるの人とか

*3:これ自分です

*4:自分です

*5:30万/2week…

Voice UI Designer Meetup Tokyo個人メモ(雑記)

3/14 Google社主催の Voice UI Designer Meetup Tokyo行ってきた。
Google社の内部に入るの初めてだぜ!いろはす無料。というか六本木ヒルズ初めてだ。

f:id:kbn1053:20180315063635j:plain

公式

events.withgoogle.com

各種リンク

togetter.com

  • togetterまとめ

www.slideshare.net

  • 日本語のVUI最強資料来ました🤨

twitter.com

まとめ

  • 日本語VUIのエッセンスは安藤幸央さんの資料が最強。会話は人でも難しい。誘導尋問的に作るとユーザーにやさしい。
  • GoogleHomeはGoogle社の技術の結晶。騒音の中で呼びかけに応答できるようになる壁を越えたので製品化できた。
  • IoTべからず集は残酷だが真実味ある…😰

詳細

Actions on Google / Google Home セッション
  • 徳生 裕人さん
  • スライドどっかにある?(不明)
  • Google社的にAIファーストで進めている。あらゆるプロダクトにAIを。
  • 騒音の中の音声認識エラー率25%に減ったので製品化できた。
  • 音声合成もmsecですごいことやってる。不気味の谷を越えた。
  • 社の使命:「(あらゆる)相手のコンテキストを正しく受け付けて、正しいものを返す」を実践。
  • ペアレンタルコントロール今年対応
  • 多言語対応。日本はかなり早くやった。中国語予定はスライドに無し(去年の実績の話だから乗ってなかった?)
  • トランザクション日本対応予定(時期明言無し)
  • アプリのサジェスト改善していきます。最初期よりは良くなってる。

質問など
togetterにまとまってる。

  • GoogleHome応答早いけど国内なの?firebase us-centralだけど遠くね?*1
    • 国内で完結しない。がんばってます。
  • SEO的なことどう考えてる?広告とかは?
    • 普及期はまず信頼感構築が優先。
  • GoogleHomeアプリはアプリ?アクションどっちで呼べばいい?海外だとアプリと呼んでることが多いけど
    • アプリでいいんじゃない?アクションだとカバーする範囲が狭い印象。

質問できなかった

  • (マイクオープンで)ユーザー入力待ちになると、(開発者目線だと)短く簡潔に言おうとして焦る。なんかテクニックある?
  • 日本語のグローバル終了キーワードについて詳細教えて
  • こないだfirebase落ちたけど、GoogleHomeアプリのサービス健康状態悪くなった。firebase落ちた時にサービスごと落ちるのを回避する設計方針(ベストプラクティス)教えて。
  • ユーザー入力音声からテキスト以外の情報取り出せないか?会話のテンポだとか、声の大小。ユーザー感情の分析にテキスト文面以外のアプローチ無いの?
  • ssmlの日本語文末「?」の処理うまい方法ある?
VUIデザインの勘所
  • 安藤 幸央さん
  • めちゃめちゃ(日本語)VUI研究してる
  • 設計の一番最初はマインドマップが良い
  • 海外はモックツールが色々ある。ボットモック集めたサイト良すぎるので見て。
  • VUIのペルソナをまず作る。その方が会話パターンを作りやすい。
  • メラビアンの法則。音声だけでは7%しか伝わらない。難しいことは避ける。
  • 秘書の本がVUIの参考になる
  • アプリの使い方の説明。もう具体的に説明する方がよい。GoogleHome/echoのパッケージ見て。
  • 会話は難しい。VUIは誘導尋問する方が会話しやすい。
  • 音声入力は失敗したときのストレスが酷い。人格を意識する裏付けではある。ハッカーの人の記事が参考になるぞ。
  • IoTべからず集。IoTを使い続けてくれることはほとんどない事例集。唯一うまくいく例がある。
  • 電車しりとりが一番使われる。乗換案内はそれほど…
    • VUIはスマフォ苦手な人、子供やお年寄りがむしろターゲットなのでは
  • パスワードをユーザー音声で入力させる設計はヤバイ。どうしてそういうことになるか。既存のものをそのままVUIに適用するとハマる。VUIの強みが何かを意識して作らないと。
  • Leszek Zawadzki氏の会話の種別がVUI設計に役立つ。アプリ・ペルソナごとにそれぞれの比率を変えて対応する。マインドマップの最初の枝もこれにしている。
  • VUIのおもてなし。対応を尽くすこと。
  • 会話を導くエージェントは2種類に分類できる。多数ある設定条件から1つのゴールに絞り込むもの(逆ピラミッド)。ゴールが多数ある中の一つを選ばせる探索型のもの(ピラミッド)。
  • 隠れ強化。表面に出ないが裏側で強く対応しているなど。秘書感。
事例紹介

疲れてほぼメモなし…。(このメモも内容と合ってるか不明)

  • 伊東 春菜さん
  • 台本の作り方はコツあり。修正しやすいように作る。
  • フローはチームで必要なら作る。
  • 色んな回答を用意する。エラーはランダムにする。
  • UXを上げる。言葉をよく吟味する。
個人メモ
  • VUIで異口同音はかなり避けたい問題。チェックツール無いのか?
  • 目指すものは何でもかんでも受け付けるアプリなのか?何でもかんでも受け付けないアプリなのか?(特定の用途のみ)
    • 個人開発だと後者を意識したほうがよさそう。前者は大企業に任せる。
  • VUIのUX鍛え上げるには、動くものさっさと作ってテストして鍛え上げる方が良さそうなルート。紙面や理論優先だと良くないものができる可能性あり
  • ラジオの音声(文言)は素晴らしい。専門の処理は専門家の話し方が参考になりそうだ。

デザインスプリント体験

以前デザインスプリント本買ってざっくり読んだけど、こんな立派なことできねーよと思ってほったらかしてた。
今回は体験できるとのことで、戦々恐々としながら参加。
知らない人で集まっても、短期間でものすごい集中してアウトプットできたのは驚き。良い体験だ。
個人開発への応用には、効果は限定されるけどアイディアの発散と集中が使えそう。

f:id:kbn1053:20180315064717j:plain

本から入門だと理屈優先になるので、やる気がしなかったけど、
スプリントマスターの指導の下で体験してから理論を補強していくのが正しい気がした。

デザインスプリント ―プロダクトを成功に導く短期集中実践ガイド

デザインスプリント ―プロダクトを成功に導く短期集中実践ガイド

ピンとこなかった本これ。

実際にやった流れ

  • 本日のテーマ・目標物・ざっくりとした作るものを提示
  • 付箋にとりあえずテーマに関するものを書き出す(個人作業/発散)
  • それぞれが内容を説明しながら付箋をボードに貼る。似たものは固める(チーム作業/収束)
    • ある程度の集合が出来たらそれに名前を付けるとわかりやすい
  • 付箋全体を見て、個人の持ち点3点を良いアイデアにシールで投票する。この時は黙ってやる
    • 特例なし
  • 最高点テーマについて実際の使用シーン(情景、タイミング)を書き出す。1コマ漫画を8個描くイメージ(個人作業/発散)
    • 画面の説明ではなく、ユーザーがどういうときに使うかを描くこと。棒人間で良い
    • とにかく短い時間で8個埋める
  • それぞれがシーンについての内容を説明する。また投票を行う。持ち点3点
  • 投票結果のシーンを元に、実際の会話フローを書き出していく
    • VUIの場合は吹き出しでユーザーとデバイスのやり取りを書いていくと良い
  • それぞれが紹介する
    • 目標物の具体的イメージが固まる
    • この後どうするか不明。モックづくりに入る??

ポイント

  • アイディアを出し切る、絞り込む(発散と収束)を繰り返してアイディアを洗練させていく
  • ユーザーレビューは必要(何回か回すことも)
  • レビュー用のモックは集中して作りこむ
  • モックはレビューの肝を抑えたもので、UXに関係ない場合は見た目が酷い状態のものもある(ハードウェアなど)
  • ユーザーレビューまで通すと決裁者の同意を得やすい
  • デザインスプリントに適さないものもあるので注意。作るものが決まっている・開発速度優先など
  • 絞り込みの投票制ルールは色々パターンがある。今回はシンプルに特例なし。(持ち点3点)
  • ユーザーの意図と対象取り出すインテントマッチングは中核となる技術。Dialogflow使ってね。
  • デザインスプリントでググればGoogle社の資料あるので見て

その他質疑などのメモ

適当メモ。全然違うこと言ってたかもしれない。

  • push通知できるようになったら、音声案内をユーザーに適切なタイミングでできるようにするのがよい。一度にわーっと説明しても全然分からんので。
  • VUIのモックどうする。
    • ダイアログフローでポチポチ作るか、ルール決めてチャットするだけでも良い。
  • VUIコンペでの差のつけ方。
    • VUI知識量が重要。顧客が作りたいものを出してきたとき、恐らく考慮が足りない。そこを補う提案を出していくことで競合に差をつけられる。
  • VUIとブランディング。車のブランディングとVUIの人格ブランディングどうまとめる。

その他

なんかヒルズ前にタカアシ蜘蛛的なオブジェあったけど何なんだろう。

*1:これ自分

Actions on Google(actions SDK)にて Implicit Invocationを設定したけど動作確認ができない(雑記)

(3/14追記)
Google公式で日本国内のImplicit Invocationについての案内が出ています。
developers-jp.googleblog.com

====

actions SDKにて、カスタムインテントを使いたい。
公式のドキュメントを参考に、アクションパッケージ(actions.json)に追加アクション(Implicit Invocation)を定義した。
しかし、これがsimulatorでも実機でも動かず、途方に暮れていた。
公式のサンプルコードやGitHubサンプルソースを見ても、ものすごく簡単に実現していることなので全然理由が分からず非常に混乱してしまった。

日本語のImplicit Invocationの現状。

VoiceAppLabさんが状況を知っていた。助かりました。

(恐らく)リリース後に反映されるような項目のようだ。
開発段階にてテストできないのは不安でしょうがない。
Implicit Invocationをやる場合はリリース後のupdateで対応する感じが良いかもしれない。

関連の記事

他の方のtwitter


公式資料

  • Invocation and Discovery -- Explicit(アプリ名呼び出し) とImplicit(暗黙呼び出し)がある

Overview  |  Actions on Google  |  Google Developers

  • Implicit Invocation -- 暗黙呼び出しについて

Implicit Invocation  |  Actions on Google  |  Google Developers

  • Define Actions -- Actions SDKでの暗黙呼び出し/アクションパッケージへのインテント追加

Define Actions  |  Actions on Google  |  Google Developers

Qiita

  • Explicit / Implicitが良くまとまってる良記事。
    • SimulatorでImplicit Invocationが動かないという情報あり。

qiita.com

  • ちょっと逸れるけど、action invocation phraseについて
    • action invocation phrase現在機能している。シミュレーターと実機で確認済み
    • アプリ名+でXXして、等で呼びかけると変数としてXXが取れる
    • この時のインテントはapp.StandardIntents.MAIN

qiita.com

Stack Overflow

初回呼び出し時のカスタムインテントについての議論ではなく、アプリ起動以降の処理についての話だと思われる。
初回呼び出しカスタムインテントは動いてそうな雰囲気なのでめちゃめちゃ悔しい😫

stackoverflow.com
stackoverflow.com
stackoverflow.com

サンプルソース

GitHubでのactions SDKのサンプル。raw.inputという独自Intentを定義している。
簡単な定義だが…しっかしこれがSimulatorで動かないのだ…。

https://github.com/actions-on-google/actionssdk-eliza-nodejs(GitHub - actions-on-google/actionssdk-eliza-nodejs: Eliza Actions SDK sample for Actions on Google]

その他

国内GoogleHomeアプリ開発情報はtwitterが最速…!
VoiceAppLabさんありがとうございました。

Actions SDKのアプリの終了処理について(メモ書き)

action.jsonにアプリ終了処理を書けるという公式の説明がある。
調べた感じ、日本語だとあまり対応していないようだ。
Actions SDKにて日本語での終了処理を書く場合は、素直にapp.StandardIntents.TEXTのコールバック関数内でグローバル終了処理を記述したほうがよさそうだ。

公式

App Exits  |  Actions on Google  |  Google Developers

英語モードでは以下の発話が認識されると、アプリは特に終了音声もなく終了する。

  • "exit"
  • "cancel"
  • "stop"
  • "nevermind"
  • "goodbye"

actions.jsonにinDialogIntentsを追加すれば、actions.intent.CANCELが発生する。
そこに処理を書けば終了時音声を発話できるようになる。

日本語の対応

キャンセルのみ同等の処理が動くことをシミュレーターで確認。
今後の対応で増えそうではあるが…

  • "キャンセル"

対応してない単語

  • "終了",”イグジッド"
  • "ネバーマインド"
  • "グッドバイ","さようなら"

その他

Actions on Googleのシミュレーターは発話中でも次の値を入力しても問題ないようだ。
テストをさくさくやりたい場合はどんどん値を入力していけるので、どんどん使っていきたいところだ。