Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Smart Bots for Enterprise

Sivamuthu Kumar
April 13, 2019

Smart Bots for Enterprise

Smart Bots for Enterprise @ Philly.NET Code Camp

Sivamuthu Kumar

April 13, 2019


  1. Smart Bots for Enterprise Philly .NET Code Camp

  2. Bot Framework Overview Designing Conversation Enterprise Bot Deploy & Measure

  3. HELLO! I’m Siva Working as Architect in CEI #Cloud #Mobile

    #IoT Solutions ksivamuthu ksivamuthu
  4. What is Chatbot? ❏ A chat robot , a computer

    program that simulates human conversation, or chat, through artificial intelligence. ❏ It can be used to get things done or for fun. @ksivamuthu
  5. “Bots learn the same way people learn - through progression.”

    @ksivamuthu How does it work?
  6. User chats with bot Contextual Analysis by AI Real-time response,

    Personalized Interactions @ksivamuthu How does it work?
  7. @ksivamuthu Chatbot Architecture NLP - Natural Language Processing NLU -

    Natural Language Understanding NLG - Natural Language Generation
  8. Microsoft Bot Framework

  9. - Tools and services to build great bots that are

    conversing with the user - Open source SDK in Javascript (NodeJS), C# - Chat emulator Bot Builder - Connects your bots to text / sms, Skype, Slack, Facebook Messenger, O365, Direct Line in app etc. - Fast scalable message routing Developer Portal - Parse natural language using LUIS. - Cognitive Services enable your bot to see, hear, and interpret in more human ways Cognitive Services @ksivamuthu Microsoft Bot Framework
  10. @ksivamuthu

  11. Bot Framework Overview Designing Conversation

  12. Designing Conversation

  13. @ksivamuthu

  14. @ksivamuthu

  15. Demo – Hello World

  16. Dialogs @ksivamuthu

  17. @ksivamuthu

  18. Demo – Waterfall Dialog

  19. Prompts @ksivamuthu Prompt type Description Prompts.text Asks the user to

    enter a string of text. Prompts.confirm Asks the user to confirm an action. Prompts.number Asks the user to enter a number. Prompts.time Asks the user for a time or date/time. Prompts.choice Asks the user to choose from a list of options. Prompts.attachment Asks the user to upload a picture or video.
  20. Cards @ksivamuthu

  21. Cards @ksivamuthu

  22. State Data @ksivamuthu The Bot Builder Framework enables your bot

    to store and retrieve state data that is associated with a user, a conversation, or a specific user within the context of a specific conversation. Development / Testing: - In Memory Data Storage Production: - Manage State data with Cosmos DB - Manage State data with Table Storage
  23. State Data @ksivamuthu Storage Containers Scoped to Description userData User

    Data that is saved for user on the specified channel privateConversation Data Conversation Data that is saved for user within the context of particular conversation on the specified channel conversationData Conversation Data that is saved in the context of particular conversation on the specified channel dialogData Dialog Data that is saved for the current dialog only. The property is cleared when the dialog is removed from stack.
  24. Bot Framework Emulator

  25. Bot Framework Emulator ❏ Debug bots running on localhost ❏

    Remote debugging (ngrok) ❏ Message Inspector ❏ Bot Transcripts ❏ Inspect Language Services ❏ Speech Recognition ❏ Manage Bot Resources @ksivamuthu
  26. Bot Framework Overview Designing Conversation Enterprise Bot

  27. Enterprise Bot Template

  28. Enterprise Bot Template • Introduction message with an Adaptive Card

    on conversation start • Typing Middleware • Telemetry Middleware • Automated typing indicators • .bot file driven configuration • Basic conversational intents (Greeting, Goodbye, Help, Cancel, etc.) in English, French, Italian, German, Spanish and Chinese.
  29. Enterprise Bot Template • Content Moderator in a middleware component.

    • Transcripts of all conversation stored in Azure Storage • An integrated Dispatch model to identify whether a given utterance should be processed by LUIS + Code or passed to QnA Maker. • Integration with QnA Maker to answer general questions • Integration with Application Insights to collect telemetry for all conversations. • An example PowerBI dashboard to get you started with insights into your conversational experiences.
  30. Language Understanding (LUIS)

  31. LUIS - Overview • Language Understanding Intelligent Service (LUIS) is

    NLP as a service • NLP is a mechanism to extract the intention (Intent) and relevant information (Entity) from user input. • Using machine learning, LUIS allows developers to build applications which receives user input (Utterances) in a natural language and parses to find what action (Intent) needs to be performed with supplied parameters (Entity). @ksivamuthu
  32. @ksivamuthu

  33. Anatomy of an intent Are there any Chinese restaurants within

    3 miles from my house that is open now ? Entities Values Cuisine Chinese Distance 3 miles Reference My house Condition Open now @ksivamuthu Intent - Restaurants.Search
  34. QnA Maker

  35. Smart Conference Bot Demo

  36. Hello World Designing Conversation Enterprise Bot Deploy & Measure

  37. Deploy your bot to Azure

  38. Application Insights

  39. Application Insights ❏ Add the instrumentation Key to the Bot

    ❏ Instrument the code using App Insights ❏ Track dialog flows and custom events ❏ Application Insights - Dashboard @ksivamuthu
  40. Hello World Conversation Flow Add Intelligence Deploy

  41. Links ★ Microsoft Bot Framework Docs https://docs.microsoft.com/en-us/azure/bot-service ★ Bot Builder

    SDK https://github.com/Microsoft/BotBuilder ★ Smart Bot for Enterprise- Slides http://siva.shortcm.li/oaVaJo ★ IoT Sensor Bot https://github.com/ksivamuthu/iot- sensor-bot @ksivamuthu
  42. Thank you !!! ksivamuthu ksivamuthu