Skip to content

Commit 7549ab3

Browse files
Merge branch 'main' into dev
2 parents 2526439 + 4107495 commit 7549ab3

File tree

6 files changed

+65
-50
lines changed

6 files changed

+65
-50
lines changed

README.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ This example focuses on a generic use case - chat with your own data, generate a
88

99
<div align="center">
1010

11-
[**SOLUTION OVERVIEW**](#solution-overview) \| [**QUICK DEPLOY**](#quick-deploy) \| [**BUSINESS USE CASE**](#business-use-case) \| [**SUPPORTING DOCUMENTATION**](#supporting-documentation)
11+
[**SOLUTION OVERVIEW**](#solution-overview) \| [**QUICK DEPLOY**](#quick-deploy) \| [**BUSINESS SCENARIO**](#business-scenario) \| [**SUPPORTING DOCUMENTATION**](#supporting-documentation)
1212

1313
</div>
1414
<br/>
@@ -19,7 +19,7 @@ Solution overview
1919

2020
It leverages Azure OpenAI Service and Azure AI Search, to identify relevant documents, summarize unstructured information, and generate document templates.
2121

22-
The sample data is sourced from generic AI-generated promissory notes.The documents are intended for use as sample data only.
22+
The sample data is sourced from generic AI-generated promissory notes. The documents are intended for use as sample data only.
2323

2424
### Solution architecture
2525
|![image](./docs/images/DocGen_Azure_AI_Foundry_Architecture.png)|
@@ -50,7 +50,7 @@ The sample data is sourced from generic AI-generated promissory notes.The docume
5050
Azure OpenAI Service and GPT models to help summarize the search content and answer questions.​
5151

5252
- **Content generation** <br/>
53-
Azure OpenAI Service and GPT models tohelp generate relevant content with Prompt Flow.​
53+
Azure OpenAI Service and GPT models to help generate relevant content with Prompt Flow.​
5454

5555
</details>
5656

@@ -114,7 +114,7 @@ either by deleting the resource group in the Portal or running `azd down`.
114114

115115
<br /><br />
116116
<h2><img src="./docs/images/readme/business-scenario.png" width="48" />
117-
Business use case
117+
Business Scenario
118118
</h2>
119119

120120

@@ -136,7 +136,7 @@ Put your data to work by reducing blank page anxiety, speeding up document draft
136136
Put your data to work to create any kind of document that is supported by a large data library.
137137

138138
- **Share** <br/>
139-
Share with coauthors, contributors and approvers quickly.
139+
Share with co-authors, contributors and approvers quickly.
140140

141141
- **Contextualize information** <br/>
142142
Provide context using natural language. Primary and secondary queries allow for access to supplemental detail – reducing cognitive load, increasing efficiency, and enabling focus on higher value work.
@@ -166,7 +166,7 @@ To ensure continued best practices in your own repository, we recommend that any
166166

167167
You may want to consider additional security measures, such as:
168168

169-
* Enabling Microsoft Defender for Cloud to [secure your Azure resources](https://learn.microsoft.com/azure/security-center/defender-for-cloud).
169+
* Enabling Microsoft Defender for Cloud to [secure your Azure resources](https://learn.microsoft.com/azure/defender-for-cloud).
170170
* Protecting the Azure Container Apps instance with a [firewall](https://learn.microsoft.com/azure/container-apps/waf-app-gateway) and/or [Virtual Network](https://learn.microsoft.com/azure/container-apps/networking?tabs=workload-profiles-env%2Cazure-cli).
171171

172172
<br/>
@@ -191,7 +191,7 @@ Have questions, find a bug, or want to request a feature? [Submit a new issue](h
191191
<br/>
192192

193193
## Responsible AI Transparency FAQ
194-
Please refer to [Transparency FAQ](./TRANSPARENCY_FAQ.md) for responsible AI transparency details of this solution accelerator.
194+
Please refer to [Transparency FAQ](./docs/TRANSPARENCY_FAQ.md) for responsible AI transparency details of this solution accelerator.
195195

196196
<br/>
197197

@@ -215,6 +215,6 @@ You must also comply with all domestic and international export laws and regulat
215215

216216
You acknowledge that the Software and Microsoft Products and Services (1) are not designed, intended or made available as a medical device(s), and (2) are not designed or intended to be a substitute for professional medical advice, diagnosis, treatment, or judgment and should not be used to replace or as a substitute for professional medical advice, diagnosis, treatment, or judgment. Customer is solely responsible for displaying and/or obtaining appropriate consents, warnings, disclaimers, and acknowledgements to end users of Customer’s implementation of the Online Services.
217217

218-
You acknowledge the Software is not subject to SOC 1 and SOC 2 compliance audits. No Microsoft technology, nor any of its component technologies, including the Software, is intended or made available as a substitute for the professional advice, opinion, or judgement of a certified financial services professional. Do not use the Software to replace, substitute, or provide professional financial advice or judgment.
218+
You acknowledge the Software is not subject to SOC 1 and SOC 2 compliance audits. No Microsoft technology, nor any of its component technologies, including the Software, is intended or made available as a substitute for the professional advice, opinion, or judgment of a certified financial services professional. Do not use the Software to replace, substitute, or provide professional financial advice or judgment.
219219

220-
BY ACCESSING OR USING THE SOFTWARE, YOU ACKNOWLEDGE THAT THE SOFTWARE IS NOT DESIGNED OR INTENDED TO SUPPORT ANY USE IN WHICH A SERVICE INTERRUPTION, DEFECT, ERROR, OR OTHER FAILURE OF THE SOFTWARE COULD RESULT IN THE DEATH OR SERIOUS BODILY INJURY OF ANY PERSON OR IN PHYSICAL OR ENVIRONMENTAL DAMAGE (COLLECTIVELY, “HIGH-RISK USE”), AND THAT YOU WILL ENSURE THAT, IN THE EVENT OF ANY INTERRUPTION, DEFECT, ERROR, OR OTHER FAILURE OF THE SOFTWARE, THE SAFETY OF PEOPLE, PROPERTY, AND THE ENVIRONMENT ARE NOT REDUCED BELOW A LEVEL THAT IS REASONABLY, APPROPRIATE, AND LEGAL, WHETHER IN GENERAL OR IN A SPECIFIC INDUSTRY. BY ACCESSING THE SOFTWARE, YOU FURTHER ACKNOWLEDGE THAT YOUR HIGH-RISK USE OF THE SOFTWARE IS AT YOUR OWN RISK.
220+
BY ACCESSING OR USING THE SOFTWARE, YOU ACKNOWLEDGE THAT THE SOFTWARE IS NOT DESIGNED OR INTENDED TO SUPPORT ANY USE IN WHICH A SERVICE INTERRUPTION, DEFECT, ERROR, OR OTHER FAILURE OF THE SOFTWARE COULD RESULT IN THE DEATH OR SERIOUS BODILY INJURY OF ANY PERSON OR IN PHYSICAL OR ENVIRONMENTAL DAMAGE (COLLECTIVELY, “HIGH-RISK USE”), AND THAT YOU WILL ENSURE THAT, IN THE EVENT OF ANY INTERRUPTION, DEFECT, ERROR, OR OTHER FAILURE OF THE SOFTWARE, THE SAFETY OF PEOPLE, PROPERTY, AND THE ENVIRONMENT ARE NOT REDUCED BELOW A LEVEL THAT IS REASONABLY, APPROPRIATE, AND LEGAL, WHETHER IN GENERAL OR IN A SPECIFIC INDUSTRY. BY ACCESSING THE SOFTWARE, YOU FURTHER ACKNOWLEDGE THAT YOUR HIGH-RISK USE OF THE SOFTWARE IS AT YOUR OWN RISK.

docs/AppAuthentication.md

Lines changed: 15 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,53 +1,32 @@
1-
## Add Authentication in Azure App Service configuration
1+
# Set Up Authentication in Azure App Service
2+
3+
This document provides step-by-step instructions to configure Azure App Registrations for a front-end application.
4+
5+
## Prerequisites
6+
7+
- Access to **Microsoft Entra ID**
8+
- Necessary permissions to create and manage **App Registrations**
9+
10+
## Step 1: Add Authentication in Azure App Service configuration
211
1. Click on `Authentication` from left menu.
312

413
![Authentication](images/AppAuthentication.png)
514

6-
2. Click on `+ Add Provider` to see a list of identity providers.
15+
2. Click on `+ Add identity provider` to see a list of identity providers.
716

817
![Authentication Identity](images/AppAuthenticationIdentity.png)
918

10-
3. Click on `+ Add Provider` to see a list of identity providers.
19+
3. Click on `Identity Provider` dropdown to see a list of identity providers.
1120

1221
![Add Provider](images/AppAuthIdentityProvider.png)
1322

14-
4. Select the first option `Microsoft Entra Id` from the drop-down list.
23+
4. Select the first option `Microsoft Entra Id` from the drop-down list and select `client secret expiration` under App registration.
24+
> NOTE: If `Create new app registration` is disabled, then go to [Create new app registration](/docs/create_new_app_registration.md) and come back to this step to complete the app authentication.
1525
1626
![Add Provider](images/AppAuthIdentityProviderAdd.png)
1727

1828
5. Accept the default values and click on `Add` button to go back to the previous page with the identity provider added.
1929

2030
![Add Provider](images/AppAuthIdentityProviderAdded.png)
2131

22-
### Creating a new App Registration
23-
1. Click on `Home` and select `Microsoft Entra ID`.
24-
25-
![Microsoft Entra ID](images/MicrosoftEntraID.png)
26-
27-
2. Click on `App registrations`.
28-
29-
![App registrations](images/Appregistrations.png)
30-
31-
3. Click on `+ New registration`.
32-
33-
![New Registrations](images/NewRegistration.png)
34-
35-
4. Provide the `Name`, select supported account types as `Accounts in this organizational directory only(Contoso only - Single tenant)`, select platform as `Web`, enter/select the `URL` and register.
36-
37-
![Add Details](images/AddDetails.png)
38-
39-
5. After application is created sucessfully, then click on `Add a Redirect URL`.
40-
41-
![Redirect URL](images/AddRedirectURL.png)
42-
43-
6. Click on `+ Add a platform`.
44-
45-
![+ Add platform](images/AddPlatform.png)
46-
47-
7. Click on `Web`.
48-
49-
![Web](images/Web.png)
50-
51-
8. Enter the `web app URL` (Provide the app service name in place of XXXX) and Save. Then go back to [Step 4] and follow from _Point 4_ choose `Pick an existing app registration in this directory` from the Add an Identity Provider page and provide the newly registered App Name.
52-
53-
![Add Details](images/WebAppURL.png)
32+
6. You have successfully added app authentication, and now required to log in to access the application.

docs/AzureSemanticSearchRegion.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@
22

33
Steps to Check Semantic Search Availability
44
1. Open the [Semantic Search Availability](https://learn.microsoft.com/en-us/azure/search/search-region-support) page.
5-
2. Scroll down to the **"Availability by Region"** section.
6-
3. Use the table to find supported regions for **Azure AI Search** and its **Semantic Search** feature.
7-
4. If your target region is not listed, choose a supported region for deployment.
5+
2. Scroll down to the **"Azure Public regions"** section.
6+
3. Use the table to find supported regions for **Azure AI Search** and its **Semantic ranker** feature.
7+
4. If your target region is not listed, choose a supported region for deployment.

docs/DeploymentGuide.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,7 @@ Once you've opened the project in [Codespaces](#github-codespaces), [Dev Contain
166166
```
167167
If you don't have azd env then you need to pass parameters along with the command. Then the command will look like the following:
168168
```shell
169-
bash ./infra/scripts/process_sample_data.sh <Storage-Account-name> <Storgae-Account-container-name> <Key-Vault-name> <CosmosDB-Account-name> <Resource-Group-name>
169+
bash ./infra/scripts/process_sample_data.sh <Storage-Account-name> <Storage-Account-container-name> <Key-Vault-name> <CosmosDB-Account-name> <Resource-Group-name>
170170
```
171171

172172
6. Open the [Azure Portal](https://portal.azure.com/), go to the deployed resource group, find the App Service and get the app URL from `Default domain`.
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
# Creating a new App Registration
2+
3+
1. Click on `Home` and select `Microsoft Entra ID`.
4+
5+
![Microsoft Entra ID](images/MicrosoftEntraID.png)
6+
7+
2. Click on `App registrations`.
8+
9+
![App registrations](images/Appregistrations.png)
10+
11+
3. Click on `+ New registration`.
12+
13+
![New Registrations](images/NewRegistration.png)
14+
15+
4. Provide the `Name`, select supported account types as `Accounts in this organizational directory only(Contoso only - Single tenant)`, select platform as `Web`, enter/select the `URL` and register.
16+
17+
![Add Details](images/AddDetails.png)
18+
19+
5. After application is created successfully, then click on `Add a Redirect URL`.
20+
21+
![Redirect URL](images/AddRedirectURL.png)
22+
23+
6. Click on `+ Add a platform`.
24+
25+
![+ Add platform](images/AddPlatform.png)
26+
27+
7. Click on `Web`.
28+
29+
![Web](images/Web.png)
30+
31+
8. Enter the `web app URL` (Provide the app service name in place of XXXX) and Save. Then go back to [Set Up Authentication in Azure App Service](/docs/AppAuthentication.md) Step 1 page and follow from _Point 4_ choose `Pick an existing app registration in this directory` from the Add an Identity Provider page and provide the newly registered App Name.
32+
33+
E.g. <<https://<< appservicename >>.azurewebsites.net/.auth/login/aad/callback>>
34+
35+
![Add Details](images/WebAppURL.png)

infra/deploy_ai_foundry.bicep

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ var aiSearchName = '${abbrs.ai.aiSearch}${solutionName}'
3232
var workspaceName = '${abbrs.managementGovernance.logAnalyticsWorkspace}${solutionName}'
3333

3434
var useExisting = !empty(existingLogAnalyticsWorkspaceId)
35+
var existingLawSubscription = useExisting ? split(existingLogAnalyticsWorkspaceId, '/')[2] : ''
3536
var existingLawResourceGroup = useExisting ? split(existingLogAnalyticsWorkspaceId, '/')[4] : ''
3637
var existingLawName = useExisting ? split(existingLogAnalyticsWorkspaceId, '/')[8] : ''
3738

@@ -66,7 +67,7 @@ resource keyVault 'Microsoft.KeyVault/vaults@2022-07-01' existing = {
6667

6768
resource existingLogAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2020-08-01' existing = if (useExisting) {
6869
name: existingLawName
69-
scope: resourceGroup(existingLawResourceGroup)
70+
scope: resourceGroup(existingLawSubscription, existingLawResourceGroup)
7071
}
7172

7273
resource logAnalytics 'Microsoft.OperationalInsights/workspaces@2023-09-01' = if (!useExisting) {

0 commit comments

Comments
 (0)