Chatbots currently operate through a number of channels, including web, within apps, and on messaging platforms. They also work across the spectrum from digital commerce to banking using bots for research, lead generation, and brand awareness. An increasing amount of businesses are experimenting with chatbots for e-commerce, customer service, and content delivery.
Niki is a personal assistant that has been developed in India to perform an impressively wide variety of tasks, including booking taxis, buses, hotels, movies and events, paying utilities and recharging your phone, and even organizing laundry pickup and delivery. The application has proven to be a huge success across India and won the Deep Tech prize at the 2017 AWS Mobility Awards.
Through Amazon’s developer platform for the Echo (called Alexa Skills), developers can develop “skills” for Alexa which enable her to carry out new types of tasks. Examples of skills include playing music from your Spotify library, adding events to your Google Calendar, or querying your credit card balance with Capital One — you can even ask Alexa to “open Dominoes and place my Easy Order” and have pizza delivered without even picking up your smartphone. Now that’s conversational commerce in action.
There is no one right answer to this question, as the best solution will depend upon the specifics of your scenario and how the user would reasonably expect the bot to respond. However, as your conversation complexity increases dialogs become harder to manage. For complex branchings situations, it may be easier to create your own flow of control logic to keep track of your user's conversation.
Respect the conversational UI. The full interaction should take place natively within the app. The goal is to recognize the user's intent and provide the right content with minimum user input. Every question asked should bring the user closer to the answer they want. If you need so much information that you're playing a game of 20 Questions, then switch to a form and deliver the content another way.
This is where most applications of NLP struggle, and not just chatbots. Any system or application that relies upon a machine’s ability to parse human speech is likely to struggle with the complexities inherent in elements of speech such as metaphors and similes. Despite these considerable limitations, chatbots are becoming increasingly sophisticated, responsive, and more “natural.”
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.
Getting the remaining values (information that user would have provided to bot’s previous questions, bot’s previous action, results of the API call etc.,) is little bit tricky and here is where the dialogue manager component takes over. These feature values will need to be extracted from the training data that the user will define in the form of sample conversations between the user and the bot. These sample conversations should be prepared in such a fashion that they capture most of the possible conversational flows while pretending to be both an user and a bot.
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.
“They’re doing things we’re simply not doing in the U.S. Imagine if you were going to start a city from scratch. Rather than having to deal with all the infrastructure created 200 years ago, you could hit the ground running on the latest technology. That’s what China’s doing — they’re accessing markets for the first time through mobile apps and payments.” — Brian Buchwald, CEO of consumer intelligence firm Bomoda
This kind of thinking has lead me to develop a bot where the focus is as a medium for content rather than a subsitute for intelligence. So users create content much as conventional author, (but with text stored in spreadsheets rather than anywhere else). Very little is expected from the bot in terms of human behavious such as “learning”, “empathy”, “memory” and character”. Does it work?
A chatbot (also known as a talkbots, chatterbot, Bot, IM bot, interactive agent, or Artificial Conversational Entity) is a computer program or an artificial intelligence which conducts a conversation via auditory or textual methods. Such programs are often designed to convincingly simulate how a human would behave as a conversational partner, thereby passing the Turing test. Chatbots are typically used in dialog systems for various practical purposes including customer service or information acquisition. Some chatterbots use sophisticated natural language processing systems, but many simpler systems scan for keywords within the input, then pull a reply with the most matching keywords, or the most similar wording pattern, from a database.
“HubSpot's GrowthBot is an all-in-one chatbot which helps marketers and sales people be more productive by providing access to relevant data and services using a conversational interface. With GrowthBot, marketers can get help creating content, researching competitors, and monitoring their analytics. Through Amazon Lex, we're adding sophisticated natural language processing capabilities that helps GrowthBot provide a more intuitive UI for our users. Amazon Lex lets us take advantage of advanced AI and machine learning without having to code the algorithms ourselves.”
In business-to-business environments, chatbots are commonly scripted and used to respond to frequently asked questions or perform simple, repetitive calls to action. In sales, for example, a chatbot may be a quick way for sales reps to get phone numbers. Chatbots can also be used in service departments, assisting service agents in answering repetitive requests. For example, a service rep might provide the chatbot with an order number and ask when the order was shipped. Generally, once a conversation gets too complex for a chatbot, the call or text window will be transferred to a human service agent.
Note — If the plan is to build the sample conversations from the scratch, then one recommended way is to use an approach called interactive learning. We will not go into the details of the interactive learning here, but to put it in simple terms and as the name suggests, it is a user interface application that will prompt the user to input the user request and then the dialogue manager model will come up with its top choices for predicting the best next_action, prompting the user again to confirm on its priority of learned choices. The model uses this feedback to refine its predictions for next time (This is like a reinforcement learning technique wherein the model is rewarded for its correct predictions).
The goal of intent-based bots is to solve user queries on a one to one basis. With each question answered it can adapt to the user behavior. The more data the bots receive, the more intelligent they become. Great examples of intent-based bots are Siri, Google Assistant, and Amazon Alexa. The bot has the ability to extract contextual information such as location, and state information like chat history, to suggest appropriate solutions in a specific situation.
Jabberwacky learns new responses and context based on real-time user interactions, rather than being driven from a static database. Some more recent chatbots also combine real-time learning with evolutionary algorithms that optimise their ability to communicate based on each conversation held. Still, there is currently no general purpose conversational artificial intelligence, and some software developers focus on the practical aspect, information retrieval.