Azure AI Search enables intelligent, AI-powered search capabilities inside Copilot Studio, allowing bots to retrieve relevant information from structured and unstructured data sources. By integrating Azure AI Search, Copilot can search, rank, and return precise answers from documents, FAQs, policies, and other knowledge bases.
Sample Use Cases
- Customer Support Automation – Retrieve FAQs, policies, and troubleshooting guides instantly.
- HR & Employee Assistance – Provide employees with HR policies, benefits, and company guidelines.
- Non-Profit & Donor Support – Fetch donor program details and event information.
- Legal & Compliance – Search legal documents and compliance policies in a chatbot.
- Healthcare & Research – Retrieve medical guidelines, clinical research papers, and SOPs.
Step 1: Create an Azure Subscription
Azure is Microsoft’s cloud computing platform, offering a wide range of services, including computing, storage, networking, databases, and AI/ML capabilities. It enables businesses to build, deploy, and manage applications at scale. Azure provides powerful AI and machine learning (ML) services to enhance applications with intelligence.
Two Key Features that we are going to use for this scenario is,
- Azure OpenAI Service – Access GPT-4, DALL·E, and embeddings for natural language processing (NLP), image generation, and AI-powered search.
- Azure AI Search – AI-powered semantic and vector search for intelligent document and data retrieval.

Step 2: Create an Azure Storage Account
- Go to the Azure Portal.
- Search for Storage accounts in the search bar and select it.

- Click + Create to start creating a new storage account.
- Fill in the required details:
- Subscription: Select your Azure subscription.
- Resource Group: Create a new one or use an existing one.
- Storage Account Name: Choose a unique name (e.g., myblobstorage123).
- Region: Choose the nearest region.
- Performance: Standard (for general use) or Premium (for high-performance needs).
- Redundancy: Choose from LRS (Locally Redundant), ZRS, GRS, or RA-GRS based on redundancy needs.

- Click Review + Create, then Create.
- Wait for the deployment to complete and go to your storage account.
Step 3: Create a Blob Container
- In your storage account, go to Containers (left sidebar).
- Click + Container.
- Enter a Name (e.g., mydocuments).
- Choose Public access level (for private, select “Private (no anonymous access)”).
- Click Create.

Step 4: Upload the Knowledge Files to the Blob
- Open the newly created container.
- Click Upload.

- Select a file from your local system.
- Click Upload.

Step 5: Create an Azure OpenAI Resource
What is Azure OpenAI Service?
Azure OpenAI Service provides access to OpenAI’s powerful language models (GPT-4, GPT-3.5, Codex, DALL·E, etc.) via Azure’s cloud infrastructure. It enables businesses to integrate AI-powered capabilities like text generation, summarization, chatbots, and more with enterprise security and compliance.
- Search for “Azure OpenAI” in the search bar and select Azure OpenAI Service.
- Click + Create to start a new deployment.
- Select a Subscription and Resource Group (or create a new one).
- Region: Choose a supported region (e.g., East US, West Europe).
- Name: Enter a unique name for the OpenAI instance.
- Pricing Tier: Choose Standard.

- Next in the Network Tab, you can choose to configure the network security for the Azure AI resource.

- Click Review + Submit, then Create.

- Once the deployment is completed, we proceed to next step using Azure AI Foundry portal.

Step 6: Deploy a Model
- Open your Azure AI Foundry Portal.

- Go to deployments in the left panel.
- Click + Deploy Model. Choose Deploy base model.

- You can choose any of the below:
- GPT models (for chat, content generation) → For eg: gpt-4, gpt-3.5-turbo.
- Embeddings models (for knowledge retrieval) → Select text-embedding-3-small.
- Click Confirm

- Deployment Name: Set a name (e.g., text-embedding-deployment).
- Set the Deployment type as Standard.
- Click Deploy.

Step 7: Create an Azure AI Search Service
What is Azure AI Search?
Azure AI Search (formerly Azure Cognitive Search) is a cloud-based search service that enables AI-powered search over structured and unstructured data. It provides features like full-text search, filtering, ranking, semantic search, and vector search using AI models like OpenAI embeddings.
- Search for “Azure AI Search” and select it.

- Click + Create to create a new search service.
- Subscription: Choose your subscription.
- Resource Group: Select an existing one or create a new one.
- Service Name: Provide a unique name (e.g., mysearchservice).
- Region: Choose a supported region (e.g., East US).
- Pricing Tier: Select Basic (or higher for AI-powered features).

- Provide details on the other tabs to configure Scale, Networking and tags.
- Click Review + Create, then Create.

- Next step is to Import the data.
- In the Search Service, click on “Import and Vectorize data”.

- Select Azure Blob Storage in the Data connection.

- Choose an existing Storage Account which we created in the previous step.
- Select a Container where documents are stored.

- Next step to Vectorize your text, Use the text-embedding-3-small model to create vector embeddings for text in blob storage.

- In the next tab, you can Vectorize the images in case if the content of our files has images associated with it.

- In Advance setting, we need to setup the scheduling of the Index. How frequent we need to refresh the indexes for our files.
- At this point, we are just keeping it once.

- As the last step, we can review the details and click on Create.

- Once we vectorize the data, we will be able to check the indexes as shown below.

Get the Azure AI Search API Key & Endpoint
- Open Azure AI Search in Azure Portal.
- Navigate to Settings and Keys.
- Copy the Primary Admin Key.

- In the Overview page, copy the URL.

Step 8: Integrate Azure AI Search inside Copilot Studio
Azure AI Search can be integrated into Microsoft Copilot Studio to enable AI-powered knowledge retrieval. This is useful for searching documents, FAQs, policies, or any indexed data in Azure AI Search.
- Navigate to the Copilot Studio (https://copilotstudio.microsoft.com/).
- You can create a new Agent or even use the existing Agents.

- Navigate to the Settings -> Generative AI option. Enable the Generative (preview) option which uses the Gen AI to respond with the nest combination of Actions, topics and Knowledge.
- In the Knowledge source, we can disable the Copilot to use its own general Knowledge. This is just to make sure the response come through the knowledge that we specify.

- Click on ‘+ Add Knowledge’ and select the Advanced Tab.
- We can see the “Azure AI Search” option.

- Selecting the option will open the below pop-up.
- Next we need to create a new Connection to Azure AI search.

- Click on Create.
- Choose the Authentication type as Access key.
- We have already extracted the Endpoint URL and Search Admin key from the Azure AI Search service.

- Fill up the required details and click on Create button.

- Next, we will need to choose the vector index.
- We can use the same that we created during the Azure Search.

- Once one, the Knowledge is successfully added inside the Copilot.

Now its time to test our Copilot Agent.
- We don’t need to create any new topics at this point, since copilot has the ability to use the knowledge source based on any unknown intent also.
- Try to give a Prompt based on the data that is present in our Azure Search.

- To verify, I have enabled the Activity Map to find out the knowledge source how the response is received.
- Copilot able to provide the response as expected.

- We can also see the different vector references. Click on the vector to see the source from where the data is retrieved.

Happy Copiloting !!!!