Since instant messaging applications being popular among the users, embedding conversational agents or the Chatbots with such services are essential for better user experience.
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.
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.
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 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.
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.
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.
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.
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.
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.
Treating your infrastructure as code is becoming more and more necessary these days. Writing these instructions becoming challenging too. In Azure we use ARM templates to define the resources and associate them with a deployment pipeline. But ARM templates are quite complicated and they are not everybody’s cup of tea.
Azure MachineLearning Service provides four main compute options each with a specific purpose attached to it. In this post we will go through each of those and see where we can occupy them in your ML experiments.
In the era of Industry 4.0 where data and predictive analytics players the major role, developing machine learning pipelines have become an essential in intelligent application development.