Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

Dialogflow tips

3.135 Aufrufe

Veröffentlicht am

Google Homeを遊びたおす会のDialogflow tipsのスライドです。
https://kotodama.connpass.com/event/79768/

Veröffentlicht in: Ingenieurwesen
  • Als Erste(r) kommentieren

Dialogflow tips

  1. 1. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem Dialogflow tips fish(@canoefishing)
  2. 2. サーバーサイドのエンジニアをしています。 GDG, GCPUG, FJUGといった開発グループのスタッフをしています。 フットワーク軽めなので気軽に話しかけてください♪ 好きなもの: Android, Dialogflow, Actions on Google, GCP, iOS コミュニティ: GDG, GCPUG, FJUGfish twitter: @canoefishing Qiita: flatfisher
  3. 3. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem https://discuss.api.ai DialogflowのForum(Q&A)で信頼レベル2までいきました
  4. 4. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem https://productforums.google.com/forum/#!forum/dialogflow 現在はGoogleプロダクトフォーラムに移動しました
  5. 5. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem Google I/O でスタッフに話しかけたり
  6. 6. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat semhttps://www.youtube.com/watch?v=K4v_QnngRdg 一番前でセッションを聞きました
  7. 7. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem 2017年8月のコンテストに挑戦、しかし。。。
  8. 8. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem 4度リジェクトをくらい、挫折しました
  9. 9. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem その後...Qiitaで記事を書き書き...
  10. 10. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem だいぶ経ってからお魚検索をリリース
  11. 11. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem 世界トリビアゲーム
  12. 12. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem Dialogflowのライブラリにコミット
  13. 13. 本日のおはなし ● Dialogflowとは? ● Dialogflowの使い方 ● Dialogflow tips
  14. 14. 本日のおはなし ● Dialogflowとは? ● Dialogflowの使い方 ● Dialogflow tips
  15. 15. 本日のおはなし ● Dialogflowとは? ● Dialogflowの使い方 ● Dialogflow tips
  16. 16. Dialogflowとは?
  17. 17. Dialogflow ● 自然言語処理を提供しているサービス ● Google Assistant はじめ多くのサービスの連携をサポート
  18. 18. Dialogflowのすごいところ ● コードを書かずに自然言語処理の実装ができる ● 対応言語が豊富 ● あらゆるチャットボットサービスに対応 ● SDKが豊富 ● アナリティクス機能(設定不要)
  19. 19. できること&できないこと(BMIを計算するBOTの例) ● ユーザーの発言から特定の文字を取得する ○ 身長や体重を取得したい ● ユーザーが身長と体重を答えるまで聞き返す ● 取得した身長と体重からBMIを計算する
  20. 20. できること&できないこと(BMIを計算するBOTの例) ● ユーザーの発言から特定の文字を取得する ○ 身長や体重を取得したい できる ● ユーザーが身長と体重を答えるまで聞き返す できる ● 取得した身長と体重からBMIを計算する できない
  21. 21. Dialogflowは必要な値を取得するところまで、計算処理はサーバーで! BMIを知りたい 身長は? 182cmです 体重は? 79kgです 身長と体重を送信 BMIは23です BMIは23です
  22. 22. できること&できないこと まとめ ● 会話の分析や静的な処理ができる ○ 発言からユーザーが何をしたいのかを分析 ■ ユーザーは挨拶をしたいのか ■ ユーザーは航空券を検索したいのか ■ ユーザーは音楽を聞きたいのか ○ ユーザーの発言にどんなパラメータが入っているか分析 ■ メールアドレス、身長、体重、日時、通貨... ○ BOTに必須パラメータがあれば発言するまで聞き返す ■ BMIを計算するBOTの場合、身長と体重を言うまで聞き返す ○ 答えが決まっている会話 ■ 「こんにちは」と言われたら「こんにちは」と返す ● 動的な処理ができない ○ BMIの計算 ○ 航空券の検索や予約
  23. 23. Dialogflowの使い方
  24. 24. Dialogflowを使う流れ ● Google アカウントでログイン ● Agentの作成 ● 3つの基本機能をおさえる ○ Intent ○ Entity ○ Fulfillment ● 作成したAgentを連携させる ○ Google Assistant ○ Facebook ○ Slack ○ LINE
  25. 25. Googleアカウントでログイン! https://console.dialogflow.com
  26. 26. Agentの作成
  27. 27. おさえたい3つの機能 ● Intent ● Entity ● Fulfillment
  28. 28. Intent - 会話の設計 ● 会話を開始する文(トリガー)を決める ○ 「こんにちは!」 ○ 「BMIを知りたい」 ○ 「肉とじゃがいもで作れる料理は?」 ● 会話を成立させるための条件を決める ○ 身長と体重を必須にする ● レスポンス ○ 答えが既に決まっている場合 ■ 「こんにちは」と返す ○ 答えが決まっていない場合 ■ BMIの計算やレシピ取得はサーバーにお願いする
  29. 29. 1つの目的につき、1つのIntentを作成 ● 挨拶をするIntent ● BMIを計算するIntent ● レシピを検索するIntent 挨拶 BMI レシピ
  30. 30. 発言に応じて適切なIntentに案内してくれる 挨拶 BMI レシピ BMIを知りたい 身長と体重は?
  31. 31. Intentを作成してみる
  32. 32. おはようIntentを作成してみる
  33. 33. Intentの動作確認
  34. 34. Dialogflowは学習する!
  35. 35. 謎のIntentが2つある
  36. 36. Default Welcome Intent
  37. 37. Default Fallback Intent
  38. 38. Entity - パラメータ ● 文章から特定の単語を取り出すための辞書 ○ メールアドレス ● 標準的なものは既に用意されている ○ 時間,通貨,メールアドレスなど ● ユニークなワードも自分で作成可能 ■ お店のメニュー ■ 商品名
  39. 39. Fulfillment - サーバー情報の入力 ● サーバーの情報を登録する場所 ● HTTPS POST 通信 ● 登録できる情報 ○ URL ○ BASIC 認証 ○ HEADER ○ DOMAINS
  40. 40. Dialogflow Tips
  41. 41. 同じようなIntentを作らない
  42. 42. ちゃんとEntityを作ろう
  43. 43. ちゃんとEntityを作ろう
  44. 44. EntityのKeyはプログラムでそのまま使えるものにすると便利!
  45. 45. 会話を終了するIntentを作っておこう
  46. 46. Dialogflowは一番前で使おう ユーザー バックエンド
  47. 47. 汎用性がある ユーザー バックエンド
  48. 48. こうするとあとから大変 ユーザー バックエンド
  49. 49. こまめにExport zip してバックアップをとろう
  50. 50. Databaseには画面有り無しの文言を用意しておくと良いかも
  51. 51. Google Assistant のアプリを作る時は一番最初にテストしよう
  52. 52. これができればOK
  53. 53. プロジェクトの上限数にハマらないために ● 上限があるのはGCPプロジェクト ○ デフォルトだと最大20こくらい? ● Actions on GoogleのアプリはGCPプロジェクトと同一 ○ 既に存在するGCPプロジェクトをインポート ○ または新規作成 ← 要注意 ○ Actions on Google のアプリ削除 (GCPプロジェクトの削除) ● Dialogflowのプロジェクト(Agent) ○ 既に存在するGCPプロジェクトをインポート ○ または新規作成 ← 要注意 ○ アプリの削除 (GCPプロジェクトは削除されない)
  54. 54. なるべくimport しよう
  55. 55. プロジェクトの上限数にハマらないために ● 練習用のGCPプロジェクトを1つ用意しよう ○ (命名例: FlatfishTest) ● Dialogflowプロジェクトを作る時 ○ 練習用プロジェクトをインポート ● Dialogflowプロジェクトを削除する時 ○ プロジェクトのエクスポート → Git管理 ○ プロジェクトを削除 ● 練習用のGCPプロジェクトは消えずにDialogflowのプロジェク トだけが消える
  56. 56. 「削除しても作成できるプロジェクト数が増えないよー」 ● 削除は30日間保留されます
  57. 57. いろいろ説明しましたが。。。
  58. 58. 上限リクエスト(課金)すれば上限数が増えるので。。。
  59. 59. 早めにお金で解決しよう! (課金したお金はGCPクーポンとして引き継がれます、損なし!)
  60. 60. Dialogflow に 料金プランはあるの? ● Dialogflow Standard Edition ○ 無料 ○ APIリクエスト数に制限がある ○ APIリクエストが少ない小規模なプロジェクトやDialogflowを試したい人向け ○ コミュニティと電子メールによるサポート ● Dialogflow Enterprise Edition ○ 従量課金制 ○ APIリクエスト数に制限が無い ○ 大規模なプロジェクト向け ○ コミュニティ、電子メール、Google Cloudサポートによるサポート
  61. 61. 教材やQ&Aは? ● 公式リファレンス ○ https://dialogflow.com/docs/getting-started/basics ● Qiita ○ https://qiita.com/tags/dialogflow ● 公式Q&Aフォーラム ○ https://productforums.google.com/forum/#!forum/dialogflow ● Stack Overflow ○ https://stackoverflow.com/questions/tagged/dialogflow ● GCPUG Slack ○ dialogflow_ja ○ assistant_ja ○ 招待フォーム ■ https://goo.gl/TFxUNC ● GDG Ishinomaki Slack ○ 招待フォーム ■ https://goo.gl/PRCiHw
  62. 62. Google+ Dialogflow コミュニティ
  63. 63. Actions on Google もくもく会!
  64. 64. Twitterで参加者を募る!
  65. 65. お会いした方はほとんどが初対面!
  66. 66. このイベントの名前を思い出してください
  67. 67. Google homeを遊びたおす会
  68. 68. オリジナルのアプリで遊ぶ方法を知りたかった
  69. 69. OK Googleしたかった
  70. 70. 持ち込んだGoogle home (mini) どないすんねん
  71. 71. Google homeで遊んでないじゃん!
  72. 72. 一番簡単なGoogle Assistant アプリの作り方
  73. 73. まずはGoogle Assistantの連携確認
  74. 74. 水の音を聞くIntentを作成
  75. 75. テスト
  76. 76. この時点で、お使いのAssistantアプリまたはGoogle homeで試せます
  77. 77. 音声ファイルを使う ● 音声ファイルを準備 ● 音声ファイルをGoogle Cloud Storageにアップロード ● 公開URLを取得
  78. 78. 公開URLをIntentのResponseにセット!
  79. 79. 水の音がながれました
  80. 80. Thank you

×