Skip to content

Commit b71e326

Browse files
authored
Merge pull request #2807 from eric-urban/eur/freshness-feb
tier 1 freshness
2 parents df7f985 + c9ea87c commit b71e326

12 files changed

+51
-59
lines changed

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/index.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ metadata:
1313
ms.author: eur
1414
manager: nitinme
1515
ms.custom: ignite-2023
16-
ms.date: 9/5/2024
16+
ms.date: 2/7/2025
1717
highlightedContent:
1818
# itemType: architecture | concept | deploy | download | get-started | how-to-guide | learn | overview | quickstart | reference | tutorial | whats-new
1919
items:

articles/ai-services/multi-service-resource.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ manager: nitinme
88
ms.service: azure-ai-services
99
ms.custom: devx-track-azurecli, devx-track-azurepowershell, build-2024, ignite-2024
1010
ms.topic: quickstart
11-
ms.date: 8/20/2024
11+
ms.date: 2/7/2025
1212
ms.author: eur
1313
zone_pivot_groups: programming-languages-portal-cli-ps
1414
---
@@ -37,7 +37,8 @@ The multi-service resource enables access to the following Azure AI services wit
3737
3838
| Service | Description | Kind (via API) |
3939
| --- | --- | --- |
40-
| ![Azure AI model inference icon](~/reusable-content/ce-skilling/azure/media/ai-services/ai-foundry.svg) [Azure AI Model Inference](../ai-foundry/model-inference/index.yml) | Performs model inference for flagship models in the Azure AI model catalog. | `AIServices` |
40+
| ![Azure icon](~/reusable-content/ce-skilling/azure/media/ai-services/azure.svg) [Azure AI Agent Service](./agents/index.yml) | Combine the power of generative AI models with tools that allow agents to access and interact with real-world data sources. | `AIServices` |
41+
| ![Azure AI Foundry icon](~/reusable-content/ce-skilling/azure/media/ai-services/ai-foundry.svg) [Azure AI Model Inference](../ai-foundry/model-inference/index.yml) | Performs model inference for flagship models in the Azure AI model catalog. | `AIServices` |
4142
| ![Azure OpenAI Service icon](~/reusable-content/ce-skilling/azure/media/ai-services/azure-openai.svg) [Azure OpenAI](./openai/index.yml) | Perform a wide variety of natural language tasks. | `AIServices`<br/>`OpenAI` |
4243
| ![Content Safety icon](~/reusable-content/ce-skilling/azure/media/ai-services/content-safety.svg) [Content Safety](./content-safety/index.yml) | An AI service that detects unwanted contents. | `AIServices`<br/>`ContentSafety` |
4344
| ![Custom Vision icon](~/reusable-content/ce-skilling/azure/media/ai-services/custom-vision.svg) [Custom Vision](./custom-vision-service/index.yml) | Customize image recognition for your business. | `CustomVision.Prediction` (Prediction only)<br/>`CustomVision.Training` (Training only) |

articles/ai-services/speech-service/how-to-async-meeting-transcription.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ description: Learn how to use asynchronous conversation transcription using the
55
manager: nitinme
66
ms.service: azure-ai-speech
77
ms.topic: how-to
8-
ms.date: 9/9/2024
8+
ms.date: 2/7/2025
99
ms.devlang: csharp
1010
ms.custom: cogserv-non-critical-speech, devx-track-csharp, devx-track-extended-java
1111
zone_pivot_groups: programming-languages-set-twenty-one

articles/ai-services/speech-service/how-to-audio-content-creation.md

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

@@ -19,15 +19,13 @@ Build highly natural audio content for various scenarios, such as audiobooks, ne
1919
The tool is based on [Speech Synthesis Markup Language (SSML)](speech-synthesis-markup.md). It allows you to adjust text to speech output attributes in real-time or batch synthesis, such as voice characters, voice styles, speaking speed, pronunciation, and prosody.
2020

