Its a chat-bot — For simplicity reasons in this article, it is assumed that the user will type in text and the bot would respond back with an appropriate message in the form of text (So, we will not be concerned with the aspects like ASR, speech recognition, speech to text, text to speech etc., Below architecture can anyways be enhanced with these components, as required).
As IBM elaborates: “The front-end app you develop will interact with an AI application. That AI application — usually a hosted service — is the component that interprets user data, directs the flow of the conversation and gathers the information needed for responses. You can then implement the business logic and any other components needed to enable conversations and deliver results.”
It may be tempting to assume that users will navigate across dialogs, creating a dialog stack, and at some point will navigate back in the direction they came from, unstacking the dialogs one by one in a neat and orderly way. For example, the user will start at root dialog, invoke the new order dialog from there, and then invoke the product search dialog. Then the user will select a product and confirm, exiting the product search dialog, complete the order, exiting the new order dialog, and arrive back at the root dialog.
Shane Mac, CEO of San Francisco-based Assist,warned from challenges businesses face when trying to implement chatbots into their support teams: “Beware though, bots have the illusion of simplicity on the front end but there are many hurdles to overcome to create a great experience. So much work to be done. Analytics, flow optimization, keeping up with ever changing platforms that have no standard.
Say you want to build a bot that tells the current temperature. The dialog for the bot only needs coding to recognize and report the requested location and temperature. To do this, the bot needs to pull data from the API of the local weather service, based on the user’s location, and to send that data back to the user—basically, a few lines of templatable code and you’re done.
Even if it sounds crazy, chatbots might even challenge apps and websites! An app requires space, it has to be downloaded. Websites take time to load and most of them are pretty slow. A bot works instantly. You type something, it replies. Another great thing about them is that they bypass user interface and completely change how customers interact with your business. People will navigate your content by using their natural language.
Being an early adopter of a new channel can provide enormous benefits, but that comes with equally high risks. This is amplified within marketplaces like Amazon. Early adopters within Amazon's marketplace were able to focus on building a solid base of reviews for their products - a primary ranking signal - which meant that they'd create huge barriers to entry for competitors (namely because they were always showing up in the search results before them).
It's fair to say that I'm pretty obsessed with chatbots right now. There are some great applications popping up from brands that genuinely add value to the end consumer, and early signs are showing that consumers are actually responding really well to them. For those of you who aren't quite sure what I'm talking about, here's a quick overview of what a chatbot is:
ETL. The bot relies on information and knowledge extracted from the raw data by an ETL process in the backend. This data might be structured (SQL database), semi-structured (CRM system, FAQs), or unstructured (Word documents, PDFs, web logs). An ETL subsystem extracts the data on a fixed schedule. The content is transformed and enriched, then loaded into an intermediary data store, such as Cosmos DB or Azure Blob Storage.
aLVin is built on the foundation of Nuance’s Nina, the intelligent multichannel virtual assistant that leverages natural language understanding (NLU) and cognitive computing capabilities. aLVin interacts with brokers to better understand “intent” and deliver the right information 24/7; the chatbot was built with extensive knowledge of LV=Broker’s products, which accelerated the process of being able to answer more questions and direct brokers to the right products early on
There are different approaches and tools that you can use to develop a chatbot. Depending on the use case you want to address, some chatbot technologies are more appropriate than others. In order to achieve the desired results, the combination of different AI forms such as natural language processing, machine learning and semantic understanding may be the best option.
If AI struggles with fourth-grade science question answering, should AI be expected to hold an adult-level, open-ended chit-chat about politics, entertainment, and weather? It is thus encouraging to see that Microsoft’s Satya Nadella did not give up on Tay after its debacle, and Amazon’s Jeff Bezos is sponsoring an Alexa social chatbot competition. I love this below quote from Jeff:
In one particularly striking example of how this rather limited bot has made a major impact, U-Report sent a poll to users in Liberia about whether teachers were coercing students into sex in exchange for better grades. Approximately 86% of the 13,000 Liberian children U-Report polled responded that their teachers were engaged in this despicable practice, which resulted in a collaborative project between UNICEF and Liberia’s Minister of Education to put an end to it.
A malicious use of bots is the coordination and operation of an automated attack on networked computers, such as a denial-of-service attack by a botnet. Internet bots can also be used to commit click fraud and more recently have seen usage around MMORPG games as computer game bots. A spambot is an internet bot that attempts to spam large amounts of content on the Internet, usually adding advertising links. More than 94.2% of websites have experienced a bot attack.
Smooch acts as more of a chatbot connector that bridges your business apps, (ex: Slack and ZenDesk) with your everyday messenger apps (ex: Facebook Messenger, WeChat, etc.) It links these two together by sending all of your Messenger chat notifications straight to your business apps, which streamlines your conversations into just one application. In the end, this can result in smoother automated workflows and communications across teams. These same connectors also allow you to create chatbots which will respond to your customer chats…. boom!
Chatbots can reply instantly to any questions. The waiting time is ‘virtually’ 0 (see what I did there?). Even if a real person eventually shows up to fix the issues, the customer gets engaged in the conversation, which can help you build trust. The problem could be better diagnosed, and the chatbot could perform some routine checks with the user. This saves up time for both the customer and the support agent. That’s a lot better than just recklessly waiting for a representative to arrive.
Need a Facebook bot? Well, look no further, as Chatfuel makes it easy for you to create your own Facebook and Telegram Chatbot without any coding experience necessary. It works by letting users link to external sources through plugins. Eventually, the platforms hope to open itself to third-party plugins, so anyone can contribute their own plugins and have others benefit from them.
An Internet bot, also known as a web robot, WWW robot or simply bot, is a software application that runs automated tasks (scripts) over the Internet. Typically, bots perform tasks that are both simple and structurally repetitive, at a much higher rate than would be possible for a human alone. The largest use of bots is in web spidering (web crawler), in which an automated script fetches, analyzes and files information from web servers at many times the speed of a human. More than half of all web traffic is made up of bots.
Endurance is a companion chatbot that uses neurolinguistics programming (better known as NLP) to have friendly conversations with suspected patients with Alzheimer’s and other forms of dementia. It uses AI technology to maintain a lucid conversation while simultaneously testing the human user’s ability to remember information in different ways. The chatbot encourages the user to talk about their favorite activities, memories, music, etc. This doesn’t just test the person’s memory but actively promotes their ability to recall.
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.
Before you even write a single line of code, it's important to write a functional specification so the development team has a clear idea of what the bot is expected to do. The specification should include a reasonably comprehensive list of user inputs and expected bot responses in various knowledge domains. This living document will be an invaluable guide for developing and testing your bot.
Tay, an AI chatbot that learns from previous interaction, caused major controversy due to it being targeted by internet trolls on Twitter. The bot was exploited, and after 16 hours began to send extremely offensive Tweets to users. This suggests that although the bot learnt effectively from experience, adequate protection was not put in place to prevent misuse.