SlideShare une entreprise Scribd logo
1  sur  58
관련 기술 주요내용
패턴인식
(Pattern Recognition)
기계에 의하여 도형, 문자, 음성 등을 식별하는 것
자연어처리
(natural Language Processing)
인간이 보통 쓰는 언어를 컴퓨터에 인식시켜 처리하는 일
정보검색 질의 응답, 시스템 자동 번역, 통역 등이 포함됨
시멘틱 웹
(Symantic Web)
컴퓨터가 정보 자원의 뜻을 이해하고 논리적 추론까지 할
수 있는 차세대 지능형 웹
텍스트 마이닝
(Text Mining)
비정형 텍스트 데이터에서 새롭고 유용한 정보를 찾아내
는 과정 또는 기술
상황인식 컴퓨팅
(Context Aware Computing)
가상공간에서 현실의 상황을 정보화하고 이를 활용하여
사용자 중심의 지능화된 서비스를 제공하는 기술.
텍스트 기반 챗봇 주요 핵심 기술
출처 : 한국정보화진흥원, ‘모바일시대를 넘어 AI시대로’
업체 플랫폼 주요내용
페이스북 Facebook Messenger F8 2016에서 Facebook Messenger에 인공지능을 적용한 챗
봇 공개. 40개 내외 업체들이 참여 예정
텐센트 WeChat 인공지능 기반의 챗봇 전환을 통해 메시지를 통해 대화 하며
호텔, 병원, 영화등의 예약 기능 제공
텔레그램 Telegram Bot API 공개로 개발자들에게 챗봇 개발 지원.
대화창에서 바로 이용이 가능한 Inline Bots를 추가
킥 Bot Shop 화장품/의류업체 등이 참여한 ‘봇샵(Bot Shop)’ 오픈을
통해 챗봇 서비스 제공
구글 Allo 인공지능 챗봇 기술 적용된 메신저 플랫폼 준비 중
기업 현황 - 해외
출처 : Digieco, KB경영연구소, 언론기사 참조
기업 현황 - 해외
출처 : Statista 2016 수정 요약
MS Bot Framework https://dev.botframework.com
C#, Node.js
Skype,
Web, email,
Facebook,
GroupMe,
Kik,
Slack,
Telegram,
Twilio,
direct line app
integration.
MS Bot Framework
Chat Bot
(Bot Framework) CONNECTOR
Connector Service Flow.
Channels
Routes messages
manages state
bot registration
Tracking
services (such as translation) and
per-user and per-bot storage
Web Service
HTTPS only
ASP.NET or Node.js
Cloud
(Microsoft Azure)
Web
▪
▪
▪
Installing Tools
자세한 내용은 Github
Connector, Activities & Messages
Connector The Connector (or Connector Service) handles all
communication, conversations, state, and
authorization for all activities between a Bot and Users.
Activity An Activity is a specific event that occurs between a
Bot and Users, such as an actual message, or
conversation notification.
Message A Message is an overt (typically visible)
communication between a Bot and Users, such as a
User asking a question, or a Bot responding with a
reply.
Chat Bot
(Bot Framework) CONNECTOR
Connector Service Flow.
Channels
Routes messages
manages state
bot registration
Tracking
services (such as translation) and
per-user and per-bot storage
Web Service
HTTPS only
ASP.NET or Node.js
HTTPS
JSON
Your bot
{
"type": "Message",
"id": "68YrxgtB53Y",
"conversationId": "DphPaFQrDuZDKyCez4AFGcT4vy5aQDje1lLGIjB8v18MFtb",
"language": "en",
"text": "You can say "/order" to order!",
"attachments": [ ],
"from": {
"name": "+12065551212",
"channelId": "sms",
"address": "+12065551212",
"id": "Ro52hKN287",
"isBot": false
},
"channelData": { SMS data here },
"botUserData": { your data here },
...
}
Bot
Connector
Connector
Namespace: Microsoft.Bot.Connector
ConnectorClient connector = new ConnectorClient(
new Uri(activity.ServiceUrl));
string message = string.Format("{0}을 주문 받았습니다. 감사합니다.",
activity.Text);
// return our reply to the user
Activity reply = activity.CreateReply(message);
await connector.Conversations.ReplyToActivityAsync(reply);
Activity Type Description
Message Sent when general content is passed to or from a user
and a bot
Conversation Update Sent when the conversation's properties change, for
example the topic name, or when user joins or leaves
the group
Contact Relation Update Sent when bot added or removed to contact list
Delete User Data Send when user is removed from a conversation
Typing Sent when a user is typing
Ping Send when a keep-alive is needed
Types of Activities
Activities Types
switch (activity.GetActivityType())
{
case ActivityTypes.Message:
message = string.Format("{0}을 주문 받았습니다. 감사합니
reply = activity.CreateReply(message);
await connector.Conversations.ReplyToActivityAsync(r
break;
case ActivityTypes.ConversationUpdate:
message = string.Format("안녕하세요 만리장성 봇 입니다.
reply = activity.CreateReply(message);
case ActivityTypes.ConversationUpdate:
message = string.Format("안녕하세요 만리장성 봇 입니다. 주문하실
reply = activity.CreateReply(message);
await connector.Conversations.ReplyToActivityAsync(reply);
break;
case ActivityTypes.ContactRelationUpdate:
case ActivityTypes.Typing:
case ActivityTypes.DeleteUserData:
default:
break;
}
Although Dialogs are the basic building block of a conversation, it’s difficult to
create a “guided” conversation. FormFlow creates Dialogs and guides a User
through filling in a “form” while providing help and guidance along the way.
Using Forms with FormFlow
Chat Bot
(Bot Framework) CONNECTOR
Connector Service Flow.
State
자장면
짬뽕
탕수육
.
.
.
Web Service
HTTPS only
ASP.NET or Node.js
FormFlow
FormFlow
Namespace: Microsoft.Bot.Builder.FormFlow
[Serializable]
public class FoodOrder
{
public FoodOptions? Food;
public LengthOptions? Length;
public static IForm<FoodOrder> BuildForm()
{
return new FormBuilder<FoodOrder>()
.Message("만리장성에 오신 여러분을 환영합니다.")
.Build();
}
FormFlow
Namespace: Microsoft.Bot.Builder.FormFlow
public enum FoodOptions
{
자장면, 짬뽕, 탕수육, 기스면, 란자완스
};
public enum LengthOptions { 보통, 곱배기};
LUIS is part of Microsoft Cognitive Services offering and can be used for
any device, on any platform, and any application scenario.
Integrating Language Understanding
Intelligence Services
Your conversation logic
Logic
Web
service
LUIS
Integrating Language Understanding
Intelligence Services
Language
Speech
Search
Machine
Learning
Knowledge Vision
Spell
check
Speech API
Entity linking
Recommendation
API
Bing
autosuggest
Computer
vision
Emotion
Forecasting
Text to
speech
Thumbnail
generation
Anomaly
detection
Custom
recognition
(CRIS)
Bing
image search
Web language
model
Customer
feedback
analysis
Academic
knowledge
OCR, tagging,
captioning
Sentiment
scoring
Bing
news search
Bing
web search
Text analytics
Cognitive Services APIs
Emotion
Speaker
Recognition
Speech
Custom
Recognition
Computer Vision
Face
Video
microsoft.com/cognitive
Linguistic Analysis
Language
Understanding
Bing Spell Check
Entity Linking
Knowledge
Exploration
Academic
Knowledge
Bing
Image Search
Bing
Video Search
Bing
Web Search
WebLM
Text Analytics Recommendations
Bing
Autosuggest
Bing
News Search
Translator
https://www.microsoft.com/cognitive-services/
Azure Function
Azure Search
Variety of Creative Apps
Language
Speech
Search
Machine
Learning
Knowledge Vision
Spell
check
Speech API
Entity linking
Recommendation
API
Bing
autosuggest
Computer
vision
Emotion
Forecasting
Text to
speech
Thumbnail
generation
Anomaly
detection
Custom
recognition
(CRIS)
Bing
image search
Web language
model
Customer
feedback
analysis
Academic
knowledge
OCR, tagging,
captioning
Sentiment
scoring
Bing
news search
Bing
web search
Text analytics
Cognitive Services APIs
GitHub!
https://github.com/Microsoft/botbuilder
Putting it All Togethner
Bot Directory
https://bots.botframework.com/
Demo
Game Chat Bot
http://gamechatbot.azurewebsites.net/

Contenu connexe

Similaire à 김영욱 - Microsoft Bot Framework [WSConf. Seoul 2017]

Microsoft Bot Framework (Node.js Edition)
Microsoft Bot Framework (Node.js Edition)Microsoft Bot Framework (Node.js Edition)
Microsoft Bot Framework (Node.js Edition)Jens Siebert
 
[2019 Serverless Summit] Building Serverless Slack Chatbot on IBM Cloud Func...
 [2019 Serverless Summit] Building Serverless Slack Chatbot on IBM Cloud Func... [2019 Serverless Summit] Building Serverless Slack Chatbot on IBM Cloud Func...
[2019 Serverless Summit] Building Serverless Slack Chatbot on IBM Cloud Func...Tomomi Imura
 
Bot & AI - A Bot for Productivity
Bot & AI - A Bot for ProductivityBot & AI - A Bot for Productivity
Bot & AI - A Bot for ProductivityMarvin Heng
 
Tata Motors GDC .LTD Internship
Tata Motors GDC .LTD Internship Tata Motors GDC .LTD Internship
Tata Motors GDC .LTD Internship Omkar Rane
 
Build a mobile chatbot with Xamarin
Build a mobile chatbot with XamarinBuild a mobile chatbot with Xamarin
Build a mobile chatbot with XamarinLuis Beltran
 
Rapid development & integration of real time communication in websites
Rapid development & integration of real time communication in websitesRapid development & integration of real time communication in websites
Rapid development & integration of real time communication in websitesChetan Giridhar
 
Just KISST.me! Meet the TADHack Developers, Thomas Howe
Just KISST.me! Meet the TADHack Developers, Thomas HoweJust KISST.me! Meet the TADHack Developers, Thomas Howe
Just KISST.me! Meet the TADHack Developers, Thomas HoweAlan Quayle
 
Breaking into Bots
Breaking into BotsBreaking into Bots
Breaking into BotsSarah Sexton
 
Webinar - Building a ChatBot using IBM Watson Conversation Service
Webinar - Building a ChatBot using IBM Watson Conversation ServiceWebinar - Building a ChatBot using IBM Watson Conversation Service
Webinar - Building a ChatBot using IBM Watson Conversation ServiceThirdEye Data
 
Building apps for microsoft teams - aossg
Building apps for microsoft teams - aossgBuilding apps for microsoft teams - aossg
Building apps for microsoft teams - aossgJenkins NS
 
AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017
AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017
AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017Alex Smith
 
Bots, adaptive cards, task module, message extensions in microsoft teams
Bots, adaptive cards, task module, message extensions in microsoft teamsBots, adaptive cards, task module, message extensions in microsoft teams
Bots, adaptive cards, task module, message extensions in microsoft teamsJenkins NS
 
IBM cognitive service introduction
IBM cognitive service introductionIBM cognitive service introduction
IBM cognitive service introductionHui Wen Han
 
Just KISST.me! Thomas Howe
Just KISST.me! Thomas HoweJust KISST.me! Thomas Howe
Just KISST.me! Thomas HoweAlan Quayle
 
Bots, adaptive cards, task module, message extensions in microsoft teams
Bots, adaptive cards, task module, message extensions in microsoft teamsBots, adaptive cards, task module, message extensions in microsoft teams
Bots, adaptive cards, task module, message extensions in microsoft teamsJenkins NS
 
Clever data building a chatbot from your database
Clever data building a chatbot from your databaseClever data building a chatbot from your database
Clever data building a chatbot from your databaseLuis Beltran
 
An Intelligent Chatbot for College Enquiry with Amazon Lex
An Intelligent Chatbot for College Enquiry with Amazon LexAn Intelligent Chatbot for College Enquiry with Amazon Lex
An Intelligent Chatbot for College Enquiry with Amazon LexIRJET Journal
 
Azure Bot Framework
Azure Bot FrameworkAzure Bot Framework
Azure Bot FrameworkPhat Nguyen
 

Similaire à 김영욱 - Microsoft Bot Framework [WSConf. Seoul 2017] (20)

Microsoft Bot Framework (Node.js Edition)
Microsoft Bot Framework (Node.js Edition)Microsoft Bot Framework (Node.js Edition)
Microsoft Bot Framework (Node.js Edition)
 
[2019 Serverless Summit] Building Serverless Slack Chatbot on IBM Cloud Func...
 [2019 Serverless Summit] Building Serverless Slack Chatbot on IBM Cloud Func... [2019 Serverless Summit] Building Serverless Slack Chatbot on IBM Cloud Func...
[2019 Serverless Summit] Building Serverless Slack Chatbot on IBM Cloud Func...
 
Bot & AI - A Bot for Productivity
Bot & AI - A Bot for ProductivityBot & AI - A Bot for Productivity
Bot & AI - A Bot for Productivity
 
Tata Motors GDC .LTD Internship
Tata Motors GDC .LTD Internship Tata Motors GDC .LTD Internship
Tata Motors GDC .LTD Internship
 
Build a mobile chatbot with Xamarin
Build a mobile chatbot with XamarinBuild a mobile chatbot with Xamarin
Build a mobile chatbot with Xamarin
 
Rapid development & integration of real time communication in websites
Rapid development & integration of real time communication in websitesRapid development & integration of real time communication in websites
Rapid development & integration of real time communication in websites
 
Just KISST.me! Meet the TADHack Developers, Thomas Howe
Just KISST.me! Meet the TADHack Developers, Thomas HoweJust KISST.me! Meet the TADHack Developers, Thomas Howe
Just KISST.me! Meet the TADHack Developers, Thomas Howe
 
Breaking into Bots
Breaking into BotsBreaking into Bots
Breaking into Bots
 
Bot design AIsatPN 2018
Bot design AIsatPN 2018Bot design AIsatPN 2018
Bot design AIsatPN 2018
 
Webinar - Building a ChatBot using IBM Watson Conversation Service
Webinar - Building a ChatBot using IBM Watson Conversation ServiceWebinar - Building a ChatBot using IBM Watson Conversation Service
Webinar - Building a ChatBot using IBM Watson Conversation Service
 
Building apps for microsoft teams - aossg
Building apps for microsoft teams - aossgBuilding apps for microsoft teams - aossg
Building apps for microsoft teams - aossg
 
AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017
AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017
AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017
 
Bots, adaptive cards, task module, message extensions in microsoft teams
Bots, adaptive cards, task module, message extensions in microsoft teamsBots, adaptive cards, task module, message extensions in microsoft teams
Bots, adaptive cards, task module, message extensions in microsoft teams
 
IBM cognitive service introduction
IBM cognitive service introductionIBM cognitive service introduction
IBM cognitive service introduction
 
Just KISST.me! Thomas Howe
Just KISST.me! Thomas HoweJust KISST.me! Thomas Howe
Just KISST.me! Thomas Howe
 
Bots, adaptive cards, task module, message extensions in microsoft teams
Bots, adaptive cards, task module, message extensions in microsoft teamsBots, adaptive cards, task module, message extensions in microsoft teams
Bots, adaptive cards, task module, message extensions in microsoft teams
 
Writing a slack chatbot mxlos
Writing a slack chatbot mxlosWriting a slack chatbot mxlos
Writing a slack chatbot mxlos
 
Clever data building a chatbot from your database
Clever data building a chatbot from your databaseClever data building a chatbot from your database
Clever data building a chatbot from your database
 
An Intelligent Chatbot for College Enquiry with Amazon Lex
An Intelligent Chatbot for College Enquiry with Amazon LexAn Intelligent Chatbot for College Enquiry with Amazon Lex
An Intelligent Chatbot for College Enquiry with Amazon Lex
 
Azure Bot Framework
Azure Bot FrameworkAzure Bot Framework
Azure Bot Framework
 

Plus de WSConf.

김원준 - 웹폰트(Web Font) 파헤치기 [WSConf.Seoul.2017. Vol.2]
김원준 - 웹폰트(Web Font) 파헤치기 [WSConf.Seoul.2017. Vol.2]김원준 - 웹폰트(Web Font) 파헤치기 [WSConf.Seoul.2017. Vol.2]
김원준 - 웹폰트(Web Font) 파헤치기 [WSConf.Seoul.2017. Vol.2]WSConf.
 
정찬명 - CSS Flex you must konw [WSConf.Seoul.2017. Vol.2]
정찬명 - CSS Flex you must konw [WSConf.Seoul.2017. Vol.2]정찬명 - CSS Flex you must konw [WSConf.Seoul.2017. Vol.2]
정찬명 - CSS Flex you must konw [WSConf.Seoul.2017. Vol.2]WSConf.
 
배영 - CSS Animation 성능 이론과 실제 적용 사례 [WSConf.Seoul.2017. Vol.2]
배영 - CSS Animation 성능 이론과 실제 적용 사례 [WSConf.Seoul.2017. Vol.2]배영 - CSS Animation 성능 이론과 실제 적용 사례 [WSConf.Seoul.2017. Vol.2]
배영 - CSS Animation 성능 이론과 실제 적용 사례 [WSConf.Seoul.2017. Vol.2]WSConf.
 
지성봉 - HTML5 Document Outline [WSConf.Seoul.2017. Vol.2]
지성봉 - HTML5 Document Outline [WSConf.Seoul.2017. Vol.2]지성봉 - HTML5 Document Outline [WSConf.Seoul.2017. Vol.2]
지성봉 - HTML5 Document Outline [WSConf.Seoul.2017. Vol.2]WSConf.
 
조은 - AMP PWA 101 [WSConf.Seoul.2017. Vol.2]
조은 - AMP PWA 101 [WSConf.Seoul.2017. Vol.2]조은 - AMP PWA 101 [WSConf.Seoul.2017. Vol.2]
조은 - AMP PWA 101 [WSConf.Seoul.2017. Vol.2]WSConf.
 
이환 - 이미지는 마크업의 반이다. [WSConf. Seoul 2016/2017]
이환 - 이미지는 마크업의 반이다. [WSConf. Seoul 2016/2017]이환 - 이미지는 마크업의 반이다. [WSConf. Seoul 2016/2017]
이환 - 이미지는 마크업의 반이다. [WSConf. Seoul 2016/2017]WSConf.
 
정찬명 - CSS Selectors in HTML [WSConf. Seoul 2016/2017]
정찬명 - CSS Selectors in HTML [WSConf. Seoul 2016/2017]정찬명 - CSS Selectors in HTML [WSConf. Seoul 2016/2017]
정찬명 - CSS Selectors in HTML [WSConf. Seoul 2016/2017]WSConf.
 
안형우 - 유지보수하기 쉬운 CSS 전략 [WSConf. Seoul 2016/2017]
안형우 - 유지보수하기 쉬운 CSS 전략 [WSConf. Seoul 2016/2017]안형우 - 유지보수하기 쉬운 CSS 전략 [WSConf. Seoul 2016/2017]
안형우 - 유지보수하기 쉬운 CSS 전략 [WSConf. Seoul 2016/2017]WSConf.
 
윤원진 - 반응형웹디자인(RWD)을 위한 넓고 얕은 지식 [WSConf. Seoul 2016]
윤원진 - 반응형웹디자인(RWD)을 위한 넓고 얕은 지식 [WSConf. Seoul 2016]윤원진 - 반응형웹디자인(RWD)을 위한 넓고 얕은 지식 [WSConf. Seoul 2016]
윤원진 - 반응형웹디자인(RWD)을 위한 넓고 얕은 지식 [WSConf. Seoul 2016]WSConf.
 
김태훈 - Google AMP는 어떻게 빠른 성능을 내나 [WSConf. Seoul 2016/2017]
김태훈 - Google AMP는 어떻게 빠른 성능을 내나 [WSConf. Seoul 2016/2017]김태훈 - Google AMP는 어떻게 빠른 성능을 내나 [WSConf. Seoul 2016/2017]
김태훈 - Google AMP는 어떻게 빠른 성능을 내나 [WSConf. Seoul 2016/2017]WSConf.
 
지성봉 - WAI-ARIA 실전 공략 [WSConf. Seoul 2016/2017]
지성봉 - WAI-ARIA 실전 공략 [WSConf. Seoul 2016/2017]지성봉 - WAI-ARIA 실전 공략 [WSConf. Seoul 2016/2017]
지성봉 - WAI-ARIA 실전 공략 [WSConf. Seoul 2016/2017]WSConf.
 

Plus de WSConf. (11)

김원준 - 웹폰트(Web Font) 파헤치기 [WSConf.Seoul.2017. Vol.2]
김원준 - 웹폰트(Web Font) 파헤치기 [WSConf.Seoul.2017. Vol.2]김원준 - 웹폰트(Web Font) 파헤치기 [WSConf.Seoul.2017. Vol.2]
김원준 - 웹폰트(Web Font) 파헤치기 [WSConf.Seoul.2017. Vol.2]
 
정찬명 - CSS Flex you must konw [WSConf.Seoul.2017. Vol.2]
정찬명 - CSS Flex you must konw [WSConf.Seoul.2017. Vol.2]정찬명 - CSS Flex you must konw [WSConf.Seoul.2017. Vol.2]
정찬명 - CSS Flex you must konw [WSConf.Seoul.2017. Vol.2]
 
배영 - CSS Animation 성능 이론과 실제 적용 사례 [WSConf.Seoul.2017. Vol.2]
배영 - CSS Animation 성능 이론과 실제 적용 사례 [WSConf.Seoul.2017. Vol.2]배영 - CSS Animation 성능 이론과 실제 적용 사례 [WSConf.Seoul.2017. Vol.2]
배영 - CSS Animation 성능 이론과 실제 적용 사례 [WSConf.Seoul.2017. Vol.2]
 
지성봉 - HTML5 Document Outline [WSConf.Seoul.2017. Vol.2]
지성봉 - HTML5 Document Outline [WSConf.Seoul.2017. Vol.2]지성봉 - HTML5 Document Outline [WSConf.Seoul.2017. Vol.2]
지성봉 - HTML5 Document Outline [WSConf.Seoul.2017. Vol.2]
 
조은 - AMP PWA 101 [WSConf.Seoul.2017. Vol.2]
조은 - AMP PWA 101 [WSConf.Seoul.2017. Vol.2]조은 - AMP PWA 101 [WSConf.Seoul.2017. Vol.2]
조은 - AMP PWA 101 [WSConf.Seoul.2017. Vol.2]
 
이환 - 이미지는 마크업의 반이다. [WSConf. Seoul 2016/2017]
이환 - 이미지는 마크업의 반이다. [WSConf. Seoul 2016/2017]이환 - 이미지는 마크업의 반이다. [WSConf. Seoul 2016/2017]
이환 - 이미지는 마크업의 반이다. [WSConf. Seoul 2016/2017]
 
정찬명 - CSS Selectors in HTML [WSConf. Seoul 2016/2017]
정찬명 - CSS Selectors in HTML [WSConf. Seoul 2016/2017]정찬명 - CSS Selectors in HTML [WSConf. Seoul 2016/2017]
정찬명 - CSS Selectors in HTML [WSConf. Seoul 2016/2017]
 
안형우 - 유지보수하기 쉬운 CSS 전략 [WSConf. Seoul 2016/2017]
안형우 - 유지보수하기 쉬운 CSS 전략 [WSConf. Seoul 2016/2017]안형우 - 유지보수하기 쉬운 CSS 전략 [WSConf. Seoul 2016/2017]
안형우 - 유지보수하기 쉬운 CSS 전략 [WSConf. Seoul 2016/2017]
 
윤원진 - 반응형웹디자인(RWD)을 위한 넓고 얕은 지식 [WSConf. Seoul 2016]
윤원진 - 반응형웹디자인(RWD)을 위한 넓고 얕은 지식 [WSConf. Seoul 2016]윤원진 - 반응형웹디자인(RWD)을 위한 넓고 얕은 지식 [WSConf. Seoul 2016]
윤원진 - 반응형웹디자인(RWD)을 위한 넓고 얕은 지식 [WSConf. Seoul 2016]
 
김태훈 - Google AMP는 어떻게 빠른 성능을 내나 [WSConf. Seoul 2016/2017]
김태훈 - Google AMP는 어떻게 빠른 성능을 내나 [WSConf. Seoul 2016/2017]김태훈 - Google AMP는 어떻게 빠른 성능을 내나 [WSConf. Seoul 2016/2017]
김태훈 - Google AMP는 어떻게 빠른 성능을 내나 [WSConf. Seoul 2016/2017]
 
지성봉 - WAI-ARIA 실전 공략 [WSConf. Seoul 2016/2017]
지성봉 - WAI-ARIA 실전 공략 [WSConf. Seoul 2016/2017]지성봉 - WAI-ARIA 실전 공략 [WSConf. Seoul 2016/2017]
지성봉 - WAI-ARIA 실전 공략 [WSConf. Seoul 2016/2017]
 

Dernier

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 

Dernier (20)

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

김영욱 - Microsoft Bot Framework [WSConf. Seoul 2017]

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7. 관련 기술 주요내용 패턴인식 (Pattern Recognition) 기계에 의하여 도형, 문자, 음성 등을 식별하는 것 자연어처리 (natural Language Processing) 인간이 보통 쓰는 언어를 컴퓨터에 인식시켜 처리하는 일 정보검색 질의 응답, 시스템 자동 번역, 통역 등이 포함됨 시멘틱 웹 (Symantic Web) 컴퓨터가 정보 자원의 뜻을 이해하고 논리적 추론까지 할 수 있는 차세대 지능형 웹 텍스트 마이닝 (Text Mining) 비정형 텍스트 데이터에서 새롭고 유용한 정보를 찾아내 는 과정 또는 기술 상황인식 컴퓨팅 (Context Aware Computing) 가상공간에서 현실의 상황을 정보화하고 이를 활용하여 사용자 중심의 지능화된 서비스를 제공하는 기술. 텍스트 기반 챗봇 주요 핵심 기술 출처 : 한국정보화진흥원, ‘모바일시대를 넘어 AI시대로’
  • 8. 업체 플랫폼 주요내용 페이스북 Facebook Messenger F8 2016에서 Facebook Messenger에 인공지능을 적용한 챗 봇 공개. 40개 내외 업체들이 참여 예정 텐센트 WeChat 인공지능 기반의 챗봇 전환을 통해 메시지를 통해 대화 하며 호텔, 병원, 영화등의 예약 기능 제공 텔레그램 Telegram Bot API 공개로 개발자들에게 챗봇 개발 지원. 대화창에서 바로 이용이 가능한 Inline Bots를 추가 킥 Bot Shop 화장품/의류업체 등이 참여한 ‘봇샵(Bot Shop)’ 오픈을 통해 챗봇 서비스 제공 구글 Allo 인공지능 챗봇 기술 적용된 메신저 플랫폼 준비 중 기업 현황 - 해외 출처 : Digieco, KB경영연구소, 언론기사 참조
  • 9. 기업 현황 - 해외 출처 : Statista 2016 수정 요약
  • 10.
  • 11.
  • 12.
  • 13. MS Bot Framework https://dev.botframework.com C#, Node.js
  • 15. Chat Bot (Bot Framework) CONNECTOR Connector Service Flow. Channels Routes messages manages state bot registration Tracking services (such as translation) and per-user and per-bot storage Web Service HTTPS only ASP.NET or Node.js Cloud (Microsoft Azure) Web
  • 18.
  • 19.
  • 20. Connector, Activities & Messages Connector The Connector (or Connector Service) handles all communication, conversations, state, and authorization for all activities between a Bot and Users. Activity An Activity is a specific event that occurs between a Bot and Users, such as an actual message, or conversation notification. Message A Message is an overt (typically visible) communication between a Bot and Users, such as a User asking a question, or a Bot responding with a reply.
  • 21. Chat Bot (Bot Framework) CONNECTOR Connector Service Flow. Channels Routes messages manages state bot registration Tracking services (such as translation) and per-user and per-bot storage Web Service HTTPS only ASP.NET or Node.js HTTPS JSON
  • 22. Your bot { "type": "Message", "id": "68YrxgtB53Y", "conversationId": "DphPaFQrDuZDKyCez4AFGcT4vy5aQDje1lLGIjB8v18MFtb", "language": "en", "text": "You can say "/order" to order!", "attachments": [ ], "from": { "name": "+12065551212", "channelId": "sms", "address": "+12065551212", "id": "Ro52hKN287", "isBot": false }, "channelData": { SMS data here }, "botUserData": { your data here }, ... } Bot Connector
  • 23. Connector Namespace: Microsoft.Bot.Connector ConnectorClient connector = new ConnectorClient( new Uri(activity.ServiceUrl)); string message = string.Format("{0}을 주문 받았습니다. 감사합니다.", activity.Text); // return our reply to the user Activity reply = activity.CreateReply(message); await connector.Conversations.ReplyToActivityAsync(reply);
  • 24.
  • 25. Activity Type Description Message Sent when general content is passed to or from a user and a bot Conversation Update Sent when the conversation's properties change, for example the topic name, or when user joins or leaves the group Contact Relation Update Sent when bot added or removed to contact list Delete User Data Send when user is removed from a conversation Typing Sent when a user is typing Ping Send when a keep-alive is needed Types of Activities
  • 26. Activities Types switch (activity.GetActivityType()) { case ActivityTypes.Message: message = string.Format("{0}을 주문 받았습니다. 감사합니 reply = activity.CreateReply(message); await connector.Conversations.ReplyToActivityAsync(r break; case ActivityTypes.ConversationUpdate: message = string.Format("안녕하세요 만리장성 봇 입니다. reply = activity.CreateReply(message);
  • 27. case ActivityTypes.ConversationUpdate: message = string.Format("안녕하세요 만리장성 봇 입니다. 주문하실 reply = activity.CreateReply(message); await connector.Conversations.ReplyToActivityAsync(reply); break; case ActivityTypes.ContactRelationUpdate: case ActivityTypes.Typing: case ActivityTypes.DeleteUserData: default: break; }
  • 28.
  • 29. Although Dialogs are the basic building block of a conversation, it’s difficult to create a “guided” conversation. FormFlow creates Dialogs and guides a User through filling in a “form” while providing help and guidance along the way. Using Forms with FormFlow
  • 30. Chat Bot (Bot Framework) CONNECTOR Connector Service Flow. State 자장면 짬뽕 탕수육 . . . Web Service HTTPS only ASP.NET or Node.js FormFlow
  • 31. FormFlow Namespace: Microsoft.Bot.Builder.FormFlow [Serializable] public class FoodOrder { public FoodOptions? Food; public LengthOptions? Length; public static IForm<FoodOrder> BuildForm() { return new FormBuilder<FoodOrder>() .Message("만리장성에 오신 여러분을 환영합니다.") .Build(); }
  • 32. FormFlow Namespace: Microsoft.Bot.Builder.FormFlow public enum FoodOptions { 자장면, 짬뽕, 탕수육, 기스면, 란자완스 }; public enum LengthOptions { 보통, 곱배기};
  • 33.
  • 34. LUIS is part of Microsoft Cognitive Services offering and can be used for any device, on any platform, and any application scenario. Integrating Language Understanding Intelligence Services
  • 37.
  • 38.
  • 39.
  • 40. Language Speech Search Machine Learning Knowledge Vision Spell check Speech API Entity linking Recommendation API Bing autosuggest Computer vision Emotion Forecasting Text to speech Thumbnail generation Anomaly detection Custom recognition (CRIS) Bing image search Web language model Customer feedback analysis Academic knowledge OCR, tagging, captioning Sentiment scoring Bing news search Bing web search Text analytics Cognitive Services APIs
  • 41. Emotion Speaker Recognition Speech Custom Recognition Computer Vision Face Video microsoft.com/cognitive Linguistic Analysis Language Understanding Bing Spell Check Entity Linking Knowledge Exploration Academic Knowledge Bing Image Search Bing Video Search Bing Web Search WebLM Text Analytics Recommendations Bing Autosuggest Bing News Search Translator https://www.microsoft.com/cognitive-services/
  • 44.
  • 46.
  • 47. Language Speech Search Machine Learning Knowledge Vision Spell check Speech API Entity linking Recommendation API Bing autosuggest Computer vision Emotion Forecasting Text to speech Thumbnail generation Anomaly detection Custom recognition (CRIS) Bing image search Web language model Customer feedback analysis Academic knowledge OCR, tagging, captioning Sentiment scoring Bing news search Bing web search Text analytics Cognitive Services APIs
  • 48.
  • 49.
  • 50.
  • 52.
  • 53.
  • 54. Putting it All Togethner
  • 55.
  • 57. Demo