Kodez | Your trusted consulting partner.
May 29, 2020

Create a FAQ Bot using QnA Maker Service

Conversational agents have become the trending norm in user interaction. Since instant messaging applications being popular among the users, embedding conversational agents or the Chatbots with such services are essential for better user experience.

There are various chatbot development tools and services out there in the market. Natural language processing (NLP) and language understanding (NLU) are the key areas to focus when developing chatbots. With Microsoft Cognitive Services, they offer QnA Maker which is a cloud-based NLP service.

In simpler terms you can build a chatbot to work with set of QnAs just by few clicks in a less-code / no-code environment using QnA maker and expose it for the users through social media apps, speech enabled desktop applications etc.

You can create a QnA bot by following 4 steps using QnA maker and Azure Bot Service.

  1. Create a QnA maker resource in Azure portal.

2. Create a knowledge base in QnA maker portal.

3. Publish knowledge base and test the custom endpoint.

4. Create the bot using Azure Bot service.

Let’s go through the step by step process of creating a FAQ chatbot using QnA maker for answering questions on COVID-19! We are going to use United Nations COVID-19 Response FAQs (https://www.un.org/en/coronavirus/covid-19-faqs) for the bot.

Create a QnA maker resource in Azure portal

Go to your Azure portal and create a QnA Maker service on your tenant. You may need to specify your subscription, region and the pricing tier you going to use for the service. (Else you can create a QnA Maker resource directly from the QnAmaker.ai portal.

Creating QnA maker service through Azure portal

Create a knowledge base in QnA maker portal.

Creating a knowledge base is the next step of the process. There are multiple ways that you can create a knowledge base. Either you can add the questions and answers as a .csv/.tsv/.pdf or a .doc file or you can direct to the URL where the FAQs are. QnA maker will extract the question and answer pairs from it. In this example we used the URL of the FAQs directly for extracting the question answer pairs.

Creating the knowledge base from a URL

Important aspect in chatbot development is personalizing the chatbot. Adding a Chit-Chat which is going to match with the personality of the bot would help to give more of a human touch for the chatbot.

Question and Answer pairs in the knowledge base can be edited and add alternative phrasing if need through the portal easily which makes the bot more natural and accurate.

Knowledge base editor view

Publish knowledge base and test the custom endpoint.

After creating the knowledge base, the model should be trained in order to perform NLU on the user queries it is receiving. The trained and published QnA knowledge base service can be tested as a HTTP request.

KB can be tested as a HTTP request to the custom endpoint

Create the bot using Azure Bot service.

Azure Bot service allows to create a bot with less-code / no-code approach just by allowing the developers to create bots with few clicks. The “Create Bot” option on QnA maker will lead you to Azure portal where you can configure the pricing tier, region, application insights etc. for the bot service.

Creating a web app bot for the COVID-19 FAQ bot

Make sure to check the chatbot through the web chat before adding the channels for the chatbot.

Most of the social messaging apps are supported to add as channels for Microsoft Bot service including slack and Microsoft teams.

Desired channels can be added to the bot through Azure portal

By completing these easy steps, you can add an intelligent FAQ chatbot for your application or for your organizational tasks.

Reach us at Kodez for your Chatbot needs are we are ready to help you out.

Kodez | Cloud. DevOps. AI. Mobility.