2017 was the year that AI and chatbots took off in business, not just in developed nations, but across the whole world. Sage have reported that this global trend is boosting international collaboration between startups across all continents, such as the European Commission-backed Startup Europe Comes to Africa (SEC2A) which was held in November 2017.
This means our questions must fit with the programming they have been given. Using our weather bot as an example once more, the question ‘Will it rain tomorrow’ could be answered easily. However if the programming is not there, the question ‘Will I need a brolly tomorrow’ may cause the chatbot to respond with a ‘I am sorry, I didn’t understand the question’ type response.
We need to know the specific intents in the request (we will call them as entities), for eg — the answers to the questions like when?, where?, how many? etc., that correspond to extracting the information from the user request about datetime, location, number respectively. Here datetime, location, number are the entities. Quoting the above weather example, the entities can be ‘datetime’ (user provided information) and location(note — location need not be an explicit input provided by the user and will be determined from the user location as default, if nothing is specified).
WeChat was created by Chinese holding company Tencent three years ago. The product was created by a special projects team within Tencent (who also owns the dominant desktop messaging software in China, QQ) under the mandate of creating a completely new mobile-first messaging experience for the Chinese market. In three short years, WeChat has exploded in popularity and has become the dominant mobile messaging platform in China, with approximately 700M monthly active users (MAUs).
With natural language processing (NLP), a bot can understand what a human is asking. The computer translates the natural language of a question into its own artificial language. It breaks down human inputs into coded units and uses algorithms to determine what is most likely being asked of it. From there, it determines the answer. Then, with natural language generation (NLG), it creates a response. NLG software allows the bot to construct and provide a response in the natural language format.
Once your bot is running in production, you will need a DevOps team to keep it that way. Continually monitor the system to ensure the bot operates at peak performance. Use the logs sent to Application Insights or Cosmos DB to create monitoring dashboards, either using Application Insights itself, Power BI, or a custom web app dashboard. Send alerts to the DevOps team if critical errors occur or performance falls below an acceptable threshold.
Chatbots can have varying levels of complexity and can be stateless or stateful. A stateless chatbot approaches each conversation as if it was interacting with a new user. In contrast, a stateful chatbot is able to review past interactions and frame new responses in context. Adding a chatbot to a company's service or sales department requires low or no coding; today, a number of chatbot service providers that allow developers to build conversational user interfaces for third-party business applications.
The term "ChatterBot" was originally coined by Michael Mauldin (creator of the first Verbot, Julia) in 1994 to describe these conversational programs. Today, most chatbots are accessed via virtual assistants such as Google Assistant and Amazon Alexa, via messaging apps such as Facebook Messenger or WeChat, or via individual organizations' apps and websites. Chatbots can be classified into usage categories such as conversational commerce (e-commerce via chat), analytics, communication, customer support, design, developer tools, education, entertainment, finance, food, games, health, HR, marketing, news, personal, productivity, shopping, social, sports, travel and utilities.