Skip to content

Commit 5b55f40

Browse files
authored
Branding push
1 parent 88fcb23 commit 5b55f40

File tree

7 files changed

+23
-23
lines changed

7 files changed

+23
-23
lines changed

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Contributing to the Azure OpenAI and AI Agent Service chat baseline reference implementation
1+
# Contributing to the Azure OpenAI and AI Agent service chat baseline reference implementation
22

33
This project welcomes contributions and suggestions. Most contributions require you to agree to a
44
Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us

README.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
# Azure OpenAI and AI Agent Service chat baseline reference implementation
1+
# Azure OpenAI and AI Agent service chat baseline reference implementation
22

3-
This reference implementation illustrates an approach running a chat application and an AI orchstration layer in a single region. It uses Azure AI Agent service as the orchestrator and Azure OpenAI foundation models. This repository directly supports the [Baseline end-to-end chat reference architecture](https://learn.microsoft.com/azure/architecture/ai-ml/architecture/baseline-openai-e2e-chat) on Microsoft Learn.
3+
This reference implementation illustrates an approach running a chat application and an AI orchestration layer in a single region. It uses Azure AI Agent service as the orchestrator and Azure OpenAI foundation models. This repository directly supports the [Baseline end-to-end chat reference architecture](https://learn.microsoft.com/azure/architecture/ai-ml/architecture/baseline-openai-e2e-chat) on Microsoft Learn.
44

55
Follow this implementation to deploy an agent in [Azure AI Foundry](https://learn.microsoft.com/azure/ai-studio/how-to/prompt-flow) and uses Bing for grounding data. You'll be exposed to common generative AI chat application characteristics such as:
66

@@ -13,15 +13,15 @@ Follow this implementation to deploy an agent in [Azure AI Foundry](https://lear
1313
This implementation builds off the [basic implementation](https://github.com/Azure-Samples/openai-end-to-end-basic), and adds common production requirements such as:
1414

1515
- Network isolation
16-
- Bring-your-own Azure AI Agent service depdendencies (for security and BC/DR control)
16+
- Bring-your-own Azure AI Agent service dependencies (for security and BC/DR control)
1717
- Added availability zone reliability
1818

1919
## Architecture
2020

2121
The implementation covers the following scenarios:
2222

2323
- [Setting up Azure AI Foundry to host agents](#setting-up-azure-ai-foundry-to-host-agents)
24-
- [Deploying an agent into Azure AI Agent Service](#deploying-an-agent-into-azure-ai-agent-service)
24+
- [Deploying an agent into Azure AI Agent service](#deploying-an-agent-into-azure-ai-agent-service)
2525
- [Invoking the agent from .NET code hosted in an Azure Web App](#invoking-the-agent-from-net-code-hosted-in-an-azure-web-app)
2626

2727
### Setting up Azure AI Foundry to host agents
@@ -34,7 +34,7 @@ The authoring architecture diagram illustrates how flow authors [connect to an A
3434

3535
The diagram further illustrates how AI Foundry is configured for [managed virtual network isolation](https://learn.microsoft.com/azure/ai-studio/how-to/configure-managed-network). With this configuration, a managed virtual network is created, along with managed private endpoints enabling connectivity to private resources such as the project's Azure Storage and Azure Container Registry. You can also create user-defined connections like private endpoints to connect to resources like Azure OpenAI service and Azure AI Search.
3636

37-
### Deploying an agent into Azure AI Agent Service
37+
### Deploying an agent into Azure AI Agent service
3838

3939
TODO: Write this
4040

@@ -209,7 +209,7 @@ The AI agent definition would likely be deployed from your application's pipelin
209209
$LOCATION="eastus2"
210210
```
211211

212-
1. Generate some varibles to set context within your jump box.
212+
1. Generate some variables to set context within your jump box.
213213

214214
*The following variables align with the defaults in this deployment. Update them if you customized anything.*
215215

@@ -252,7 +252,7 @@ Here you'll test your orchestration agent by invoking it directly from the Azure
252252

253253
1. Open the Azure portal to your subscription.
254254

255-
You'll need to sign in to the Azure portal, and resolve any Entra ID Conditional Acces policies on your account, if this is the first time you are connecting through the jump box.
255+
You'll need to sign in to the Azure portal, and resolve any Entra ID Conditional Access policies on your account, if this is the first time you are connecting through the jump box.
256256
257257
1. Navigate to the Azure AI Foundry project named **projchat** in your resource group and open the Azure AI Foundry portal by clicking the **Go to Azure AI Foundry portal** button.
258258
@@ -295,7 +295,7 @@ For this deployment guide, you'll continue using your jump box to simulate part
295295
1. Update the app configuration to use the agent you deployed.
296296

297297
```powershell
298-
// TODO -- Fill this out once the code is no longer creating the agent.
298+
# TODO -- Fill this out once the code is no longer creating the agent.
299299
```
300300

301301
1. Restart the web app to launch the site.
@@ -352,11 +352,11 @@ az cognitiveservices account purge -g $RESOURCE_GROUP -l $LOCATION -n aif${BASE_
352352
```
353353
354354
> [!TIP]
355-
> The `vnet-workload` and associated networking resources are sometimes blocked from being deleted with the above instructions. This is because the Azure AI Agent subnet (`snet-agentsEgress`) retains a latent Microsoft-managed deletgated connection (`serviceAssociationLink`) to the deleted AI Agent Service backend. The virtual network and associated resources typically become free to delete about an hour after purging the Azure AI Foundry account.
355+
> The `vnet-workload` and associated networking resources are sometimes blocked from being deleted with the above instructions. This is because the Azure AI Agent subnet (`snet-agentsEgress`) retains a latent Microsoft-managed deletgated connection (`serviceAssociationLink`) to the deleted AI Agent service backend. The virtual network and associated resources typically become free to delete about an hour after purging the Azure AI Foundry account.
356356
>
357357
> The lingering resources do not have a cost associated with them existing in your subscription.
358358
>
359-
> If the resource group didn't fully delete, reexeucte the `az group delete -n $RESOURCE_GROUP -y` command after an hour to complete the cleanup.
359+
> If the resource group didn't fully delete, re-execute the `az group delete -n $RESOURCE_GROUP -y` command after an hour to complete the cleanup.
360360
361361
## Contributions
362362

infra-as-code/bicep/ai-agent-service-dependencies.bicep

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ param privateEndpointSubnetResourceId string
2424

2525
// ---- New resources ----
2626

27-
@description('Deploy Azure Storage account for the Azure AI Agent Service (dependency). This is used for binaries uploaded within threads or as "knowledge" uploaded as part of an agent.')
27+
@description('Deploy Azure Storage account for the Azure AI Agent service (dependency). This is used for binaries uploaded within threads or as "knowledge" uploaded as part of an agent.')
2828
module deployAgentStorageAccount 'ai-agent-blob-storage.bicep' = {
2929
scope: resourceGroup()
3030
params: {
@@ -36,7 +36,7 @@ module deployAgentStorageAccount 'ai-agent-blob-storage.bicep' = {
3636
}
3737
}
3838

39-
@description('Deploy Azure Cosmos DB account for the Azure AI Agent Service (dependency). This is used for storing agent definitions and threads.')
39+
@description('Deploy Azure Cosmos DB account for the Azure AI Agent service (dependency). This is used for storing agent definitions and threads.')
4040
module deployCosmosDbThreadStorageAccount 'cosmos-db.bicep' = {
4141
scope: resourceGroup()
4242
params: {
@@ -48,7 +48,7 @@ module deployCosmosDbThreadStorageAccount 'cosmos-db.bicep' = {
4848
}
4949
}
5050

51-
@description('Deploy Azure AI Search instance for the Azure AI Agent Service (dependency). This is used when a user uploads a file to the agent, and the agent needs to search for information in that file.')
51+
@description('Deploy Azure AI Search instance for the Azure AI Agent service (dependency). This is used when a user uploads a file to the agent, and the agent needs to search for information in that file.')
5252
module deployAzureAISearchService 'ai-search.bicep' = {
5353
scope: resourceGroup()
5454
params: {

infra-as-code/bicep/ai-foundry-project.bicep

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@ resource aiFoundry 'Microsoft.CognitiveServices/accounts@2025-04-01-preview' exi
151151
displayName: 'ChatWithInternetData'
152152
}
153153

154-
@description('Create project connection to CosmosDB (thread storage); dependency for Azure AI Agent Service.')
154+
@description('Create project connection to CosmosDB (thread storage); dependency for Azure AI Agent service.')
155155
resource threadStorageConnection 'connections' = {
156156
name: cosmosDbAccount.name
157157
properties: {
@@ -169,7 +169,7 @@ resource aiFoundry 'Microsoft.CognitiveServices/accounts@2025-04-01-preview' exi
169169
]
170170
}
171171

172-
@description('Create project connection to the Azure Storage account; dependency for Azure AI Agent Service.')
172+
@description('Create project connection to the Azure Storage account; dependency for Azure AI Agent service.')
173173
resource storageConnection 'connections' = {
174174
name: agentStorageAccount.name
175175
properties: {
@@ -189,7 +189,7 @@ resource aiFoundry 'Microsoft.CognitiveServices/accounts@2025-04-01-preview' exi
189189
]
190190
}
191191

192-
@description('Create project connection to Azure AI Search; dependency for Azure AI Agent Service.')
192+
@description('Create project connection to Azure AI Search; dependency for Azure AI Agent service.')
193193
resource aiSearchConnection 'connections' = {
194194
name: azureAISearchService.name
195195
properties: {
@@ -232,7 +232,7 @@ resource aiFoundry 'Microsoft.CognitiveServices/accounts@2025-04-01-preview' exi
232232
}
233233

234234

235-
@description('Create the Azure AI Agent Service.')
235+
@description('Create the Azure AI Agent service.')
236236
resource aiAgentService 'capabilityHosts' = {
237237
name: 'projectagents'
238238
properties: {
@@ -265,7 +265,7 @@ resource aiFoundry 'Microsoft.CognitiveServices/accounts@2025-04-01-preview' exi
265265
isSharedToAll: false
266266
}
267267
dependsOn: [
268-
aiAgentService // Deploy after the Azure AI Agent Service is provisioned, not a dependency.
268+
aiAgentService // Deploy after the Azure AI Agent service is provisioned, not a dependency.
269269
]
270270
}
271271
}

infra-as-code/bicep/cosmos-db.bicep

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2025-02
4040

4141
// ---- New resources ----
4242

43-
@description('Deploy an Azure Cosmos DB account. This is a BYO dependency for the Azure AI Agent Service. It\'s used to store threads and agent definitions.')
43+
@description('Deploy an Azure Cosmos DB account. This is a BYO dependency for the Azure AI Agent service. It\'s used to store threads and agent definitions.')
4444
resource cosmosDbAccount 'Microsoft.DocumentDB/databaseAccounts@2024-12-01-preview' = {
4545
name: 'cdb-ai-agent-threads-${baseName}'
4646
location: location

infra-as-code/bicep/network.bicep

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ targetScope = 'resourceGroup'
88
@minLength(1)
99
param location string = resourceGroup().location
1010

11-
// Azure AI Agent Service currently has a limitation on subnet prefixes.
11+
// Azure AI Agent service currently has a limitation on subnet prefixes.
1212
// 10.x was not supported, as such 192.168.x.x was used.
1313
var virtualNetworkAddressPrefix = '192.168.0.0/16'
1414
var appGatewaySubnetPrefix = '192.168.1.0/24'

infra-as-code/bicep/web-app.bicep

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ param existingWebAppDeploymentStorageAccountName string
4141
@minLength(1)
4242
param existingWebApplicationInsightsResourceName string
4343

44-
@description('The name of the existing Azure AI Foundry instance that the the Azure Web App code will be calling for Azure AI Agent Service agents.')
44+
@description('The name of the existing Azure AI Foundry instance that the the Azure Web App code will be calling for Azure AI Agent service agents.')
4545
@minLength(2)
4646
param existingAzureAiFoundryResourceName string
4747

@@ -102,7 +102,7 @@ resource appServiceExistingPrivateDnsZone 'Microsoft.Network/privateDnsZones@202
102102
name: 'privatelink.azurewebsites.net'
103103
}
104104

105-
@description('Existing Azure AI Foundry account. This account is where the agents hosted in Azure AI Agent Service will be deployed. The web app code calls to these agents.')
105+
@description('Existing Azure AI Foundry account. This account is where the agents hosted in Azure AI Agent service will be deployed. The web app code calls to these agents.')
106106
resource aiFoundry 'Microsoft.CognitiveServices/accounts@2025-04-01-preview' existing = {
107107
name: existingAzureAiFoundryResourceName
108108
}

0 commit comments

Comments
 (0)