At a high level, a conversational bot can be divided into the bot functionality (the "brain") and a set of surrounding requirements (the "body"). The brain includes the domain-aware components, including the bot logic and ML capabilities. Other components are domain agnostic and address non-functional requirements such as CI/CD, quality assurance, and security.
The progressive advance of technology has seen an increase in businesses moving from traditional to digital platforms to transact with consumers. Convenience through technology is being carried out by businesses by implementing Artificial Intelligence (AI) techniques on their digital platforms. One AI technique that is growing in its application and use is chatbots. Some examples of chatbot technology are virtual assistants like Amazon's Alexa and Google Assistant, and messaging apps, such as WeChat and Facebook messenger.
The chatbot uses keywords that users type in the chat line and guesses what they may be looking for. For example, if you own a restaurant that has vegan options on the menu, you might program the word “vegan” into the bot. Then when users type in that word, the return message will include vegan options from the menu or point out the menu section that features these dishes.
"From Russia With Love" (PDF). Retrieved 2007-12-09. Psychologist and Scientific American: Mind contributing editor Robert Epstein reports how he was initially fooled by a chatterbot posing as an attractive girl in a personal ad he answered on a dating website. In the ad, the girl portrayed herself as being in Southern California and then soon revealed, in poor English, that she was actually in Russia. He became suspicious after a couple of months of email exchanges, sent her an email test of gibberish, and she still replied in general terms. The dating website is not named. Scientific American: Mind, October–November 2007, page 16–17, "From Russia With Love: How I got fooled (and somewhat humiliated) by a computer". Also available online.
“Utility gets something done following a prompt. At a higher level the more entertainment-related chatbots are able to answer all questions and get things done. Siri and Cortana you can have small talk with, as well as getting things done, so they are much harder to build. They took years and years of giant company’s efforts. Different companies that don’t have those resources, like Facebook, will build more constrained utility bots.”
Botsify is another Facebook chatbot platform that helps make it easy to integrate chatbots into the system. Its paid subscription helps you in five easy steps. 1) Log into the botsify.com site, 2) Connect your Facebook account, 3) Setup a webhook, 4) Write up commands for the chatbot you are creating, and 5) Let Botisfy handle the customer service for you. If the paid services are a little too much, they do offer a free service that lets you create as many bots as your lovely imagination can dream up.
3. Now, since ours is a conversational AI bot, we need to keep track of the conversations happened thus far, to predict an appropriate response. For this purpose, we need a dictionary object that can be persisted with information about the current intent, current entities, persisted information that user would have provided to bot’s previous questions, bot’s previous action, results of the API call (if any). This information will constitute our input X, the feature vector. The target y, that the dialogue model is going to be trained upon will be ‘next_action’ (The next_action can simply be a one-hot encoded vector corresponding to each actions that we define in our training data).
Cheyer explains Viv like this. Imagine you need to pick up a bottle of wine that goes well with lasagna on the way to your brother's house. If you wanted to do that yourself, you'd need to determine which wine goes well with lasagna (search #1) then find a wine store that carries it (search #2) that is on the way to your brother's house (search #3). Once you have that figured out, you have to calculate what time you need to leave to stop at the wine store on the way (search #4) and still make it to his house on time.
Many expect Facebook to roll out a bot store of some kind at its annual F8 conference for software developers this week, which means these bots may soon operate inside Messenger, its messaging app. It has already started testing a virtual assistant bot called “M,” but the product is only available for a few people and still primarily powered by humans.
To get started, you can build your bot online using the Azure Bot Service, selecting from the available C# and Node.js templates. As your bot gets more sophisticated, however, you will need to create your bot locally then deploy it to the web. Choose an IDE, such as Visual Studio or Visual Studio Code, and a programming language. SDKs are available for the following languages:
NBC Politics Bot allowed users to engage with the conversational agent via Facebook to identify breaking news topics that would be of interest to the network’s various audience demographics. After beginning the initial interaction, the bot provided users with customized news results (prioritizing video content, a move that undoubtedly made Facebook happy) based on their preferences.
Build a bot directly from one of the top messaging apps themselves. By building a bot in Telegram, you can easily run a bot in the application itself. The company recently open-sourced their chatbot code, making it easy for third-parties to integrate and create bots of their own. Their Telegram API, which they also built, can send customized notifications, news, reminders, or alerts. Integrate the API with other popular apps such as YouTube and Github for a unique customer experience.
Another option is to integrate your own custom AI service. This approach is more complex, but gives you complete flexibility in terms of the machine learning algorithm, training, and model. For example, you could implement your own topic modeling and use algorithm such as LDA to find similar or relevant documents. A good approach is to expose your custom AI solution as a web service endpoint, and call the endpoint from the core bot logic. The web service could be hosted in App Service or in a cluster of VMs. Azure Machine Learning provides a number of services and libraries to assist you in training and deploying your models.
Since 2016 when Facebook allows businesses to deliver automated customer support, e-commerce guidance, content and interactive experiences through chatbots, a large variety of chatbots for Facebook Messenger platform were developed. In 2016, Russia-based Tochka Bank launched the world's first Facebook bot for a range of financial services, in particularly including a possibility of making payments.  In July 2016, Barclays Africa also launched a Facebook chatbot, making it the first bank to do so in Africa.