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
# Deploy a .NET Blazor app connected to Azure SQL and Azure OpenAI on Azure App Service
13
13
14
-
When creating intelligent apps, you may want to ground the context of your app using your own SQL data. With the recent announcement of [Azure SQL vector support (preview)](https://devblogs.microsoft.com/azure-sql/announcing-eap-native-vector-support-in-azure-sql-database/), you can ground the context using the Azure SQL data you already have with new [vector functions](https://learn.microsoft.com/en-us/sql/t-sql/functions/vector-functions-transact-sql?view=azuresqldb-current) that help manage vector data.
14
+
When creating intelligent apps, you may want to ground the context of your app using your own SQL data. With the recent announcement of [Azure SQL vector support (preview)](https://devblogs.microsoft.com/azure-sql/announcing-eap-native-vector-support-in-azure-sql-database/), you can ground the context using the Azure SQL data you already have with new [vector functions](https://learn.microsoft.com/sql/t-sql/functions/vector-functions-transact-sql?view=azuresqldb-current) that help manage vector data.
15
15
16
16
In this tutorial, you'll create a RAG sample application by setting up a Hybrid vector search against your Azure SQL database using a .NET 8 Blazor app. This example builds from the previous documentation to deploy a [.NET Blazor app with OpenAI](/deploy-intelligent-apps?pivots=openai-dotnet).
17
17
18
18
#### Prerequisites
19
19
20
-
- An [Azure OpenAI](https://learn.microsoft.com/en-us/azure/ai-services/openai/quickstart?pivots=programming-language-csharp&tabs=command-line%2Ckeyless%2Ctypescript-keyless%2Cpython#set-up) resource with deployed models
20
+
- An [Azure OpenAI](https://learn.microsoft.com/azure/ai-services/openai/quickstart?pivots=programming-language-csharp&tabs=command-line%2Ckeyless%2Ctypescript-keyless%2Cpython#set-up) resource with deployed models
21
21
- A .NET 8 or 9 Blazor Web App deployed on App Service
22
22
- An Azure SQL database resource with vector embeddings.
23
23
24
24
### Set up Blazor web app
25
25
26
-
For this example, we're creating a simple chat box to interact with. If you're using the prerequisite .NET Blazor app from the [previous article](/deploy-intelligent-apps?pivots=openai-dotnet), you can skip the changes to the *OpenAI.razor* file as the content is the same. However, you need to make sure the following packages are installed:
26
+
For this example, we're creating a simple chat box to interact with. If you're using the prerequisite .NET Blazor app from the [previous article](./deploy-intelligent-apps?pivots=openai-dotnet), you can skip the changes to the *OpenAI.razor* file as the content is the same. However, you need to make sure the following packages are installed:
27
27
28
28
Install the following packages to interact with Azure OpenAI and Azure SQL.
29
29
@@ -59,7 +59,7 @@ Install the following packages to interact with Azure OpenAI and Azure SQL.
59
59
60
60
### API keys and endpoints
61
61
62
-
Using the Azure OpenAI resource requires the use of API keys and endpoint values. See the documentation in the previous article for setting up [Azure Key Vault references](/deploy-intelligent-apps?pivots=openai-dotnet#api-keys-and-endpoints) to manage and handle your secrets with Azure OpenAI. Although not required, we do recommend using managed identity to secure your client without the need to manage API keys. See the previous [documentation](/deploy-intelligent-apps?pivots=openai-dotnet#secure-your-app-with-managed-identity) to set up your Azure OpenAI client in the next step to use managed identity with Azure OpenAI.
62
+
Using the Azure OpenAI resource requires the use of API keys and endpoint values. See the documentation in the previous article for setting up [Azure Key Vault references](./deploy-intelligent-apps?pivots=openai-dotnet#api-keys-and-endpoints) to manage and handle your secrets with Azure OpenAI. Although not required, we do recommend using managed identity to secure your client without the need to manage API keys. See the previous [documentation](./deploy-intelligent-apps?pivots=openai-dotnet#secure-your-app-with-managed-identity) to set up your Azure OpenAI client in the next step to use managed identity with Azure OpenAI.
63
63
64
64
### Add Azure OpenAI client
65
65
@@ -138,15 +138,15 @@ In order to prepare your Azure SQL database for vector search, you need to make
Thesetwomodelsneedtobedeployedbeforecontinuingthenextstep. Visitthe [documentation](https://learn.microsoft.com/en-us/azure/ai-studio/how-to/deploy-models-openai) for deploying models with Azure OpenAI using Azure AI Foundry.
141
+
Thesetwomodelsneedtobedeployedbeforecontinuingthenextstep. Visitthe [documentation](https://learn.microsoft.com/azure/ai-studio/how-to/deploy-models-openai) for deploying models with Azure OpenAI using Azure AI Foundry.
142
142
143
143
### Vectorize your SQL database
144
144
145
145
ToperformahybridvectorsearchonyourAzureSQLdatabase, youfirstneedtohavetheappropriateembeddingsinyourdatabase. Therearemanywaysyoucanvectorizeyourdatabase. Oneoptionistousethefollowing [AzureSQLdatabasevectorizer](https://github.com/Azure-Samples/azure-sql-db-vectorizer) to generate embeddings for your SQL database. Vectorize your Azure SQL database before continuing.
146
146
147
147
### Create procedure to generate embeddings
148
148
149
-
With [AzureSQLvectorsupport (preview)](https://devblogs.microsoft.com/azure-sql/announcing-eap-native-vector-support-in-azure-sql-database/), you can create a stored procedure that will use a Vector data type to store generated embeddings for search queries. The stored procedure invokes an external REST API endpoint to get the embeddings. See the [documentation](https://learn.microsoft.com/en-us/azure-data-studio/quickstart-sql-database) to use Azure Data Studio to connect to your database before running the query.
149
+
With [AzureSQLvectorsupport (preview)](https://devblogs.microsoft.com/azure-sql/announcing-eap-native-vector-support-in-azure-sql-database/), you can create a stored procedure that will use a Vector data type to store generated embeddings for search queries. The stored procedure invokes an external REST API endpoint to get the embeddings. See the [documentation](https://learn.microsoft.com/azure-data-studio/quickstart-sql-database) to use Azure Data Studio to connect to your database before running the query.
150
150
151
151
1. UsethefollowingtocreateastoredprocedurewithyourpreferredSQLqueryeditor. Youneedtopopulatethe@urlparameterwithyourAzureOpenAIresourcenameandpopulatetherestendpointwiththeAPIkeyfromyourtextembeddingmodel. You'll notice the model name as part of the @url, which will be populated with your search query.
0 commit comments