SlideShare a Scribd company logo
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
Dialogflowを触ろう!
fish: フィッシュって気軽に呼んでください
趣味: 釣り, Dialogflow, Androidアプリ開発, iPhone アプリ開発,カヌー, 水泳, ロードバイク
twitter: @canoefishing
Qiita: flatfisher
Dialogflow (API.AI) Forums: https://discuss.api.ai
Qiita: https://qiita.com
Dialogflowとは
● Dialogflowは自然言語処理を実装できるツール
○ 非エンジニアでも簡単に会話パターンを設計できる
● Chatbot開発に有効
● アナリティクスツールも提供
Dialogflowのすごいところ
● 対応言語が豊富
○ 英語、日本語をはじめ24言語対応
● SDKが豊富
○ Python, Ruby, Node.js, Android, iOS...
● チャットプラットフォームに即連携可能
○ Google Assistant, LINE, Facebook messenger, Slack
おさえたい3つの機能
● Intent
● Entity
● Fulfillment
Intent
● Intentは会話の設計する
○ 挨拶
○ ピザのオーダー
○ FAQなど
● Dialogflowはユーザーからの文字を解析し自動的に適切な
Intentに振り分ける
● どのIntentにも当てはまらない時はDefault Fallback Intentに
飛ぶ
Entity
● 辞書のようなもの
● ユニークな単語を作成可能
○ 商品名など
● 標準的なものはDialogflowが提供してくれる
○ 日時、身長、体重など
※Dialogflowに登録されているEntityを元に形態素解析が実行されます
Fulfillment
● バックエンドの設定
○ URL,BASIC AUTH,HEADERなど
○ POST通信
ラーメンを注文(出前)するIntentを作成してみる
Intent 名 : RamenOrder
User says:「ラーメンが食べたい!」
Response:「かしこまりました」
デモ結果
情報が不十分...
ラーメン注文(出前)に最低限欲しい情報
● メニュー
● 日付
● 日時
● 住所
○ 今回は予めユーザー登録がされているものとします
Entityの出番です!
ラーメンのEntityを作成
● 右に正式名称を入力
● 左にシノニムを入力
Intentを編集
ラーメン、日付、日時の登録を必須にする
尋ねる文言を設定可能
ユーザーが入力するまで尋ねる
コードを書かずにここまでできた!
● 会話の分析
● 形態素解析
● 必要な情報は答えるまで聞き返してくれる
ノンコーディングで作れそうなもの
● 静的な会話
○ 予め応対内容が決まっているもの
○ 文字、音声、画像などを返すことができる
● 予め応対内容が決まっているもの
○ オウム返し
○ Aの会話がきたら(A〜D)のいずれかの応対をする
コーディングが必要なもの
● 動的な会話
○ 応対内容が決まってないもの
● 応対内容が決まってないもの
○ ユーザーから得た情報を使った処理
■ 飛行機の検索
■ ホテルの予約など
Fulfillmentを使おう
Fulfillmentの作成
URLにエンドポイントを入力する
Intentの編集
● Fulfillmentにチェックを入れる
○ チェックしないとバックエンドにPOSTされない
● Action名を設定する
○ Intentを判別するため
バックエンドにPOSTされるパラメータ例
Dialogflowのおすすめな使い方
● Dialogflowは一番前にあると良い
○ 汎用性がある
○ 保守管理が楽
○ アナリティクスが使用できる
すぐに横展開可能
ユーザー バックエンド
すぐに横展開可能
ユーザー バックエンド
Dialogflowを通せばアナリティクスが利用できる
おすすめリンク
https://goo.gl/xV9NW
R
おすすめリンク
https://www.eisbahn.jp/yoichiro
Q&A
● GCPUGのSlack (日本語)
○ dialogflow_ja
○ assistant_ja
● Dialogflow Help Forum (英語)
○ https://productforums.google.com/forum/#!forum/dialogflow
Entityの作成を加速させるライブラリ https://github.com/flatfisher/flounder
まとめ
● Dialogflowは自然言語処理を実装できる強力なツール
○ Chatbot開発に役立つ
● 静的な会話なら非エンジニアで実装可能
○ エンジニアと作業分担ができる!
● Dialogflowはフロントに実装しよう
○ 保守運用が簡単
○ 横展開が簡単
○ アナリティクスツールを共通化できる

More Related Content

Similar to GDG Tokyo New Year Seminar 2018 -Dialogflow-

会話型UI事始め
会話型UI事始め会話型UI事始め
会話型UI事始め
DeNA
 
