For a leading Indian multi-national firm with a worldwide presence in different business areas, Q3 has developed a ChatBot for their shared services centre to help their employees with facilities and services internal to the organization.
The client is one of the largest Indian multinational firms, having business interests in engineering, construction, manufacturing goods, information technology, and financial services, and has offices worldwide.
Seeking specific information in an agile working environment is not as easy task. A virtual assistant such as ChatBot answers to the queries in a user-friendly manner. The Chatbot caters to the company needs and learns to interact depending on the situation faced.
The client required a common application to serve and assist all employees across all divisions, with internal organizational information and facilities, such as those based on an intranet and the employee-portal. The application needed to be easy-to-use, fast and interactive, encompassing features from different areas and departments, segregated accordingly.
According to the utility, a ChatBot seemed to accommodate all the requirements. Not only would it be easily accessible to all employees through a variety of channels, but it would account for information and features from all areas and departments. The ChatBot would consist of useful features such as FAQ and/or document derived information, Document/Form search, intranet-based ticketing-system, leave application, etc. along with a human-agent intervention for more complex issues and requests.
To accommodate the vast organizational requirements of the client, Q3 suggested a ChatBot based on the unique Nested-Bots Architecture. The concept of this architecture mimics a hierarchical chain-of-command, where a parent ChatBot – Concierge ChatBot – would be handling all incoming questions and request of the user, and based on the intent of the request, would redirect it to the respective child ChatBot of the respective department. The respective child ChatBot would process the request, ask any prompts for relevant information parameters, and execute the fulfilment of the request. For complex issues and queries, which other ChatBots may not be able to handle, a human intervention handoff was implemented, for a human agent to still be able to answer the request at a higher level. Therefore, all areas and categories of requests would be conveniently catered to.
The entire ChatBot application, along with the nested-bots architecture, was developed using the Microsoft Azure Bot Service, using LUIS (Microsoft Cognitive Services) as the Natural Language Processing engine. Multiple ChatBots were created according to the department (Human Resources, Project Management, etc.), catering to department-relevant features, which were then individually called from the Concierge ChatBot, which redirected the conversation based on identified intent.
Needless to say, Natural Language Processing plays a crucial role in this architecture and needs to be in the best shape with maximum training data, understanding all sentence structures and query phrases to recognize intents and extract entities. For ongoing maintenance and upgradation of the existing Natural Language Processing engine, a Robotic-Process-Automation framework was developed to ease and smoothen the process of continuous training of the NLP engine. The framework executed a cyclic process of extracting conversation logs from LUIS, processing and identifying misunderstood queries, feeding them for human intervention for accurate intent and entity mapping, feeding the new utterance to LUIS, and training and publishing the updated model. This framework was provided as a tool to the client, to supervise the training process.
The ChatBot itself was made accessible to all employees through a large variety of channels. Alongside customized web and mobile applications hosting the ChatBot, it was also made accessible through prominent messaging services used throughout the organization such as Skype, Skype for Business, Intranet portal etc. The ChatBot, hence, catered to users in the hundred thousands, by number, and was hosted on a suitably higher tier App Service, to accommodate and manage the resulting traffic.