You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+10-10Lines changed: 10 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff 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
2
2
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.
4
4
5
5
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:
6
6
@@ -13,15 +13,15 @@ Follow this implementation to deploy an agent in [Azure AI Foundry](https://lear
13
13
This implementation builds off the [basic implementation](https://github.com/Azure-Samples/openai-end-to-end-basic), and adds common production requirements such as:
14
14
15
15
- 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)
17
17
- Added availability zone reliability
18
18
19
19
## Architecture
20
20
21
21
The implementation covers the following scenarios:
22
22
23
23
-[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)
25
25
-[Invoking the agent from .NET code hosted in an Azure Web App](#invoking-the-agent-from-net-code-hosted-in-an-azure-web-app)
26
26
27
27
### Setting up Azure AI Foundry to host agents
@@ -34,7 +34,7 @@ The authoring architecture diagram illustrates how flow authors [connect to an A
34
34
35
35
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.
36
36
37
-
### Deploying an agent into Azure AI Agent Service
37
+
### Deploying an agent into Azure AI Agent service
38
38
39
39
TODO: Write this
40
40
@@ -209,7 +209,7 @@ The AI agent definition would likely be deployed from your application's pipelin
209
209
$LOCATION="eastus2"
210
210
```
211
211
212
-
1. Generate some varibles to set context within your jump box.
212
+
1. Generate some variables to set context within your jump box.
213
213
214
214
*The following variables align with the defaults in this deployment. Update them if you customized anything.*
215
215
@@ -252,7 +252,7 @@ Here you'll test your orchestration agent by invoking it directly from the Azure
252
252
253
253
1. Open the Azure portal to your subscription.
254
254
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.
256
256
257
257
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.
258
258
@@ -295,7 +295,7 @@ For this deployment guide, you'll continue using your jump box to simulate part
295
295
1. Update the app configuration to use the agent you deployed.
296
296
297
297
```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.
> 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.
356
356
>
357
357
> The lingering resources do not have a cost associated with them existing in your subscription.
358
358
>
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.
@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.')
@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.')
@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.')
@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.')
0 commit comments