SlideShare a Scribd company logo
1 of 15
Download to read offline
Cogbot 勉強会 ! in 名古屋
2018年3月10日
瀬尾佳隆 (@seosoft)
Microsoft MVP for Windows Dev
Bot Service 概要
自己紹介
瀬尾佳隆 (せおよしたか)
• MVP for Windows Development
• https://yseosoft.wordpress.com/
• 乃木坂46 / 欅坂46 と、仏像 / 屏風絵が好き
最近のお仕事は “AI” っぽいもの
だったり、そうじゃなかったり・・・
2
今日の内容
Bot とは / Bot Service とは
Bot のアーキテクチャとテンプレート
BotBuilder SDK for .NET
• 基本
• メッセージ処理
• メッセージ処理の委譲
• FormFlow
• Bot Framework Emulator
3
Bot とは
人間の言葉を理解して
適切な回答をしてくれる
• “人工知能”
• いろいろ聞くと、
いろいろ答えてくれる
何かの入力を受け取って
自動で処理をする
• 単なるアプリケーション
• 定型的な応答をするものも
ある
4
Bot Service とは
Bot アプリを構築・管理できる Azure のサービス
• Bot 本体、デプロイ先の App Service、
データ永続化のためのストレージをワンストップで作成
• 2種類のアーキテクチャから選択
5
Web App Bot ・・・ Web Apps で構築
Function Bot ・・・ サーバーレスのアーキテクチャ
Bot Service のテンプレート
Basic シンプルなスケルトン
Bot の挙動を完全に自作したい場合に使う
Form ガイド付き会話を使用してユーザーからの入力を
収集する
Language
Understanding
Language Understanding (LUIS) で
自然言語を処理する
Question and
Answer
Q&A のナレッジから会話形式の回答を生成する
Practive イベントトリガーでユーザーに応答する
6
BotBuilder SDK for .NET の基本
一般的な MVC
7
Controller リクエストがルーティングされてくる
ユーザーからの Message を受信したら、
Dialog クラスのインスタンスに送る
Dialog Bot の処理
最初に呼ばれるのは StartAsync メソッド
メッセージ処理するメソッドを適宜追加
Controller クラス
8
ユーザーを識別
POST リクエストを
受信
Dialog を呼び出す
ApiController を
継承
Dialog クラス
9
シリアライズで
ユーザーごとの
コンテキストを保持できる
ユーザーごとに
データを保持できる
IDialog を
実装
メッセージ処理メソッド
10
Dialog の
エントリーポイント
メッセージを
待ち受ける
メッセージ
処理メソッド
ユーザーに回答
次のメッセージを
待ち受ける
メッセージ処理を他に委譲する方法
11
他の Dialog クラスに
処理を依頼
処理を委譲する
Dialog クラス
委譲先で処理が
終了したら
呼び出される
コールバック
FormFlow (1/2)
選択肢を提示して
ユーザーの回答を収集する
• 自然言語処理にしないほうが
ユーザーにストレスを与えないことも
ある
12
FormFlow (2/2)
13
デバッグするには
Bot Framework Emulator
• https://github.com/Microsoft/BotFramework-
Emulator/releases
14
まとめ
Bot Service は Bot アプリケーションの
構築・管理のワンストップサービス
Controller クラスでリクエストを受信
Dialog クラスでメッセージを処理
メッセージ処理チェインで複雑な分岐が可能
FormFlow が適切に対話できることもある
15

More Related Content

Similar to Bot Service 概要

WebXR と Bot Composer で表現力の高いチャット ボットを作ろう
WebXR と Bot Composer で表現力の高いチャット ボットを作ろうWebXR と Bot Composer で表現力の高いチャット ボットを作ろう
WebXR と Bot Composer で表現力の高いチャット ボットを作ろうYusuke Hara
 
【de:code 2020】 ハンズオンで学ぶ AI ~ Bot Framework Composer + QnA Maker / Custom Visi...
【de:code 2020】 ハンズオンで学ぶ AI ~ Bot Framework Composer + QnA Maker / Custom Visi...【de:code 2020】 ハンズオンで学ぶ AI ~ Bot Framework Composer + QnA Maker / Custom Visi...
【de:code 2020】 ハンズオンで学ぶ AI ~ Bot Framework Composer + QnA Maker / Custom Visi...日本マイクロソフト株式会社
 
