Upload
abhishek-sur
View
274
Download
0
Embed Size (px)
Citation preview
Building a BOTWith an Intent
PRESENTED BY
Abhishek SurMicrosoft MVP (since 2011), Intel Software InnovatorSoftware Solution Architect, InSync Tech-Fin Solutions Ltd.
/abhi2434 /abhi2434 /in/abhi2434
A comprehensive book on .NET Expert guide book with expert advices on development.
Part 1 includes Visual Studio, Memory Management, Windows 8, ASP.NET, WPF, Architecture etc.
A comprehensive book on .NET Expert guide book with expert advices on development.
Part 2 includes Debugging, WCF, Windows Phone, TestingTFS, Extensibility, Windows Azure etc.
Agenda• What is BOT ?• How traditional bots are built ?• The Bot framework, why it exists? • Create a simple Bot using code• Connecting Cognitive Services to add an intent• Dialogs and Forms• Publishing and executing• Voice Calling Bots – How to ?• References & Samples
Overview
• A bot is a remote controlled software program that can interact with a human, do some automated tasks like searching in Bing, ordering pizza for you or giving recommendation based on your choices, just like a real human being. • Bots are software programs while ro-bots are mechanical as
well as software programs.• Examples, Siri, Cortana, SmarterChild of AOL messenger etc.
What is a Bot ?
How Traditional bots are built?
• Hell lot of language parsers to identify grammar and meaning of utterances.• Fixed response based on logic.• Strong dependence on database and AI. • Regular expressions to identify keywords.• Not easy, Complex code, Lots of research work.• Identify Domain knowledge and personality development just like
humans. • Separate set of API needed to provide integration to other services. • Expensive and needs to be marketed separately.
How traditional Bots are built?
Why Bot Framework?
• Easy to use and easy to learn.• Comprehensive documentation.• Years of experience on language understanding is provided
for free as service (LUIS). • Support for multiple languages and standards (REST, .NET,
NodeJS)• Supports built in integration with Microsoft Research AI
Service (LUIS) for natural language understanding. • Connector services to host BOTs over pre-existing channels
Features
Architecture of BOTs
Microsoft Cognitive Services
LUIS
Microsoft BOT Framework
Your BOT BOT Connector
Messages
Intents & Entities
Channels
Web Chat Skype Slack Facebook …
Other 3rd party APIs.
• Bots are based on HTTP standards• Direct line APIs are used by each connector to communicate with
Bots.• Standard Authorization headers can be used for
BotAuthentication or even you can opt for custom authentication.• Conversation is based on pooling of HTTP Get.• Each conversation creates an ID to identify state.
• https://docs.botframework.com/en-us/restapi/directline/
Insights
• Conversations are gradually becoming an integral part of digital life• It is hard for a service to have humans to respond to every
questions• Conversational User Interface developed by Microsoft and used in
Cortana is an example how a personal digital assistant can help you in daily life.• Easy to develop with new APIs. • Integration to common set of services.• A need of modern world.
Why BOT exists?
Creating a Simple BOT with BOT Framework
DEMO
Markdowns (for your reference)
Connecting to BOT Connectors
DEMO
Dialogs and Forms
• Dialogs provides state full conversation• Dialog is a class implemented from IDialog maintains a stack of
conversation context. • Conversation state is stored as a State Service and is portable
across different machines. • Form flows provide guided conversation allowing the users to
choose path based on their own choices. • Wizard based approach implemented on top of Dialog Model.
Dialogs and Form flows?
Dialogs and Forms
DEMO
Skype Calling BOTs ?
DEMO
• Documentation at https://docs.botframework.com• https://dev.botframework.com• https://github.com/Microsoft/BotBuilder• https://github.com/Microsoft/BotBuilder/tree/master/
CSharp/Samples• Bot related issues : [email protected]• Discuss at https://gitter.im/Microsoft/BotBuilder
References:
Time for
Q&A
Thank you !
/TechBhubaneswar
/TechBhubaneswar
www.techbhubaneswar.com #TechBhubaneswar2016
/abhi2434 /abhi2434 /in/abhi2434
Abhishek Sur
TechBhubaneshwar