Hello @Jalali, Hadi ,
Welcome to the Microsoft Q&A and thank you for posting your questions here.
Regarding your questions, I understand that you have ingested multiple sets of data into separate folders within a blob storage container in Azure, with each folder corresponding to a different purpose for the same web application. You want to implement a multipurpose AI-powered web application that utilizes Azure AI search to provide answers to user queries based on the purpose they specify. Specifically, you need to set up multiple indexes, indexers, and data sources in Azure AI search, and customize the chatbot to dynamically choose the appropriate index/indexer/data source based on the user's specified purpose. Additionally, you want to determine whether any changes to the source code of the application hosted on GitHub are necessary to achieve this functionality.
To solve this problem is like embarking on a project, this page will not be enough to explain or teach all you will need to do. But I will advise to utilize Additional Resources by the right side of this page for training and more documentations. Also, follow these few steps:
Set up Azure AI Search Indexes, Indexers, and Data Sources:
- Log in to the Azure Portal (https://portal.azure.com).
- Navigate to the Azure Cognitive Search service.
- Create a separate index for each purpose of your web application.
- Configure indexers for each index to pull data from the corresponding folder in your blob storage container.
- Define data sources pointing to the appropriate blob storage folders for each purpose.
Customize the Chatbot:
- Determine the user's purpose by incorporating a question in the chatbot interface asking them to specify their intent.
- Based on the user's response, dynamically select the corresponding Azure AI search index/indexer/data source.
- Integrate Azure AI search queries within the chatbot's backend to fetch results from the selected index.
- Ensure the chatbot interface is user-friendly and intuitive for specifying the purpose.
Modify Application Code (if necessary):
- Assess whether the current application code hosted on GitHub requires modifications to support dynamic selection of indexes based on user input.
- If the existing codebase does not support this functionality, make necessary modifications to integrate with Azure AI search and dynamically switch between indexes.
- Ensure the modifications maintain code integrity and adhere to best practices.
The next after you've done the above is to test and deploy and the above are high level steps that can guide you.
I hope this is helpful! Do not hesitate to let me know if you have any other questions.
Please remember to "Accept Answer" if answer helped, so that others in the community facing similar issues can easily find the solution.
Best Regards,
Sina Salam