The typical customer care virtual assistant (aka chatbot) can answer simple questions and maybe even perform some actions. But we need chatbots that really help solve customer problems instead of disappointing them with a “Sorry, I don’t know.” When a question falls outside of the scope of the pre-determined question set, usually, the assistant tells the customer that the question isn’t valid or offers to speak to a real person.
Alessandro Rea is the Cloud & Cognitive Solution Architect at IBM. He suggests there’s another option, instead of relying on predefined responses, it’s also possible to retrieve the answer in additional sources of information. For example, if the question is about a specific operation of a device, we could automatically extract the answer the customer needs returning relevant passages of the device manual.
You can watch a complete video of his presentation below, we’re sharing some of the main points here but you’ll want to watch the demos, in particular, to get the full picture.
Understanding questions in enterprise virtual assistants
When we work with a virtual assistant, the first step is to understand the question. Based on NLP and NLU it’s possible to understand the question of the user and enrich the interaction through info from context, an analysis of user tone and machine learning language models.
NLP and NLU: We can use some classifiers leveraging on machine learning to understand the intent of the user and get some intensities. Intents and entities are not the only information that can we get in a conversation, we can also get context-based information
Context-based : Alessandro explains, “When we are able to get other information, for example, user data, or log user or information gained during the conversation and maintain the context for all conversations. With context-based information we can enrich the interaction with the user.”
Guided by Tone: For proper analysis we need information. We can get information from the tone of the user during the conversation and we can select the proper answer related to the tone of the user.
Domain-specific: The most complex case is when we have to get understand the specific concept of a custom domain or of a particular industry. In this case, we need to create a machine learning custom knowledge model for this specific domain to create an effective virtual assistant.
Finding answers
According to Alessandro, after the understanding questions, we have to find the right answer.
FAQ Chatbot
The FAQ chatbot is the most common chatbot where the answers are obtained by a predefined analysis of the reoccurring topics and frequently asked questions.
Natural language generation
“If we want to improve the experience, we can leverage natural language generation techniques to generate as we’re combining different elements, for example, sentences in template form, filling with entities value.”
Performing an action
Alessandro explains, “We can also create a response that performs an action, for example, in a banking virtual assistant, we can create a wire transfer activity or phone recharges. But all these approaches have a common base.”
Hand-off to a human agent
When a question floats outside the predefined scope, usually, these systems are handed off to the human agent.
However, Alessandro asserts that this cannot be the only option as complex questions represent a large enough quantity of the calls that we cannot leave the user without a response.
Enter IBM cloud for enterprise virtual assistants
Another option is leveraging on some of the services on IBM Cloud using Watson assistant, IBM‘s out-of-the-box chat interface and Watson discovery, an enterprise search that delivers specific answers to your queries while also serving up the entire document and supporting links. Using these enables us to can combine conversational experience and cognitive search. Thus, we can manage all the simple questions using classic dialogue-based conversation but manage also the more complex questions because we are able to retrieve the more relevant passages in documentation.
Alessandro provides a quick demo of Watson assistant in action, explaining, “In a banking scenario, we can start, for example, using some logs of previous chats or general utterances, we can use intents recommendation functionalities to have an automatic clustering of these utterances and intents and use these to define the correct intent.”
Watson Assistant Dialogue creation
With intents and entities recognised, we can create all the nodes of our conversation defining all the responses. We can ask for example in banking, information about balance accounting or about payments based on what we have inside our set of intents.
But if we ask for another type of question, for example, a question about foreign accounting, for example, the virtual assistant addresses it as ‘ I don’t know, sorry’, because this question is not inside our domain.
To avoid these we can use also banking documentation and use Watson discovery to analyse these documents structurally. “For example, we can use a title, we can define a title tags and so on. Thus, we can create a machine learning model with these samples. In this way, the system learns the structure of the document. For example, upon presenting a permission table. the system is able to recognise the structure in a similar document.”
Relevancy training for virtual assistants
Next is the content of the document. We can create a machine learning model, annotating documents, and highlighting entities and relations between entities. As Alessandro explains “Thus, we have a machine learning model and we can deploy this model on Watson assistant and Watson discovery. Watson discovery is able to enrich the whole knowledge base and we can perform a number of queries such as gathering information about currencies. Once attained, we can repeat the training based on the relevancy of the results in our query.
Search skill
The last step is to add a search skill to Watson assistant and Watson discovery which requires the creation of a specific node. In this node, we can have a call for Watson discovery and we can add necessary questions that are not inside our domain to Watson discovery as well as more relevant passages from our documents.
“One of the biggest strengths of IBM’s Watson tools, is that that makes it possible to build a full-service virtual assistants so your team can focus on higher-value work.”