This is a lot less complicated than it appears. Given a set of sentences, each belonging to a class, and a new input sentence, we can count the occurrence of each word in each class, account for its commonality and assign each class a score. Factoring for commonality is important: matching the word “it” is considerably less meaningful than a match for the word “cheese”. The class with the highest score is the one most likely to belong to the input sentence. This is a slight oversimplification as words need to be reduced to their stems, but you get the basic idea.
There is a general worry that the bot can’t understand the intent of the customer. The bots are first trained with the actual data. Most companies that already have a chatbot must be having logs of conversations. Developers use that logs to analyze what customers are trying to ask and what does that mean. With a combination of Machine Learning models and tools built, developers match questions that customer asks and answers with the best suitable answer. For example: If a customer is asking “Where is my payment receipt?” and “I have not received a payment receipt”, mean the same thing. Developers strength is in training the models so that the chatbot is able to connect both of those questions to correct intent and as an output produces the correct answer. If there is no extensive data available, different APIs data can be used to train the chatbot.
Since Facebook Messenger, WhatsApp, Kik, Slack, and a growing number of bot-creation platforms came online, developers have been churning out chatbots across industries, with Facebook’s most recent bot count at over 33,000. At a CRM technologies conference in 2011, Gartner predicted that 85 percent of customer engagement would be fielded without human intervention. Though a seeming natural fit for retail and purchasing-related decisions, it doesn’t appear that chatbot technology will play favorites in the coming few years, with uses cases being promoted in finance, human resources, and even legal services.
How far are we from building systems with commonsense? One often-heard answer is: not in the near future, while the realistic answer is: we don’t know. Last year, I spent some time trying to build a system that can do better than an information retrieval baseline in taking fourth-grade science exam (which still has a ways to go to gain a passing score of 65%). I failed hard. Here’s an example to get a sense of the difficulty of these questions.
Chatfuel is a platform that lets you build your own Chatbot for Messenger (and Telegram) for free. The only limit is if you pass more than 100,000 conversations per month, but for most businesses that won't be an issue. No understanding of code is required and it has a simple drag-and-drop interface. Think Wix/Squarespace for bots (side note: I have zero affiliation with Chatfuel).
In 1950, Alan Turing's famous article "Computing Machinery and Intelligence" was published, which proposed what is now called the Turing test as a criterion of intelligence. This criterion depends on the ability of a computer program to impersonate a human in a real-time written conversation with a human judge, sufficiently well that the judge is unable to distinguish reliably—on the basis of the conversational content alone—between the program and a real human. The notoriety of Turing's proposed test stimulated great interest in Joseph Weizenbaum's program ELIZA, published in 1966, which seemed to be able to fool users into believing that they were conversing with a real human. However Weizenbaum himself did not claim that ELIZA was genuinely intelligent, and the introduction to his paper presented it more as a debunking exercise: