FAQ based Bot Application Using QnA Maker - Part One

What is Microsoft Azure Bot Framework?

Microsoft Azure Bot framework enables the organization to build virtual agents known as Bots.

Bots let users interact with intelligent solutions as though they are conversing with another person and assist end users and business users. Bot Connector let you connect your bot seamlessly to social channels such as Twitter, Slack, Facebook and other services. Even connect with web application using Iframe.

What is QnA Maker?

QnAMaker distills information into conversational, easy-to-navigate answers. QnA Maker is based on cognitive service and NLP. QnA Maker is a free, easy-to-use, REST API and web-based service that trains AI to respond to user's questions in a more natural, conversational way.

Question and Answer uses FAQ content in Word, PDF, Excel and Web.


Let us get started with configuration.

  1. Login to the QnA Maker Service via https://qnamaker.ai
  2. Sign and login with your Microsoft account.

Follow below steps to create QnA Maker Services

  1. Click a Create New Service.
  2. Give the service name (i.e. FAQKB).
  3. Give FAQ site URL or upload the excel, doc or pdf with question and answer .

  4. Click on create.

  5. It takes a couple of seconds and redirects to a knowledge based page.

  6. Click Test to verify the QnA Maker

  7. Click Save and retrain -> Publish knowledge base 

  8. Click Publish one more time and you will re-direct to Rest End point page. Here you can find two important things,

    1. QnAMaker Service ID
    2. QnAMaker Service Subscription Key


Integrate the QnAMaker with Bot Application

Navigate to Azure Portal i.e. https://portal.azure.com with your Microsoft Account or Subscription account,
  1. Click New -> AI + Cognitive Service -> Web App Bot

  2. Set all fields

  3. Search your bot with name and click to open. Select Application setting under APP SERVICE SETTING.

  4. Provide the QnAMaker Service ID and QnAMaker Service Subscription Key in QnAKnowledgebaseId and QnASubscriptionKey respectively.

  5. Done with Bot Application. To test -> click Test in Web Chat and start typing the question and get answer as provided by QnAMaker crawler. 
  6. Last Section, Integrate bot application with multiple channels or use Iframe in web applications 

  7. Click on Edit or Get bot embed codes.

  8. Select the embed code (i.e. Iframe and replace your secret keys with Secret Keys) 


I recorded the complete article available at my youtube channel.