DroidKaigi 2018 - Dialogflow for Android
DroidKaigi 2018 - Dialogflow for AndroidDroidKaigi 2018 - Dialogflow for Android
DroidKaigi 2018 - Dialogflow for Android
SENSY Inc
 
Droidcon London2012 Speaker Experience
Droidcon London2012 Speaker ExperienceDroidcon London2012 Speaker Experience
Droidcon London2012 Speaker Experience
Kenichi Kambara
 
OSC@京都 2011-07-15
OSC@京都 2011-07-15OSC@京都 2011-07-15
OSC@京都 2011-07-15Hiroshi Bunya
 
ソフトウェア開発30年史を振り返りつつ考えるプログラマにとって変わらないもの
ソフトウェア開発30年史を振り返りつつ考えるプログラマにとって変わらないものソフトウェア開発30年史を振り返りつつ考えるプログラマにとって変わらないもの
ソフトウェア開発30年史を振り返りつつ考えるプログラマにとって変わらないもの
Jun Hosokawa
 
自作flutterアプリをリファクタリングしてみた!
自作flutterアプリをリファクタリングしてみた!自作flutterアプリをリファクタリングしてみた!
自作flutterアプリをリファクタリングしてみた!
とさ はるき
 
HTML5によるモバイルアプリ開発 が拓拓くビジネスチャンス
HTML5によるモバイルアプリ開発 が拓拓くビジネスチャンスHTML5によるモバイルアプリ開発 が拓拓くビジネスチャンス
HTML5によるモバイルアプリ開発 が拓拓くビジネスチャンス
アシアル株式会社
 
できる!スマホアプリ:Webからはじまるアプリ for CMU16
できる!スマホアプリ:Webからはじまるアプリ for CMU16できる!スマホアプリ:Webからはじまるアプリ for CMU16
できる!スマホアプリ:Webからはじまるアプリ for CMU16
Masami Yabushita
 
Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催
Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催
Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催
嶋 是一 (Yoshikazu SHIMA)
 
チャットサービス運用の舞台裏
チャットサービス運用の舞台裏チャットサービス運用の舞台裏
チャットサービス運用の舞台裏
Hiroaki Nagata
 
TypeScript x Bot Framework
TypeScript x Bot FrameworkTypeScript x Bot Framework
TypeScript x Bot Framework
Kazumi IWANAGA
 
アイデアを形にする ③3時間でアプリ公開!ゼロからのプログラミング講座
アイデアを形にする  ③3時間でアプリ公開!ゼロからのプログラミング講座アイデアを形にする  ③3時間でアプリ公開!ゼロからのプログラミング講座
アイデアを形にする ③3時間でアプリ公開!ゼロからのプログラミング講座
DIVE INTO CODE Corp.
 
iPhone/Android アプリをまとめて省エネ開発する技術
iPhone/Android アプリをまとめて省エネ開発する技術iPhone/Android アプリをまとめて省エネ開発する技術
iPhone/Android アプリをまとめて省エネ開発する技術
vaccho
 
AndroiderがFirefoxOSアプリの多言化をしてみたら
AndroiderがFirefoxOSアプリの多言化をしてみたらAndroiderがFirefoxOSアプリの多言化をしてみたら
AndroiderがFirefoxOSアプリの多言化をしてみたら
Takaumi Kimura
 
できる!スマホアプリ:Webからはじまるアプリ
できる!スマホアプリ:Webからはじまるアプリできる!スマホアプリ:Webからはじまるアプリ
できる!スマホアプリ:WebからはじまるアプリMasami Yabushita
 
Azure Bot Service で始めるチャットボット開発入門 (2018-01)v1.1
Azure Bot Service で始めるチャットボット開発入門 (2018-01)v1.1Azure Bot Service で始めるチャットボット開発入門 (2018-01)v1.1
Azure Bot Service で始めるチャットボット開発入門 (2018-01)v1.1
Atsushi Yokohama (BEACHSIDE)
 
FlutterでAndroid/iOS両対応のアプリ開発
FlutterでAndroid/iOS両対応のアプリ開発FlutterでAndroid/iOS両対応のアプリ開発
FlutterでAndroid/iOS両対応のアプリ開発
najeira
 
20160730 fluentd meetup in matsue slide
20160730 fluentd meetup in matsue slide20160730 fluentd meetup in matsue slide
20160730 fluentd meetup in matsue slide
cosmo0920
 

