In the age of AI, chatbots have gained immense popularity. They have not only simplified customer service but have also opened new avenues in data analytics, marketing, sales, and more. But, did you know that you can enhance the performance of your chatbots manifold by using your own data? In this comprehensive guide, we will explore how you can create smarter bots powered by your own data using Microsoft's Power Virtual Agents and Azure OpenAI.

Unfolding the Power of Power Virtual Agents

Power Virtual Agents is an AI-driven platform by Microsoft that simplifies the process of creating and managing bots. Regardless of your experience in conversational AI, Power Virtual Agents provides a seamless and intuitive platform to create chatbots with expanded natural language understanding capabilities.

How do Power Virtual Agent Bots Work?

Power Virtual Agent bots use a customized natural language understanding model and AI capabilities to comprehend user inputs and respond with the most appropriate bot topic. A bot topic is a sequence of nodes that logically flow from one step to another.

For instance, if you have a bot for your business, you can create a topic that includes information about your store opening hours. Using natural language understanding (NLU), the bot can understand the intent behind queries like "When do you open?" and match the intent to the most appropriate bot topic, i.e., the 'Store Hours' topic. The bot then follows the conversation flow defined in the 'Store Hours' topic, providing the user with the required information.

Boosting Bot Conversations

Power Virtual Agents now incorporate a potent AI-powered capability using advanced NLU models. When you have the 'Boost conversations' feature enabled in your bot, your bot can generate conversationally friendly, plain language responses automatically, even if there is no matching bot topic.

Additionally, Power Virtual Agents' new Copilot feature uses AI, powered by the Azure OpenAI GPT model, to create bot topics based on a simple description of what you want to achieve. This feature allows you to modify and update any topic in your bot by describing the changes you want to make.

Generative Answers: The Game-Changer

Generative answers in Power Virtual Agents allow your bot to find and present information from multiple sources without requiring the creation of topics. This feature can be used as a primary information source in your chatbot, or as a fallback when the bot is unable to address a user's query using the authored topics.

How Generative Answers Work as a Fallback

When a user sends an input to a bot, the bot first looks for topics that match the intent of the user prompt. If a matching intent isn't found in the topics, the bot can use generative answers to attempt answering the query. This behavior is termed as 'Generative Answers for fallback'.

Enhancing Your Bot's Reach with Generative Answers

If you want to extend the reach of your bot's conversations, you can do so by adding more sources of information for your bot. In addition to external resources like Bing Search and Bing Custom Search, you can provide internal resources such as SharePoint, OneDrive for Business, Dataverse, and even custom data from any source.

Azure OpenAI: Adding More Power to Your Bots

Azure OpenAI is another powerful tool that enables you to run supported chat models like ChatGPT and GPT-4 on your data without needing to train or fine-tune models. It allows you to chat on top of, and analyze your data with greater accuracy and speed.

What is Azure OpenAI on Your Data?

Azure OpenAI on your data works with OpenAI's powerful ChatGPT (gpt-35-turbo) and GPT-4 language models, enabling them to provide responses based on your data. By using Azure OpenAI on your data, your chatbot can provide responses that are not only based on its pre-trained knowledge but also on the latest information available in the designated data source.

Data Source Options for Azure OpenAI

Azure OpenAI on your data uses an Azure Cognitive Services index to determine what data to retrieve based on user inputs and provided conversation history. You can either create your index from a blob storage or local files using Azure OpenAI Studio or use an existing Azure Cognitive Search index as a data source.

Data Formats and File Types for Azure OpenAI

Azure OpenAI on your data supports a wide range of file types including .txt, .md, .html, Microsoft Word files, Microsoft PowerPoint files, and PDF. However, it's important to ensure that your document structure does not affect the quality of responses from the model.

While configuring Azure OpenAI on your data, it's recommended to set a limit on the number of tokens per model response. You may also want to set the model to respond using your data only, and enable semantic search if your documents and use case are in English.

Testing Your Bot's Enhanced Conversational Reach

Once you've set up your bot with boosted conversations and generative answers, it's time to test your bot's enhanced conversational reach. You can ask the bot questions that take advantage of these capabilities and observe how well it responds.

Adjustments and Fine-tuning

Remember, the responses generated by Azure OpenAI on your data aren't always perfect and may contain errors. Therefore, it's crucial to test your bots thoroughly before publishing them. If you're not satisfied with the model response for a specific question, try making the question more specific or more generic to see how the model responds.


Leveraging your own data to create smarter chatbots is a game-changer in the realm of conversational AI. By using your own data with platforms like Power Virtual Agents and Azure OpenAI, you can not only enhance the performance of your chatbots but also unlock valuable insights to help you make better business decisions. So, are you ready to take your chatbots to the next level with your own data?