Jazug tokyo-night bot-frameworkとかbotとか
Jazug tokyo-night bot-frameworkとかbotとかJazug tokyo-night bot-frameworkとかbotとか
Jazug tokyo-night bot-frameworkとかbotとかTsubasa Yoshino
 
LINE Commumity Microsoft_ConversationalAI_20200409
LINE Commumity Microsoft_ConversationalAI_20200409LINE Commumity Microsoft_ConversationalAI_20200409
LINE Commumity Microsoft_ConversationalAI_20200409Ayako Omori
 
Bot frameworkでbot入門
Bot frameworkでbot入門Bot frameworkでbot入門
Bot frameworkでbot入門Tsubasa Yoshino
 
[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~
[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~
[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~de:code 2017
 
Bot Framework Emulator はこんなにすごい
Bot Framework Emulator はこんなにすごいBot Framework Emulator はこんなにすごい
Bot Framework Emulator はこんなにすごいYoshitaka Seo
 
これから始める Bot Builder 開発のコツと舞台裏
これから始める Bot Builder 開発のコツと舞台裏これから始める Bot Builder 開発のコツと舞台裏
これから始める Bot Builder 開発のコツと舞台裏Yuta Matsumura
 
LogicFlow 実践編~LogicFlowでいろいろつくってみた ~
LogicFlow 実践編~LogicFlowでいろいろつくってみた ~LogicFlow 実践編~LogicFlowでいろいろつくってみた ~
LogicFlow 実践編~LogicFlowでいろいろつくってみた ~典子 松本
 
よりお手軽なBotへ 〜APIで効率的なBotを〜
よりお手軽なBotへ 〜APIで効率的なBotを〜よりお手軽なBotへ 〜APIで効率的なBotを〜
よりお手軽なBotへ 〜APIで効率的なBotを〜Tsukasa Kato
 
Microsoft bot frameworkを触ってみた
Microsoft bot frameworkを触ってみたMicrosoft bot frameworkを触ってみた
Microsoft bot frameworkを触ってみたKazuhide Maruyama
 
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.1Atsushi Yokohama (BEACHSIDE)
 
クラウドサービスで作成するノンコーディングBot
クラウドサービスで作成するノンコーディングBotクラウドサービスで作成するノンコーディングBot
クラウドサービスで作成するノンコーディングBotTsukasa Kato
 
アクセシビリティを考えたalt属性を自動生成してみよう!
アクセシビリティを考えたalt属性を自動生成してみよう!アクセシビリティを考えたalt属性を自動生成してみよう!
アクセシビリティを考えたalt属性を自動生成してみよう!典子 松本
 
Uno Platform か Blazor
Uno Platform か BlazorUno Platform か Blazor
Uno Platform か BlazorHiroyuki Mori
 
観たいセッションがかぶった!なんて心配ご無用。今年は、興味の赴くままにあれもこれも♪
観たいセッションがかぶった!なんて心配ご無用。今年は、興味の赴くままにあれもこれも♪観たいセッションがかぶった!なんて心配ご無用。今年は、興味の赴くままにあれもこれも♪
観たいセッションがかぶった!なんて心配ご無用。今年は、興味の赴くままにあれもこれも♪Kazumi IWANAGA
 
Tech Summit 2018: ユーザーインターフェースとしてのチャットボット開発手法 と Bot Framework V4
Tech Summit 2018: ユーザーインターフェースとしてのチャットボット開発手法 と Bot Framework V4 Tech Summit 2018: ユーザーインターフェースとしてのチャットボット開発手法 と Bot Framework V4
Tech Summit 2018: ユーザーインターフェースとしてのチャットボット開発手法 と Bot Framework V4 Ayako Omori
 
Bot Framework 最新情報 2018
Bot Framework 最新情報 2018Bot Framework 最新情報 2018
Bot Framework 最新情報 2018Yoshitaka Seo
 

Similar to Bot Service 概要 (20)

WebXR と Bot Composer で表現力の高いチャット ボットを作ろう
WebXR と Bot Composer で表現力の高いチャット ボットを作ろうWebXR と Bot Composer で表現力の高いチャット ボットを作ろう
WebXR と Bot Composer で表現力の高いチャット ボットを作ろう
 
【de:code 2020】 ハンズオンで学ぶ AI ~ Bot Framework Composer + QnA Maker / Custom Visi...
【de:code 2020】 ハンズオンで学ぶ AI ~ Bot Framework Composer + QnA Maker / Custom Visi...【de:code 2020】 ハンズオンで学ぶ AI ~ Bot Framework Composer + QnA Maker / Custom Visi...
【de:code 2020】 ハンズオンで学ぶ AI ~ Bot Framework Composer + QnA Maker / Custom Visi...
 
Jazug tokyo-night bot-frameworkとかbotとか
Jazug tokyo-night bot-frameworkとかbotとかJazug tokyo-night bot-frameworkとかbotとか
Jazug tokyo-night bot-frameworkとかbotとか
 
LINE Commumity Microsoft_ConversationalAI_20200409
LINE Commumity Microsoft_ConversationalAI_20200409LINE Commumity Microsoft_ConversationalAI_20200409
LINE Commumity Microsoft_ConversationalAI_20200409
 
Bot frameworkでbot入門
Bot frameworkでbot入門Bot frameworkでbot入門
Bot frameworkでbot入門
 
[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~
[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~
[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~
 
Bot Framework Emulator はこんなにすごい
Bot Framework Emulator はこんなにすごいBot Framework Emulator はこんなにすごい
Bot Framework Emulator はこんなにすごい
 
これから始める Bot Builder 開発のコツと舞台裏
これから始める Bot Builder 開発のコツと舞台裏これから始める Bot Builder 開発のコツと舞台裏
これから始める Bot Builder 開発のコツと舞台裏
 
LogicFlow 実践編~LogicFlowでいろいろつくってみた ~
LogicFlow 実践編~LogicFlowでいろいろつくってみた ~LogicFlow 実践編~LogicFlowでいろいろつくってみた ~
LogicFlow 実践編~LogicFlowでいろいろつくってみた ~
 
Bot Framework で会話のログを取る
Bot Framework で会話のログを取るBot Framework で会話のログを取る
Bot Framework で会話のログを取る
 
よりお手軽なBotへ 〜APIで効率的なBotを〜
よりお手軽なBotへ 〜APIで効率的なBotを〜よりお手軽なBotへ 〜APIで効率的なBotを〜
よりお手軽なBotへ 〜APIで効率的なBotを〜
 
Microsoft bot frameworkを触ってみた
Microsoft bot frameworkを触ってみたMicrosoft bot frameworkを触ってみた
Microsoft bot frameworkを触ってみた
 
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
 
クラウドサービスで作成するノンコーディングBot
クラウドサービスで作成するノンコーディングBotクラウドサービスで作成するノンコーディングBot
クラウドサービスで作成するノンコーディングBot
 
アクセシビリティを考えたalt属性を自動生成してみよう!
アクセシビリティを考えたalt属性を自動生成してみよう!アクセシビリティを考えたalt属性を自動生成してみよう!
アクセシビリティを考えたalt属性を自動生成してみよう!
 
Uno Platform か Blazor
Uno Platform か BlazorUno Platform か Blazor
Uno Platform か Blazor
 
MS系Chatbot触ってみた
MS系Chatbot触ってみたMS系Chatbot触ってみた
MS系Chatbot触ってみた
 
観たいセッションがかぶった!なんて心配ご無用。今年は、興味の赴くままにあれもこれも♪
観たいセッションがかぶった!なんて心配ご無用。今年は、興味の赴くままにあれもこれも♪観たいセッションがかぶった!なんて心配ご無用。今年は、興味の赴くままにあれもこれも♪
観たいセッションがかぶった!なんて心配ご無用。今年は、興味の赴くままにあれもこれも♪
 
Tech Summit 2018: ユーザーインターフェースとしてのチャットボット開発手法 と Bot Framework V4
Tech Summit 2018: ユーザーインターフェースとしてのチャットボット開発手法 と Bot Framework V4 Tech Summit 2018: ユーザーインターフェースとしてのチャットボット開発手法 と Bot Framework V4
Tech Summit 2018: ユーザーインターフェースとしてのチャットボット開発手法 と Bot Framework V4
 
Bot Framework 最新情報 2018
Bot Framework 最新情報 2018Bot Framework 最新情報 2018
Bot Framework 最新情報 2018
 

More from Yoshitaka Seo

言語系サービスの統合ポータル Language Studio で Microsoft AI を再確認
言語系サービスの統合ポータル Language Studio で Microsoft AI を再確認言語系サービスの統合ポータル Language Studio で Microsoft AI を再確認
言語系サービスの統合ポータル Language Studio で Microsoft AI を再確認Yoshitaka Seo
 
Arduino で組み込み開発 - 京都TECH オープンキャンパス2021
Arduino で組み込み開発 - 京都TECH オープンキャンパス2021Arduino で組み込み開発 - 京都TECH オープンキャンパス2021
Arduino で組み込み開発 - 京都TECH オープンキャンパス2021Yoshitaka Seo
 
AI-900 ポイント解説
AI-900 ポイント解説AI-900 ポイント解説
AI-900 ポイント解説Yoshitaka Seo
 
AI プログラミング - OCA / 京都TECH オープンキャンパス 2021
AI プログラミング - OCA / 京都TECH オープンキャンパス 2021AI プログラミング - OCA / 京都TECH オープンキャンパス 2021
AI プログラミング - OCA / 京都TECH オープンキャンパス 2021Yoshitaka Seo
 
AIの見方、AIとの付き合い方
AIの見方、AIとの付き合い方AIの見方、AIとの付き合い方
AIの見方、AIとの付き合い方Yoshitaka Seo
 
Custom Visionで仏像を画像分類
Custom Visionで仏像を画像分類Custom Visionで仏像を画像分類
Custom Visionで仏像を画像分類Yoshitaka Seo
 
誰もが AI を使う時代、作る時代
誰もが AI を使う時代、作る時代誰もが AI を使う時代、作る時代
誰もが AI を使う時代、作る時代Yoshitaka Seo
 
Azure IoT Edge で Custom Vision
Azure IoT Edge で Custom VisionAzure IoT Edge で Custom Vision
Azure IoT Edge で Custom VisionYoshitaka Seo
 
API ペタペタしただけのお手軽 感情分析アプリ
API ペタペタしただけのお手軽 感情分析アプリAPI ペタペタしただけのお手軽 感情分析アプリ
API ペタペタしただけのお手軽 感情分析アプリYoshitaka Seo
 
Machine Learning studio で構造化データから予測分析 (LT版)
Machine Learning studio で構造化データから予測分析 (LT版)Machine Learning studio で構造化データから予測分析 (LT版)
Machine Learning studio で構造化データから予測分析 (LT版)Yoshitaka Seo
 
BIerのためのAI入門
BIerのためのAI入門BIerのためのAI入門
BIerのためのAI入門Yoshitaka Seo
 
構造化データをツールで簡単に分析
構造化データをツールで簡単に分析構造化データをツールで簡単に分析
構造化データをツールで簡単に分析Yoshitaka Seo
 
チャットボットの自然言語処理
チャットボットの自然言語処理チャットボットの自然言語処理
チャットボットの自然言語処理Yoshitaka Seo
 
Custom Visionを活用するためのTips
Custom Visionを活用するためのTipsCustom Visionを活用するためのTips
Custom Visionを活用するためのTipsYoshitaka Seo
 
Machine Learning Serviceを使ってみよう
Machine Learning Serviceを使ってみようMachine Learning Serviceを使ってみよう
Machine Learning Serviceを使ってみようYoshitaka Seo
 
VS Code Tools for AI の紹介
VS Code Tools for AI の紹介VS Code Tools for AI の紹介
VS Code Tools for AI の紹介Yoshitaka Seo
 
Bot Builder V4 SDK + QnA Maker / LUIS
Bot Builder V4 SDK  + QnA Maker / LUISBot Builder V4 SDK  + QnA Maker / LUIS
Bot Builder V4 SDK + QnA Maker / LUISYoshitaka Seo
 
PowerApps アプリ開発入門
PowerApps アプリ開発入門PowerApps アプリ開発入門
PowerApps アプリ開発入門Yoshitaka Seo
 
Azure Machine Leaning Workbench の使い方
Azure Machine Leaning Workbench の使い方Azure Machine Leaning Workbench の使い方
Azure Machine Leaning Workbench の使い方Yoshitaka Seo
 

More from Yoshitaka Seo (20)

言語系サービスの統合ポータル Language Studio で Microsoft AI を再確認
言語系サービスの統合ポータル Language Studio で Microsoft AI を再確認言語系サービスの統合ポータル Language Studio で Microsoft AI を再確認
言語系サービスの統合ポータル Language Studio で Microsoft AI を再確認
 
Arduino で組み込み開発 - 京都TECH オープンキャンパス2021
Arduino で組み込み開発 - 京都TECH オープンキャンパス2021Arduino で組み込み開発 - 京都TECH オープンキャンパス2021
Arduino で組み込み開発 - 京都TECH オープンキャンパス2021
 
AI-900 ポイント解説
AI-900 ポイント解説AI-900 ポイント解説
AI-900 ポイント解説
 
AI プログラミング - OCA / 京都TECH オープンキャンパス 2021
AI プログラミング - OCA / 京都TECH オープンキャンパス 2021AI プログラミング - OCA / 京都TECH オープンキャンパス 2021
AI プログラミング - OCA / 京都TECH オープンキャンパス 2021
 
AIの見方、AIとの付き合い方
AIの見方、AIとの付き合い方AIの見方、AIとの付き合い方
AIの見方、AIとの付き合い方
 
Custom Visionで仏像を画像分類
Custom Visionで仏像を画像分類Custom Visionで仏像を画像分類
Custom Visionで仏像を画像分類
 
誰もが AI を使う時代、作る時代
誰もが AI を使う時代、作る時代誰もが AI を使う時代、作る時代
誰もが AI を使う時代、作る時代
 
Azure IoT Edge で Custom Vision
Azure IoT Edge で Custom VisionAzure IoT Edge で Custom Vision
Azure IoT Edge で Custom Vision
 
API ペタペタしただけのお手軽 感情分析アプリ
API ペタペタしただけのお手軽 感情分析アプリAPI ペタペタしただけのお手軽 感情分析アプリ
API ペタペタしただけのお手軽 感情分析アプリ
 
Machine Learning studio で構造化データから予測分析 (LT版)
Machine Learning studio で構造化データから予測分析 (LT版)Machine Learning studio で構造化データから予測分析 (LT版)
Machine Learning studio で構造化データから予測分析 (LT版)
 
BIerのためのAI入門
BIerのためのAI入門BIerのためのAI入門
BIerのためのAI入門
 
構造化データをツールで簡単に分析
構造化データをツールで簡単に分析構造化データをツールで簡単に分析
構造化データをツールで簡単に分析
 
チャットボットの自然言語処理
チャットボットの自然言語処理チャットボットの自然言語処理
チャットボットの自然言語処理
 
Custom Visionを活用するためのTips
Custom Visionを活用するためのTipsCustom Visionを活用するためのTips
Custom Visionを活用するためのTips
 
Machine Learning Serviceを使ってみよう
Machine Learning Serviceを使ってみようMachine Learning Serviceを使ってみよう
Machine Learning Serviceを使ってみよう
 
VS Code Tools for AI の紹介
VS Code Tools for AI の紹介VS Code Tools for AI の紹介
VS Code Tools for AI の紹介
 
Bot Builder V4 SDK + QnA Maker / LUIS
Bot Builder V4 SDK  + QnA Maker / LUISBot Builder V4 SDK  + QnA Maker / LUIS
Bot Builder V4 SDK + QnA Maker / LUIS
 
QnA Maker 逆入門
QnA Maker 逆入門QnA Maker 逆入門
QnA Maker 逆入門
 
PowerApps アプリ開発入門
PowerApps アプリ開発入門PowerApps アプリ開発入門
PowerApps アプリ開発入門
 
Azure Machine Leaning Workbench の使い方
Azure Machine Leaning Workbench の使い方Azure Machine Leaning Workbench の使い方
Azure Machine Leaning Workbench の使い方
 

Bot Service 概要