Similar to GDG Tokyo New Year Seminar 2018 -Dialogflow- (20)

会話型UI事始め
会話型UI事始め会話型UI事始め
会話型UI事始め
 
DroidKaigi 2018 - Dialogflow for Android
DroidKaigi 2018 - Dialogflow for AndroidDroidKaigi 2018 - Dialogflow for Android
DroidKaigi 2018 - Dialogflow for Android
 
Droidcon London2012 Speaker Experience
Droidcon London2012 Speaker ExperienceDroidcon London2012 Speaker Experience
Droidcon London2012 Speaker Experience
 
OSC@京都 2011-07-15
OSC@京都 2011-07-15OSC@京都 2011-07-15
OSC@京都 2011-07-15
 
OSC Kansai@Kyoto
OSC Kansai@KyotoOSC Kansai@Kyoto
OSC Kansai@Kyoto
 
ソフトウェア開発30年史を振り返りつつ考えるプログラマにとって変わらないもの
ソフトウェア開発30年史を振り返りつつ考えるプログラマにとって変わらないものソフトウェア開発30年史を振り返りつつ考えるプログラマにとって変わらないもの
ソフトウェア開発30年史を振り返りつつ考えるプログラマにとって変わらないもの
 
自作flutterアプリをリファクタリングしてみた!
自作flutterアプリをリファクタリングしてみた!自作flutterアプリをリファクタリングしてみた!
自作flutterアプリをリファクタリングしてみた!
 
HTML5によるモバイルアプリ開発 が拓拓くビジネスチャンス
HTML5によるモバイルアプリ開発 が拓拓くビジネスチャンスHTML5によるモバイルアプリ開発 が拓拓くビジネスチャンス
HTML5によるモバイルアプリ開発 が拓拓くビジネスチャンス
 
できる!スマホアプリ:Webからはじまるアプリ for CMU16
できる!スマホアプリ:Webからはじまるアプリ for CMU16できる!スマホアプリ:Webからはじまるアプリ for CMU16
できる!スマホアプリ:Webからはじまるアプリ for CMU16
 
Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催
Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催
Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催
 
チャットサービス運用の舞台裏
チャットサービス運用の舞台裏チャットサービス運用の舞台裏
チャットサービス運用の舞台裏
 
TypeScript x Bot Framework
TypeScript x Bot FrameworkTypeScript x Bot Framework
TypeScript x Bot Framework
 
アイデアを形にする ③3時間でアプリ公開!ゼロからのプログラミング講座
アイデアを形にする  ③3時間でアプリ公開!ゼロからのプログラミング講座アイデアを形にする  ③3時間でアプリ公開!ゼロからのプログラミング講座
アイデアを形にする ③3時間でアプリ公開!ゼロからのプログラミング講座
 
iPhone/Android アプリをまとめて省エネ開発する技術
iPhone/Android アプリをまとめて省エネ開発する技術iPhone/Android アプリをまとめて省エネ開発する技術
iPhone/Android アプリをまとめて省エネ開発する技術
 
AndroiderがFirefoxOSアプリの多言化をしてみたら
AndroiderがFirefoxOSアプリの多言化をしてみたらAndroiderがFirefoxOSアプリの多言化をしてみたら
AndroiderがFirefoxOSアプリの多言化をしてみたら
 
できる!スマホアプリ:Webからはじまるアプリ
できる!スマホアプリ:Webからはじまるアプリできる!スマホアプリ:Webからはじまるアプリ
できる!スマホアプリ:Webからはじまるアプリ
 
Azure Bot Service で始めるチャットボット開発入門 (2018-01)v1.1
Azure Bot Service で始めるチャットボット開発入門 (2018-01)v1.1Azure Bot Service で始めるチャットボット開発入門 (2018-01)v1.1
Azure Bot Service で始めるチャットボット開発入門 (2018-01)v1.1
 
FlutterでAndroid/iOS両対応のアプリ開発
FlutterでAndroid/iOS両対応のアプリ開発FlutterでAndroid/iOS両対応のアプリ開発
FlutterでAndroid/iOS両対応のアプリ開発
 
Nishimotz osc2011oct-v2
Nishimotz osc2011oct-v2Nishimotz osc2011oct-v2
Nishimotz osc2011oct-v2
 
20160730 fluentd meetup in matsue slide
20160730 fluentd meetup in matsue slide20160730 fluentd meetup in matsue slide
20160730 fluentd meetup in matsue slide
 

GDG Tokyo New Year Seminar 2018 -Dialogflow-