Skip to content

Commit b141c0b

Browse files
Merge pull request Azure-Samples#137 from Azure-Samples/pmishra/rag_soln_updates
content update for Advanced RAG solution
2 parents 8313c2e + 77acce0 commit b141c0b

File tree

60 files changed

+1941
-11248
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

60 files changed

+1941
-11248
lines changed

Solution_Accelerators/Advanced_RAG/ARCHITECTURE.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
- [Orchestrator](#orchestrator)
1111
- [Configuration Service](#configuration-service)
1212
- [Data Service](#data-service)
13-
- [Sharing Intermediate Results](#sharing-intermediate-skill)
13+
- [Sharing Intermediate Results](#sharing-intermediate-results)
1414
- [Architecture Features](#Architecture-features)
1515
- [Secure Runtime and Deployment of Copilot](#secure-runtime-and-deployment-of-copilot)
1616
- [Security](#security)
@@ -57,7 +57,7 @@ Enhances search queries by breaking them into multiple subqueries. For example,
5757

5858
#### Configuration Service
5959

60-
The runtime configuration service enhances the architecture's dynamicity and flexibility. It enables core services and AI skills to decouple and parameterize various components, such as prompts, search data settings, and operational parameters. These services can easily override default configurations with new versions at runtime, allowing for dynamic behavior adjustments during operation. The biggest benefit of the configuration service is its ability to expose different configurations for various microservices during runtime, making processes like evaluations much easier - no need for any more deployments. This could also be used to demo against different search indexes as well. Example: default index is the one that is with this repo. However you can bring your own product catalog and create a new Index and use that via runtime configuration. More details on how to configure the entire demo for your data is [here](./SETUP_RAG.md/#build-your-own-copilot)
60+
The runtime configuration service enhances the architecture's dynamicity and flexibility. It enables core services and AI skills to decouple and parameterize various components, such as prompts, search data settings, and operational parameters. These services can easily override default configurations with new versions at runtime, allowing for dynamic behavior adjustments during operation. The biggest benefit of the configuration service is its ability to expose different configurations for various microservices during runtime, making processes like evaluations much easier - no need for any more deployments. This could also be used to demo against different search indexes as well. Example: default index is the one that is with this repo. However you can bring your own product catalog and create a new Index and use that via runtime configuration. More details on how to configure the entire demo for your data is [here](./SETUP.md/#build-your-own-copilot)
6161

6262
For more details refer config service documentation [Configuration Service](./src/config_hub/README.md).
6363

Solution_Accelerators/Advanced_RAG/FAQ.md

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,4 +96,27 @@ This error occurs when your user or service principal does not have the necessar
9696
This error occurs because your account or service principal does not have the "Search Index Data Reader" role assigned for the selected index. Ask your service administrator to grant you this role in the Azure Portal → Access Control (IAM) section of your Azure AI Search resource.
9797

9898
### How to keep my data updated?
99-
It is best that you have a schedule for re-running ingestion with every new set of data to make sure your index is updated. To do so follow instructions [here.](./src/skills/ingestion/README_FINANCIAL.md/#keep-your-index-updated-by-re-running-ingestion)
99+
It is best that you have a schedule for re-running ingestion with every new set of data to make sure your index is updated. To do so follow instructions [here.](./src/skills/ingestion/README_RETAIL.md/#keep-your-index-updated-by-re-running-ingestion)
100+
101+
### Why is my frontend deployment script taking long?
102+
Frontend Deployment needs to compress Node build files, this can take a while using using built in Windows Zip. To speed up the process install 7Zip (https://www.7-zip.org/).
103+
Navigate to src/frontend_rag (or src/frontend_retail), run:
104+
> npm install
105+
106+
> npm run build
107+
108+
Zip up the contents of src/frontend_rag (or src/frontend_retails) (including the build and source files) using 7zip and run these two commands:
109+
> az webapp config set --resource-group $resourceGroup --name $webAppName --startup-file "npm start"
110+
111+
> az webapp deployment source config-zip --resource-group $resourceGroup --name $webAppName --src $zipFilePath
112+
113+
($zipFilePath is path where you created the zip file, find the $resourceGroup and $webAppName in Azure from your deployment process)
114+
115+
## What access do I need to run the solution locally?
116+
117+
To run the solution locally, ensure you have the following role assignments:
118+
119+
- **Azure Storage**: `Storage Blob Data Contributor`
120+
- **Azure OpenAI**: `Cognitive Services OpenAI User` or `Cognitive Services OpenAI Contributor`
121+
- **Azure Search Service**: `Search Index Data Contributor`, `Search Index Data Reader`
122+
- **Azure Cosmos DB**: `Cosmos DB Built-in Data Contributor`

Solution_Accelerators/Advanced_RAG/README.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
# Advanced RAG Solution Accelerator
22

3-
This is a solution accelerator that supports advanced techniques for ingesting, formatting and intent extraction from structured and non-structured data and querying the data through simple web interface to achieve improved accuracy and performance rates than baseline RAG.
3+
This solution accelerator supports advanced techniques for parsing, indexing and improved querying over non-structured data through a simple web interface to achieve improved accuracy and performance rates than a simple out of the box Retrieval-Augmented Generation (RAG) solution.
44

5-
To read more about the underlying design principles and architecture, and solution capabilities, please refer to the solution documentation here: [Advanced RAG Solution Accelerator Documentation](./docs/advanced_rag_solution_accelerator_documentation.docx).
5+
To read more about the underlying design principles, architecture, and solution capabilities, please refer to the solution documentation here: [Advanced RAG Solution Accelerator Documentation](./docs/Advanced%20RAG%20Solution%20Accelerator%20Documentation.pdf).
66

77

88
#### ❗Important❗
99

10-
* Content in this repository are for demo purposes only and not intended for 'production-ready' workloads. It focuses on showcasing the advanced RAG techniques used to improve baseline accuracy and performance of standard RAG techniques.
11-
* In the context of a financial demo, it's important to understand the distinction between Microsoft's fiscal year and the calendar year. Microsoft's fiscal year runs from July 1st to June 30th of the following year, whereas the calendar year follows the traditional January 1st to December 31st timeline.
12-
* For more information on best practices on evaluation, architecture or validation of the solution design and outputs, please see the 'Additional Resources' section in solution documentation: [Advanced RAG Solution Accelerator Documentation](./docs/advanced_rag_solution_accelerator_documentation.docx).
10+
* Content in this repository are for demo purposes only and not intended for 'production-ready' workloads. It focuses on showcasing the advanced RAG techniques used to improve accuracy and performance of standard RAG techniques.
11+
* In the context of a financial demo, it's important to understand the distinction between Microsoft's fiscal year and the calendar year. Microsoft's fiscal year runs from July 1st to June 30th of the following year, whereas the calendar year follows the traditional January 1st to December 31st timeline.
12+
* For more information on best practices on evaluation, architecture or validation of the solution design and outputs, please see the 'Additional Resources' section in solution documentation: [Advanced RAG Solution Accelerator Documentation](./docs/Advanced%20RAG%20Solution%20Accelerator%20Documentation.pdf).
1313

1414
## Table of Contents
1515
- [Use Case: Copilot for Financial Reports](#use-case-copilot-for-financial-reports)
@@ -22,15 +22,15 @@ To read more about the underlying design principles and architecture, and soluti
2222
- [License](#license)
2323

2424
## Use Case: Copilot for Financial Reports
25-
A custom Retrieval-Augmented Generation (RAG) application can be highly beneficial when dealing with large financial datasets like quarterly reports and multi-year company performance records. Here's why such a custom solution may be necessary:
25+
A custom RAG application can be highly beneficial when dealing with large financial datasets like quarterly reports and multi-year company performance records. Here's why such a custom solution may be necessary:
2626

2727
- Efficient Handling of Large Data Volumes: Financial data accumulated over multiple years can be massive. Standard off-the-shelf solutions might struggle with performance issues when indexing, retrieving, and processing such extensive datasets. A custom RAG application can be optimized to handle large volumes efficiently, ensuring quick response times.
2828

29-
- Domain-Specific Knowledge and Contextual Understanding*: Financial data is rich with industry-specific terminology, acronyms, and complex concepts. A custom RAG model can be trained on domain-specific corpora to better understand and generate accurate responses related to financial statements, performance metrics, and regulatory filings.
29+
- Domain-Specific Knowledge and Contextual Understanding*: Financial data is rich with industry-specific terminology, acronyms, and complex concepts. A custom RAG solution could be optimized on domain-specific corpora to better understand and generate accurate responses related to financial statements, performance metrics, and regulatory filings.
3030

31-
- Enhanced Query Capabilities*: Financial professionals may need to ask complex queries that involve conditional logic, comparisons over time, or aggregations across different data dimensions. A custom solution can support advanced querying capabilities, natural language understanding tailored to financial contexts, and more accurate interpretation of user intent.
31+
- Enhanced Query Capabilities: Financial professionals may need to ask complex queries that involve conditional logic, comparisons over time, or aggregations across different data dimensions. A custom solution can support advanced querying capabilities, natural language understanding tailored to financial contexts, and more accurate interpretation of user intent.
3232

33-
To showcase the solution’s capabilities, a pre-recorded voiceover demonstrates its functionality, ranging from simple queries to complex multimodal interactions. [Insert demo link here.]
33+
To showcase the solution’s capabilities, a pre-recorded voiceover demonstrates its functionality, ranging from simple queries to complex multimodal interactions. Watch the [Demo Video](docs/media/Advanced_RAG_Techniques_Demo.mp4) and follow along with the [Demo Script](docs/demo_script/Analyzing%20Microsoft%20Financial%20Performance%20Demo%20Script.docx).
3434

3535
## Features
3636
The repository includes a complete end-to-end solution, comprising:
@@ -51,13 +51,13 @@ The solution includes the following key components:
5151

5252
4. **Testing and Evaluation**: This includes the ability to simulate conversations with the copilot, run certain end-to-end tests on demand, and an evaluation tool to help perform end-to-end evaluation of the copilot.
5353

54-
Detailed architecture for the eCommerce Copilot can be found [here](ARCHITECTURE_RAG.md)
54+
For more information about these components, please refer to the solution guide [documentation](./docs/Advanced%20RAG%20Solution%20Accelerator%20Documentation.pdf).
5555

5656
![Copilot Solution Architecture](./docs/media/copilot_solution_architecture.png)
5757

5858

59-
## Getting Started
60-
To set up and start using this project, follow our [Getting Started Guide](SETUP_RAG.md). It provides step-by-step instructions for both Azure resources and local environments.
59+
## Getting Started
60+
To set up and start using this project, follow our [Getting Started Guide](SETUP.md). It provides step-by-step instructions for both Azure resources and local environments.
6161

6262

6363
## Code of Conduct

0 commit comments

Comments
 (0)