2121
- No-code approach: You can use the Audio Content Creation tool for text to speech synthesis without writing any code. The output audio might be the final deliverable that you want. For example, you can use the output audio for a podcast or a video narration.
22-
- Developer-friendly: You can listen to the output audio and adjust the SSML to improve speech synthesis. Then you can use the [Speech SDK](speech-sdk.md) or [Speech CLI](spx-basics.md) to integrate the SSML into your applications. For example, you can use the SSML for building a chat bot.
22+
- Developer-friendly: You can listen to the output audio and adjust the SSML to improve speech synthesis. Then you can use the [Speech SDK](speech-sdk.md) or [Speech CLI](spx-basics.md) to integrate the SSML into your applications.
2323

2424
You have easy access to a broad portfolio of [languages and voices](language-support.md?tabs=tts). These voices include state-of-the-art prebuilt neural voices and your custom neural voice, if you built one.
2525

26-
To learn more, view the Audio Content Creation tutorial video [on YouTube](https://youtu.be/ygApYuOOG6w).
27-
2826
## Get started
2927

30-
The Audio Content Creation tool in Speech Studio is free to access, but you pay for Speech service usage. To work with the tool, you need to sign in with an Azure account and create a Speech resource. For each Azure account, you have free monthly speech quotas, which include 0.5 million characters for prebuilt neural voices (referred to as *Neural* on the [pricing page](https://aka.ms/speech-pricing)). Usually, the monthly allotted amount is enough for a small content team of around 3-5 people.
28+
The Audio Content Creation tool in Speech Studio is free to access, but you pay for Speech service usage. To work with the tool, you need to sign in with an Azure account and create a Speech resource.
3129

3230
The next sections cover how to create an Azure account and get a Speech resource.
3331

@@ -39,28 +37,28 @@ To work with Audio Content Creation, you need a [Microsoft account](https://acco
3937

4038
### Step 2: Create a Speech resource
4139

42-
After you sign up for the Azure account, you need to create a Speech resource in your Azure account to access Speech services. Create a Speech resource on the [Azure portal](https://portal.azure.com). For more information, see [Create an Azure AI services resource](../multi-service-resource.md?pivots=azportal).
40+
After you sign up for the Azure account, you need to create a Speech resource in your Azure account to access Speech services. Create a Speech resource on the [Azure portal](https://portal.azure.com/#create/Microsoft.CognitiveServicesSpeechServices). For more information, see [Create an Azure AI services resource](../multi-service-resource.md?pivots=azportal).
4341

4442
It takes a few moments to deploy your new Speech resource. After the deployment is complete, you can start using the Audio Content Creation tool.
4543

46-
> [!NOTE]
47-
> If you plan to use neural voices, make sure that you create your resource in [a region that supports neural voices](regions.md#regions).
44+
> [!NOTE]
45+
> If you plan to use neural voices, make sure that you create your resource in [a region that supports neural voices](regions.md#regions).
4846
4947
### Step 3: Sign in to Audio Content Creation with your Azure account and Speech resource
5048

5149
1. After you get the Azure account and the Speech resource, sign in to [Speech Studio](https://aka.ms/speechstudio/), and then select **Audio Content Creation**.
5250

5351
1. Select the Azure subscription and the Speech resource you want to work with, and then select **Use resource**.
5452

55-
The next time you sign in to Audio Content Creation, you're linked directly to the audio work files under the current Speech resource. You can check your Azure subscription details and status in the [Azure portal](https://portal.azure.com/).
56-
57-
If you don't have an available Speech resource and you're the owner or admin of an Azure subscription, you can create a Speech resource in Speech Studio by selecting **Create a new resource**.
58-
59-
If you have a user role for a certain Azure subscription, you might not have permissions to create a new Speech resource. To get access, contact your admin.
53+
The next time you sign in to Audio Content Creation, you're linked directly to the audio work files under the current Speech resource. You can check your Azure subscription details and status in the [Azure portal](https://portal.azure.com/).
54+
55+
If you don't have an available Speech resource and you're the owner or admin of an Azure subscription, you can create a Speech resource in Speech Studio by selecting **Create a new resource**.
6056

61-
To switch your Speech resource at any time, select **Settings** at the top of the page.
57+
If you have a user role for a certain Azure subscription, you might not have permissions to create a new Speech resource. To get access, contact your admin.
6258

63-
To switch directories, select **Settings** or go to your profile.
59+
To switch your Speech resource at any time, select **Settings** at the top of the page.
60+
61+
To switch directories, select **Settings** or go to your profile.
6462

6563
## Use the tool
6664

@@ -94,7 +92,6 @@ Each step in the preceding diagram is described here:
9492

9593
You can get your content into the Audio Content Creation tool in either of two ways:
9694

97-
9895
### Option 1: Create a new audio tuning file
9996

10097
1. Select **New** > **Text file** to create a new audio tuning file.
@@ -179,8 +176,10 @@ To add users to a Speech resource so that they can use Audio Content Creation, d
179176

180177
1. In the [Azure portal](https://portal.azure.com/), select **All services** from the left navigation pane, and then search for **Azure AI services** or **Speech**.
181178
1. Select your Speech resource.
179+
182180
> [!NOTE]
183181
> You can also set up Azure RBAC for whole resource groups, subscriptions, or management groups. Do this by selecting the desired scope level and then navigating to the desired item (for example, selecting **Resource groups** and then selecting your resource group).
182+
184183
1. Select **Access control (IAM)** on the left navigation pane.
185184
1. Select **Add** > **Add role assignment**.
186185
1. On the **Role** tab on the next screen, select a role (such as **Owner**) that you want to add.

articles/ai-services/speech-service/how-to-configure-azure-ad-auth.md

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ author: eric-urban
66
manager: nitinme
77
ms.service: azure-ai-speech
88
ms.topic: how-to
9-
ms.date: 9/9/2024
9+
ms.date: 2/7/2025
1010
ms.author: eur
1111
zone_pivot_groups: programming-languages-set-two
1212
ms.custom: devx-track-azurepowershell, devx-track-extended-java, devx-track-python, devx-track-azurecli
@@ -123,9 +123,6 @@ For programming languages where a Microsoft identity platform client library isn
123123

124124
You need your Speech resource ID to make SDK calls using Microsoft Entra authentication.
125125

126-
> [!NOTE]
127-
> For Intent Recognition use your LUIS Prediction resource ID.
128-
129126
# [Azure portal](#tab/portal)
130127

131128
To get the resource ID in the Azure portal:
@@ -153,7 +150,6 @@ To get the resource ID using PowerShell, confirm that you have PowerShell versio
153150

154151
Now run `Connect-AzAccount` to create a connection with Azure.
155152

156-
157153
```azurepowershell
158154
Connect-AzAccount
159155
$subscriptionId = "Your Azure subscription Id"

articles/ai-services/speech-service/how-to-use-meeting-transcription.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-speech
88
ms.topic: quickstart
9-
ms.date: 9/9/2024
9+
ms.date: 2/7/2025
1010
ms.author: eur
1111
zone_pivot_groups: acs-js-csharp-python
1212
ms.custom: cogserv-non-critical-speech, references_regions, devx-track-extended-java, devx-track-js, devx-track-python
@@ -15,7 +15,7 @@ ms.custom: cogserv-non-critical-speech, references_regions, devx-track-extended-
1515
# Quickstart: Real-time conversation transcription multichannel diarization (preview)
1616

1717
> [!NOTE]
18-
> This feature is currently in public preview. This preview is provided without a service-level agreement, and is not recommended for production workloads. Certain features might not be supported or might have constrained capabilities. For more information, see [Supplemental Terms of Use for Microsoft Azure Previews](https://azure.microsoft.com/support/legal/preview-supplemental-terms/).
18+
> This feature is currently in public preview. This preview is provided without a service-level agreement, and isn't recommended for production workloads. Certain features might not be supported or might have constrained capabilities. For more information, see [Supplemental Terms of Use for Microsoft Azure Previews](https://azure.microsoft.com/support/legal/preview-supplemental-terms/).
1919
2020
With conversation transcription multichannel diarization, you can transcribe meetings with the ability to add, remove, and identify multiple participants by streaming audio to the Speech service. You first create voice signatures for each participant using the REST API, and then use the voice signatures with the Speech SDK to transcribe meetings. See the conversation transcription [overview](meeting-transcription.md) for more information.
2121

0 commit comments

Comments
 (0)