Skip to content

Commit 4912a73

Browse files
authored
Merge pull request #2822 from MicrosoftDocs/main
2/7/2025 PM Publish
2 parents 43352d5 + 28be008 commit 4912a73

40 files changed

+158
-148
lines changed

articles/ai-foundry/model-inference/how-to/quickstart-github-models.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ To obtain the key and endpoint:
4747

4848
5. If your existing account is a free account, you first have to upgrade to a Pay as you go plan. Once you upgrade, go back to the playground and select **Get API key** again, then sign in with your upgraded account.
4949

50-
6. Once you've signed in to your Azure account, you're taken to [Azure AI Studio > GitHub](https://ai-azure.com/GitHub). It might take one or two minutes to load your initial model details in AI Studio.
50+
6. Once you've signed in to your Azure account, you're taken to [Azure AI Studio > GitHub](https://ai.azure.com/GitHub). It might take one or two minutes to load your initial model details in AI Studio.
5151

5252
7. The page is loaded with your model's details. Select the **Deploy** button to deploy the model to your account.
5353

articles/ai-services/agents/how-to/tools/bing-grounding.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,8 @@ Developers and end users don't have access to raw content returned from Groundin
4444
1. Create a Grounding with Bing Search resource. You need to have `owner` or `contributor` role in your subscription or resource group to create it.
4545

4646
1. You can create one in the [Azure portal](https://portal.azure.com/#create/Microsoft.BingGroundingSearch), and select the different fields in the creation form. Make sure you create this Grounding with Bing Search resource in the same resource group as your Azure AI Agent, AI Project, and other resources.
47+
48+
:::image type="content" source="../../media/tools/bing/resource-selection.png" alt-text="A screenshot of the Bing resource selection in the Azure portal." lightbox="../../media/tools/bing/resource-selection.png":::
4749

4850
1. You can also create one through code-first experience. If so, you need to manually [register](/azure/azure-resource-manager/management/resource-providers-and-types#register-resource-provider) Bing Search as an Azure resource provider. You must have permission to perform the `/register/action` operation for the resource provider. The permission is included in the **Contributor** and **Owner** roles.
4951

80.8 KB
Loading

articles/ai-services/authentication.md

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,22 @@
22
title: Authentication in Azure AI services
33
titleSuffix: Azure AI services
44
description: "There are three ways to authenticate a request to an Azure AI services resource: a resource key, a bearer token, or a multi-service subscription. In this article, you'll learn about each method, and how to make a request."
5-
author: mgreenegit
5+
author: eric-urban
66
manager: nitinme
77
ms.service: azure-ai-services
88
ms.custom: devx-track-azurepowershell
99
ms.topic: how-to
10-
ms.date: 8/1/2024
11-
ms.author: migreene
10+
ms.date: 2/7/2025
11+
ms.author: eur
1212
---
1313

1414
# Authenticate requests to Azure AI services
1515

1616
Each request to an Azure AI service must include an authentication header. This header passes along a resource key or authentication token, which is used to validate your subscription for a service or group of services. In this article, you'll learn about three ways to authenticate a request and the requirements for each.
1717

18-
* Authenticate with a [single-service](#authenticate-with-a-single-service-resource-key) or [multi-service](#authenticate-with-a-multi-service-resource-key) resource key
19-
* Authenticate with a [token](#authenticate-with-an-access-token)
20-
* Authenticate with [Microsoft Entra ID](#authenticate-with-azure-active-directory)
18+
* Authenticate with a [single-service](#authenticate-with-a-single-service-resource-key) or [multi-service](#authenticate-with-a-multi-service-resource-key) resource key.
19+
* Authenticate with a [token](#authenticate-with-an-access-token).
20+
* Authenticate with [Microsoft Entra ID](#authenticate-with-azure-active-directory).
2121

2222
## Prerequisites
2323

@@ -106,7 +106,7 @@ Some Azure AI services accept, and in some cases require, an access token. Curre
106106
* Speech Services: Speech to text API
107107
* Speech Services: Text to speech API
108108

109-
>[!WARNING]
109+
> [!WARNING]
110110
> The services that support access tokens may change over time, please check the API reference for a service before using this authentication method.
111111
112112
Both single service and multi-service resource keys can be exchanged for authentication tokens. Authentication tokens are valid for 10 minutes. They're stored in JSON Web Token (JWT) format and can be queried programmatically using the [JWT libraries](https://jwt.io/libraries).
@@ -176,13 +176,13 @@ The first step is to create a custom subdomain. If you want to use an existing A
176176
Set-AzContext -SubscriptionName <SubscriptionName>
177177
```
178178

179-
2. Next, [create an Azure AI services resource](/powershell/module/az.cognitiveservices/new-azcognitiveservicesaccount) with a custom subdomain. The subdomain name needs to be globally unique and cannot include special characters, such as: ".", "!", ",".
179+
1. Next, [create an Azure AI services resource](/powershell/module/az.cognitiveservices/new-azcognitiveservicesaccount) with a custom subdomain. The subdomain name needs to be globally unique and cannot include special characters, such as: ".", "!", ",".
180180

181181
```powershell-interactive
182182
$account = New-AzCognitiveServicesAccount -ResourceGroupName <RESOURCE_GROUP_NAME> -name <ACCOUNT_NAME> -Type <ACCOUNT_TYPE> -SkuName <SUBSCRIPTION_TYPE> -Location <REGION> -CustomSubdomainName <UNIQUE_SUBDOMAIN>
183183
```
184184

185-
3. If successful, the **Endpoint** should show the subdomain name unique to your resource.
185+
1. If successful, the **Endpoint** should show the subdomain name unique to your resource.
186186

187187

188188
### Assign a role to a service principal
@@ -202,7 +202,7 @@ Now that you have a custom subdomain associated with your resource, you're going
202202

203203
You're going to need the **ApplicationId** in the next step.
204204

205-
2. Next, you need to [create a service principal](/powershell/module/az.resources/new-azadserviceprincipal) for the Microsoft Entra application.
205+
1. Next, you need to [create a service principal](/powershell/module/az.resources/new-azadserviceprincipal) for the Microsoft Entra application.
206206

207207
```powershell-interactive
208208
New-AzADServicePrincipal -ApplicationId <APPLICATION_ID>
@@ -211,7 +211,7 @@ Now that you have a custom subdomain associated with your resource, you're going
211211
> [!NOTE]
212212
> If you register an application in the Azure portal, this step is completed for you.
213213
214-
3. The last step is to [assign the "Cognitive Services User" role](/powershell/module/az.Resources/New-azRoleAssignment) to the service principal (scoped to the resource). By assigning a role, you're granting service principal access to this resource. You can grant the same service principal access to multiple resources in your subscription.
214+
1. The last step is to [assign the "Cognitive Services User" role](/powershell/module/az.Resources/New-azRoleAssignment) to the service principal (scoped to the resource). By assigning a role, you're granting service principal access to this resource. You can grant the same service principal access to multiple resources in your subscription.
215215

216216
> [!NOTE]
217217
> The ObjectId of the service principal is used, not the ObjectId for the application.
@@ -231,7 +231,7 @@ In this sample, a password is used to authenticate the service principal. The to
231231
$context.Tenant.Id
232232
```
233233

234-
2. Get a token:
234+
1. Get a token:
235235
```powershell-interactive
236236
$tenantId = $context.Tenant.Id
237237
$clientId = $app.ApplicationId
@@ -253,7 +253,7 @@ In this sample, a password is used to authenticate the service principal. The to
253253
> [!NOTE]
254254
> Anytime you use passwords in a script, the most secure option is to use the PowerShell Secrets Management module and integrate with a solution such as Azure Key Vault.
255255
256-
3. Call the Computer Vision API:
256+
1. Call the Computer Vision API:
257257
```powershell-interactive
258258
$url = $account.Endpoint+"vision/v1.0/models"
259259
$result = Invoke-RestMethod -Uri $url -Method Get -Headers @{"Authorization"="Bearer $accessToken"} -Verbose
@@ -284,7 +284,7 @@ You can [use Azure Key Vault](./use-key-vault.md) to securely develop Azure AI s
284284

285285
Authentication is done via Microsoft Entra ID. Authorization may be done via Azure role-based access control (Azure RBAC) or Key Vault access policy. Azure RBAC can be used for both management of the vaults and access data stored in a vault, while key vault access policy can only be used when attempting to access data stored in a vault.
286286

287-
## See also
287+
## Related content
288288

289289
* [What are Azure AI services?](./what-are-ai-services.md)
290290
* [Azure AI services pricing](https://azure.microsoft.com/pricing/details/cognitive-services/)

articles/ai-services/cognitive-services-environment-variables.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,15 @@ author: eric-urban
66
manager: nitinme
77
ms.service: azure-ai-services
88
ms.topic: how-to
9-
ms.date: 8/11/2024
9+
ms.date: 2/7/2025
1010
ms.author: eur
1111
---
1212

1313
# Use environment variables with Azure AI services
1414

1515
This guide shows you how to set and retrieve environment variables for your Azure AI services credentials when you test applications.
1616

17-
[!INCLUDE [Azure key vault](~/reusable-content/ce-skilling/azure/includes/ai-services/security/azure-key-vault.md)]
17+
[!INCLUDE [Azure key vault](~/reusable-content/ce-skilling/azure/includes/ai-services/security/microsoft-entra-id-akv.md)]
1818

1919
## Set an environment variable
2020

articles/ai-services/create-account-resource-manager-template.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ author: eric-urban
66
manager: nitinme
77
ms.service: azure-ai-services
88
ms.topic: quickstart
9-
ms.date: 8/1/2024
9+
ms.date: 2/7/2025
1010
ms.author: eur
1111
ms.custom:
1212
- subject-armqs
@@ -35,7 +35,7 @@ The template that you use in this quickstart is from [Azure Quickstart Templates
3535

3636
One Azure resource is defined in the Bicep file. The `kind` field in the Bicep file defines the type of resource.
3737

38-
As needed, change the `sku` parameter value to the [pricing](https://azure.microsoft.com/pricing/details/cognitive-services/) instance you want. The `sku` depends on the resource `kind` that you use. For example, use `TextAnalytics` for the Azure AI Language service. The `TextAnalytics` kind uses `S` instead of `S0` for the `sku` value.
38+
As needed, change the `sku` parameter value to the [pricing](https://azure.microsoft.com/pricing/details/cognitive-services/) instance you want. The `sku` depends on the resource `kind` that you use. For example, use `AIServices` for the Azure AI Language service.
3939

4040
## Deploy the template
4141

articles/ai-services/document-intelligence/concept/retrieval-augmented-generation.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ author: laujan
66
manager: nitinme
77
ms.service: azure-ai-document-intelligence
88
ms.topic: conceptual
9-
ms.date: 11/19/2024
9+
ms.date: 02/07/2025
1010
ms.author: lajanuar
1111
monikerRange: '>=doc-intel-3.1.0'
1212
---

articles/ai-services/document-intelligence/how-to-guides/includes/v4-0/csharp-sdk.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ author: laujan
55
manager: nitinme
66
ms.service: azure-ai-document-intelligence
77
ms.topic: include
8-
ms.date: 11/19/2024
8+
ms.date: 02/07/2025
99
ms.author: lajanuar
1010
ms.custom: devx-track-csharp, linux-related-content
1111
monikerRange: 'doc-intel-4.0.0'
@@ -88,7 +88,7 @@ monikerRange: 'doc-intel-4.0.0'
8888
8989
1. Open the *Program.cs* file.
9090

91-
1. Delete the pre-existing code, including the line `Console.Writeline("Hello World!")`.
91+
1. Delete the existing code, including the line `Console.Writeline("Hello World!")`.
9292

9393
1. Select one of the following code samples and copy/paste into your application's *Program.cs* file:
9494

articles/ai-services/document-intelligence/how-to-guides/includes/v4-0/rest-api.md

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ manager: nitinme
66
ms.service: azure-ai-document-intelligence
77
ms.custom: linux-related-content
88
ms.topic: include
9-
ms.date: 11/19/2024
9+
ms.date: 02/07/2025
1010
ms.author: lajanuar
1111
---
1212
<!-- markdownlint-disable MD033 -->
@@ -16,14 +16,14 @@ ms.author: lajanuar
1616
>
1717
> This project uses cURL command-line tool to execute REST API calls.
1818
19-
| [Document Intelligence REST API](/rest/api/aiservices/operation-groups?view=rest-aiservices-v4.0%20(2024-11-30)&preserve-view=true) | [Supported Azure SDKS](../../../sdk-overview-v4-0.md)
19+
| [Document Intelligence REST API](/rest/api/aiservices/operation-groups?view=rest-aiservices-v4.0%20(2024-11-30)&preserve-view=true) | [Supported Azure `SDK`s](../../../sdk-overview-v4-0.md)
2020

2121
## Prerequisites
2222

2323
- An Azure subscription - [Create one for free](https://azure.microsoft.com/free/cognitive-services/).
2424
- The cURL command line tool installed. Windows 10 and Windows 11 ship with a copy of cURL. At a command prompt, type the following cURL command. If the help options display, cURL is installed in your Windows environment.
2525

26-
```console
26+
```bash
2727
curl -help
2828
```
2929

@@ -60,18 +60,18 @@ Use the following table as a reference. Replace *\<modelId>* and *\<document-url
6060

6161
## POST request
6262

63-
Open a console window and run the following cURL command. The commands include the endpoint and key environment variables previously created in the set environment variables section. Replace those variables if your variable names differ. Remember to replace the *\<modelId>* and *\<document-url>* parameters.
63+
Open a bash window and run the following cURL command. The commands include the endpoint and key environment variables previously created in the set environment variables section. Replace those variables if your variable names differ. Remember to replace the *\<modelId>* and *\<document-url>* parameters.
6464

65-
```console
66-
curl -i -X POST "%DI_ENDPOINT%/documentintelligence/documentModels/{modelId}:analyze?api-version=2024-02-29-preview" -H "Content-Type: application/json" -H "Ocp-Apim-Subscription-Key: %DI_KEY%" --data-ascii "{'urlSource': '<document-url>'}"
65+
```bash
66+
curl -i -X POST "POST {endpoint}/documentintelligence/documentModels/{modelId}:analyze?_overload=analyzeDocument&api-version=2024-11-30" -H "Content-Type: application/json" -H "Ocp-Apim-Subscription-Key: {DI_KEY}" --data-ascii "{'urlSource': '<document-url>'}"
6767
```
6868

6969
To enable add-on capabilities, use the `features` query parameter in the POST request. There are four add-on capabilities available with the `2023-07-31` (GA) and later releases: *ocr.highResolution*, *ocr.formula*, *ocr.font*, and *queryFields.premium*. To learn more about each of the capabilities, see [Custom models](../../../concept/accuracy-confidence.md).
7070

7171
You can only call the *highResolution*, *formula*, and *font* capabilities for the Read and Layout model, and the *queryFields* capability for the General Documents model. The following example shows how to call the *highResolution*, *formula*, and *font* capabilities for the Layout model.
7272

7373
```bash
74-
curl -i -X POST "%DI_ENDPOINT%documentintelligence/documentModels/prebuilt-layout:analyze?features=ocr.highResolution,ocr.formula,ocr.font?api-version=2024-02-29-preview" -H "Content-Type: application/json" -H "Ocp-Apim-Subscription-Key: %DI_KEY%" --data-ascii "{'urlSource': '<document-url>'}"
74+
curl -i -X POST "{endpoint}/documentintelligence/documentModels/prebuilt-layout:analyze?features=ocr.highResolution,ocr.formula,ocr.font?api-version=2024-11-30" -H "Content-Type: application/json" -H "Ocp-Apim-Subscription-Key: {DI_KEY}" --data-ascii "{'urlSource': '<document-url>'}"
7575
```
7676

7777
### POST response
@@ -82,7 +82,7 @@ You receive a `202 (Success)` response that includes an `Operation-location` hea
8282

8383
### Get analyze result (GET Request)
8484

85-
After you call the [`Analyze document`](/rest/api/aiservices/document-models/analyze-document?view=rest-aiservices-2024-02-29-preview&preserve-view=true&tabs=HTTP) API, call the [`Get analyze` result}(/rest/api/aiservices/document-models/get-analyze-result?view=rest-aiservices-2024-02-29-preview&preserve-view=true&tabs=HTTP) API to get the status of the operation and the extracted data.
85+
After you call the [`Analyze document`](/rest/api/aiservices/document-models/analyze-batch-documents?view=rest-aiservices-v4.0%20(2024-11-30)&preserve-view=true&tabs=HTTP) API, call the [`Get analyze` result](/rest/api/aiservices/document-models/get-analyze-result?view=rest-aiservices-v4.0%20(2024-11-30)&preserve-view=true&tabs=HTTP) API to get the status of the operation and the extracted data.
8686

8787
<!-- markdownlint-disable MD024 -->
8888

@@ -92,16 +92,16 @@ The cURL command line tool doesn't format API responses that contain JSON conten
9292

9393
Use the NodeJS *json tool* as a JSON formatter for cURL. If you don't have [Node.js](https://nodejs.org/) installed, download and install the latest version.
9494

95-
1. Open a console window and install the json tool by using the following command:
95+
1. Open a bash window and install the json tool by using the following command:
9696

97-
```console
97+
```bash
9898
npm install -g jsontool
9999
```
100100

101101
1. Pretty print the JSON output by including the pipe character `| json` with your GET requests.
102102

103-
```console
104-
curl -i -X GET "<endpoint>documentintelligence/documentModels/prebuilt-read/analyzeResults/0e49604a-2d8e-4b15-b6b8-bb456e5d3e0a?api-version=2024-02-29-preview"-H "Ocp-Apim-Subscription-Key: <subscription key>" | json
103+
```bash
104+
curl -i -X GET "<endpoint>documentintelligence/documentModels/prebuilt-read/analyzeResults/0e49604a-2d8e-4b15-b6b8-bb456e5d3e0a?api-version=2024-11-30"-H "Ocp-Apim-Subscription-Key: <subscription key>" | json
105105
```
106106

107107
#### [macOS](#tab/macOS)
@@ -110,8 +110,8 @@ The *json_pp* command tool ships with macOS and can be used as a JSON formatter
110110

111111
- Pretty print the JSON output by including `| json_pp` with your GET requests.
112112

113-
```console
114-
curl -i -X GET "{endpoint}documentintelligence/documentModels/prebuilt-read/analyzeResults/0e49604a-2d8e-4b15-b6b8-bb456e5d3e0a?api-version=2024-02-29-preview"-H "Ocp-Apim-Subscription-Key: <subscription key>" | json_pp
113+
```bash
114+
curl -i -X GET "{endpoint}/documentintelligence/documentModels/{modelId}/analyzeResults/{resultId}?api-version=2024-11-30"-H "Ocp-Apim-Subscription-Key: <subscription key>" | json_pp
115115
```
116116

117117
#### [Linux](#tab/linux)
@@ -120,8 +120,8 @@ The *json_pp* command line tool is preinstalled in most Linux distributions. If
120120

121121
- Pretty print the JSON output by including `| json_pp` with your `GET` requests.
122122

123-
```console
124-
curl -i -X GET "<endpoint>documentintelligence/documentModels/prebuilt-read/analyzeResults/0e49604a-2d8e-4b15-b6b8-bb456e5d3e0a?api-version=2024-02-29-preview"-H "Ocp-Apim-Subscription-Key: <subscription key>" | json_pp
123+
```bash
124+
curl -i -X GET "{endpoint}/documentintelligence/documentModels/{modelId}/analyzeResults/{resultId}?api-version=2024-11-30"-H "Ocp-Apim-Subscription-Key: <subscription key>" | json_pp
125125
```
126126

127127
---
@@ -134,8 +134,8 @@ Before you run the following command, make these changes:
134134
- Replace *\<DI_KEY* with the variable for your environment variable if it differs from the name in the code.
135135
- Replace *\<json-tool> with your JSON formatting tool.
136136

137-
```console
138-
curl -i -X GET "<POST response>" -H "Ocp-Apim-Subscription-Key: %DI_KEY%" | `<json-tool>`
137+
```bash
138+
curl -i -X GET "<POST response>" -H "Ocp-Apim-Subscription-Key: {DI_KEY}" | `<json-tool>`
139139
```
140140

141141
### Examine the response

articles/ai-services/document-intelligence/how-to-guides/use-sdk-rest-api.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ manager: nitinme
77
ms.service: azure-ai-document-intelligence
88
ms.custom: devx-track-dotnet, devx-track-extended-java, devx-track-js, devx-track-python, linux-related-content
99
ms.topic: how-to
10-
ms.date: 11/19/2024
10+
ms.date: 02/07/2025
1111
ms.author: lajanuar
1212
zone_pivot_groups: programming-languages-set-formre
1313
---

0 commit comments

Comments
 (0)