When you visit a website these days, you can’t miss that small chat box that pops up in the bottom right-hand corner of your browser and politely asks you if you need any assistance in either navigating the website or if it could help you with any specific information about the company’s products or services. These chat boxes are commonly known as chatbots and businesses have started using chatbots in a variety of use cases to drive efficiency and reduce repetitive manual tasks.
What is conversational AI?
Chatbots have been gaining in popularity, mainly in B2C scenarios, and if you are considering a digital transformation initiative, our opinion is that chatbots can add significant value if they are carefully planned and deployed. In this article, I will talk about the technical aspects of building such a chatbot and how you can try building one yourself using the SAP Conversational AI platform.
Chatbot – Value in the Enterprise: Before we get into technical discussions, let us take a step back and understand the value of such conversational AI in the enterprise landscape, with a focus on two crucial stakeholders – customers and employees.
Take for example the function of customer service. Companies across the board nowadays rely on providing excellent customer service because it translates to a higher net promoter score and presents opportunities to upsell. Scaling customer service without compromising on service levels can be a challenge because with increasing customers, organizations need to grow their service organization. Doing this would directly impact profitability because any kind of growth usually involves incurring higher cost. This is where Conversational AI comes in.
Chatbots developed using Conversational AI can be trained rapidly to deal with the vast majority of common customer requests and the best part is that they get better at identifying customer sentiments and pain points with time.
Another key stakeholder is the employee satisfaction and employee productivity – both of which are very crucial for employee retention and organizational productivity. A typical enterprise application has relatively complex user interface and navigation patterns, both of which can be detrimental to employee’s productivity and their motivation and leads to frustration. A popular approach these days is to adopt chatbots, which can serve a variety of use cases such as navigating complex menu structures and performing tasks such as workflow automation in a much more intuitive manner.
But how does one go about building such a chatbot and what does it usually entail? In the next section, I will try to demystify the steps involved in creating, training, and maintaining chatbots – something that you could use to build yours too.
Steps to Consider:
The first step in building a chatbot is to train it to recognize and react to conversational messages. In order to do this, we need to understand the key concepts of “intent”, “expression”, and “entity” and how these three work in conjunction to get a chatbot going.
An “intent” represents an idea that your bot is able to understand and it is a set of expressions that mean the same thing, but they are constructed in a different manner.
“Intent” leads us to the next concept, which is an “expression”. This, fundamentally, is a sentence that your bot can understand. In other words, it is something that a user might tell the bot. Examples of expressions are, “I want to create a Purchase Order”, or, “Can you please reset my system password?”. SAP CAI recommends a minimum of 30 expressions be created for an intent, however there is no upper limit to the number of expressions one can maintain.
Then, there is the concept of “entity”, which is a keyword that is extracted from the expression and represented by starting with the # key. The SAP CAI provides default entities such as date, time, and location, which are called “Gold Entities”. These gold entities cannot be changed but you can create your own custom entities. In the expression, “I am from London”, the word “London” would fall under the #Location entity.
The second step in building a chatbot is to develop the bot’s skills. How does one go about doing that? It is important to understand here that a skill is a block of conversation that has a clear purpose and is executed based on the user’s intention. A skill itself has three different components that are needed in order for it to be executed. These are called “Trigger”, “Requirements”, and “Action”. Now, let us take a look at what these are.
A “Trigger” comprises all the conditions that are necessary to determine whether the skill has to be triggered or activated. “Requirement” is a piece of information that the chatbot needs to retrieve from the user before taking an action.
Once the actions are met and if any requirements that were provided are fulfilled, then the chatbot performs an action. It can be something as simple as sending a text message or displaying information or connecting to an external service.
Once you have a “skilled” bot, it is now ready to be deployed to the final destination, which could be a website or any other third-party service.
Once deployed, the bot is ready to interact with users and help them navigate the use case that the bot was designed for.
Finally, a deployed bot needs to be constantly monitored, which is where bot analytics come into the picture.
Such analytics could be anything from how potential users are engaging with the chatbot to its performance relative to a set of pre-decided metrics.
In my next blog, I will discuss how a chatbot can reset your SAP system password. In the meanwhile, however, with the above information, it is now time for you to build and deploy a chatbot. To do that, you can direct your browser to https://cai.tools.sap/ and log in using your S-User ID. Once you are there, you will find high-level flows to create new chatbots that you can explore and experiment with. Don’t forget to give us feedback. Happy building!