In a context where you need to find your way around your data without having to go through the hundreds of folders or files that make up your storage space, or to gather all this information in a single summary of a few lines, AI can be the solution to your need, and this, in a few minutes.
Azure AI Search and Azure Open AI
To better understand the architecture we want to describe here, you can always review the first part of the article here which explains the function of each Azure AI service.
The advantage that Azure brings is the ability to nest services together so that they complement each other and form a secure, robust and easy-to-use solution.
Therefore, to meet the need that we identified in the introduction to this article, it is possible to install a service capable of searching for information in your stored data: Azure AI Search and to combine it with a user interaction service that is capable of synthesizing the results in constructed sentences: Azure Open AI.
The bricks used:
- Azure AI Search: As explained in the first part, this tool allows you to search for information in various data sources.
- Azure OpenAI: This tool used with GPT4o will allow the user to interact with and retrieve their searched data in the form of structured sentences.
- Azure Blob Storage: This will be the data source used in our scenario. All our files are stored there and will be indexed with Azure AI Search. It is possible to have the following types of data sources with AI Search: Azure Blob Storage, Azure Data Lake Storage, Azure SQL Database, Azure Table Storage, Azure Cosmos DB, OneLake files, SharePoint Online (only available in API).
A word on safety and robustness:
A storage account for your blob must be robust and secure. Setting up Backups via Azure Recovery Services Vault and configuring the redundancy of your data ensures this robustness. As a reminder, this redundancy can be configured in several levels: LRS, ZRS, GRS, GZRS, RA-GRS or RA-GZRS (for more information, see this documentation ). If necessary, other security services can be set up.
In addition, for a secure and private connection to your resources, Private Endpoints can be set up. They are configured in one or more virtual networks of your infrastructure and can be reached from a private DNS resolution.
Configuration
Now let’s move on to setting up your artificial intelligence!
First, here’s what the solution should look like:
Creating your Storage Account:
Create the storage account you will need to install your solution. Remember the best practices for robustness and security mentioned above. This account will have a blob container in which you will place your files to be indexed later with Aure AI Search
In the images viewed above, files used by DEVOTEAM will be indexed as part of our LAB.
Creating Azure AI Search:
Creating the service is easy, it can be done via the AZURE portal, Powershell, az CLI or in Terraform. It includes the basic settings (Service Name, Resource Group, SKU, etc.) and other settings such as networking and tags. This service will be used to index the blob container created earlier. It is through this service that we will be able to search for information in interaction with Open AI.
Note: If your storage account is set up with a Private Endpoint, you should authorize the connection of your Azure AI Service before continuing with the rest of the Lab.
Creating Azure Open AI:
We will now create the Open AI service on which the intelligent chat service will be installed and which will retrieve all the information concerning your data via AI Search.
Fill in the fields and settings corresponding to your organization’s policy (Network, Tags)
Then create the service
Service Configuration
The rest takes place on Azure OpenAI Studio, in which you will test your OpenAI models (GPT3.5, GPT4, GPT4o…etc.) and deploy webapps developed to request the OpenAI service created previously.
So go to OpenAI Studio:
Once you’re there, you’ll need to deploy an AI model for your OpenAI service.
We will deploy GPT 4o here
Create a new deployment.
When the deployment is created, you will be able to test it via the Playground chat!
And it is in this section that you will configure the connection between OpenAI, AI Search and your Blob Storage via the “Add your Data” section.
In the following section “Data management” leave the default settings
In the “Data connection” section, check “API Key”
You can also check “system assigned managed identity”, but required RBACs will need to be configured, see: AI Role assignments
Once validated, you will have configured your artificial intelligence based on information research!
Testing and deployment in a web app
You can perform a test of your solution to see if it will fetch the information from your Blob Storage before performing any WebApp deployment:
When you feel ready, you can now deploy your client web app, which will query your OpenAI.
When the installation is complete, your WebApp is available!
Your Success Starts Here
Partner with Devoteam to leverage award-winning tech expertise, agile execution, and a culture of continuous learning.