Skip to content

Commit 7daf825

Browse files
committed
Merge branch 'main' into release-preview-azure-ai-model-inference-service
2 parents c2beec6 + e0cf83d commit 7daf825

16 files changed

+305
-224
lines changed

articles/ai-services/computer-vision/tutorials/liveness.md

Lines changed: 172 additions & 169 deletions
Large diffs are not rendered by default.

articles/ai-services/openai/how-to/role-based-access-control.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ This role is typically granted access at the resource group level for a user in
9999
✅ Create new model deployments or edit existing model deployments (via API) <br>
100100
✅ Create custom fine-tuned models **[Added Fall 2023]**<br>
101101
✅ Upload datasets for fine-tuning **[Added Fall 2023]**<br>
102-
✅ Create new model deployments or edit existing model deployments (via Azure AI Foundry) **[Added Fall 2023]**
102+
✅ Create new model deployments or edit existing model deployments (via Azure AI Foundry) **[Added Fall 2023]**<br>
103103
✅ View, query, filter Stored completions data <br>
104104

105105

articles/ai-services/openai/includes/fine-tuning-python.md

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -503,6 +503,55 @@ print(r.json())
503503

504504
To deploy between the same subscription, but different regions you would just have subscription and resource groups be identical for both source and destination variables and only the source and destination resource names would need to be unique.
505505

506+
### Cross tenant deployment
507+
508+
The account used to generate access tokens with `az account get-access-token --tenant` should have Cognitive Services OpenAI Contributor permissions to both the source and destination Azure OpenAI resources. You will need to generate two different tokens, one for the source tenant and one for the destination tenant.
509+
510+
```python
511+
import requests
512+
513+
subscription = "DESTINATION-SUBSCRIPTION-ID"
514+
resource_group = "DESTINATION-RESOURCE-GROUP"
515+
resource_name = "DESTINATION-AZURE-OPENAI-RESOURCE-NAME"
516+
model_deployment_name = "DESTINATION-MODEL-DEPLOYMENT-NAME"
517+
fine_tuned_model = "gpt-4o-mini-2024-07-18.ft-f8838e7c6d4a4cbe882a002815758510" #source fine-tuned model id example id provided
518+
source_subscription_id = "SOURCE-SUBSCRIPTION-ID"
519+
source_resource_group = "SOURCE-RESOURCE-GROUP"
520+
source_account = "SOURCE-AZURE-OPENAI-RESOURCE-NAME"
521+
522+
dest_token = "DESTINATION-ACCESS-TOKEN" # az account get-access-token --tenant DESTINATION-TENANT-ID
523+
source_token = "SOURCE-ACCESS-TOKEN" # az account get-access-token --tenant SOURCE-TENANT-ID
524+
525+
headers = {
526+
"Authorization": f"Bearer {dest_token}",
527+
"x-ms-authorization-auxiliary": f"Bearer {source_token}",
528+
"Content-Type": "application/json"
529+
}
530+
531+
url = f"https://management.azure.com/subscriptions/{subscription}/resourceGroups/{resource_group}/providers/Microsoft.CognitiveServices/accounts/{resource_name}/deployments/{model_deployment_name}?api-version=2024-10-01"
532+
533+
payload = {
534+
"sku": {
535+
"name": "standard",
536+
"capacity": 1
537+
},
538+
"properties": {
539+
"model": {
540+
"format": "OpenAI",
541+
"name": fine_tuned_model,
542+
"version": "1",
543+
"sourceAccount": f"/subscriptions/{source_subscription_id}/resourceGroups/{source_resource_group}/providers/Microsoft.CognitiveServices/accounts/{source_account}"
544+
}
545+
}
546+
}
547+
548+
response = requests.put(url, headers=headers, json=payload)
549+
550+
# Check response
551+
print(f"Status Code: {response.status_code}")
552+
print(f"Response: {response.json()}")
553+
```
554+
506555
### Deploy a model with Azure CLI
507556

508557
The following example shows how to use the Azure CLI to deploy your customized model. With the Azure CLI, you must specify a name for the deployment of your customized model. For more information about how to use the Azure CLI to deploy customized models, see [`az cognitiveservices account deployment`](/cli/azure/cognitiveservices/account/deployment).

articles/ai-services/openai/includes/fine-tuning-rest.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -322,6 +322,29 @@ curl -X PUT "https://management.azure.com/subscriptions/<SUBSCRIPTION>/resourceG
322322

323323
To deploy between the same subscription, but different regions, you would just have subscription and resource groups be identical for both source and destination variables and only the source and destination resource names would need to be unique.
324324

325+
### Cross tenant deployment
326+
327+
The account used to generate access tokens with `az account get-access-token --tenant` should have Cognitive Services OpenAI Contributor permissions to both the source and destination Azure OpenAI resources. You will need to generate two different tokens, one for the source tenant and one for the destination tenant.
328+
329+
330+
```bash
331+
curl -X PUT "https://management.azure.com/subscriptions/<SUBSCRIPTION>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.CognitiveServices/accounts/<RESOURCE_NAME>/deployments/<MODEL_DEPLOYMENT_NAME>?api-version=2024-10-01" \
332+
-H "Authorization: Bearer <DESTINATION TOKEN>" \
333+
-H "x-ms-authorization-auxiliary: Bearer <SOURCE TOKEN>" \
334+
-H "Content-Type: application/json" \
335+
-d '{
336+
"sku": {"name": "standard", "capacity": 1},
337+
"properties": {
338+
"model": {
339+
"format": "OpenAI",
340+
"name": "<FINE_TUNED_MODEL>",
341+
"version": "1",
342+
"sourceAccount": "/subscriptions/{sourceSubscriptionID}/resourceGroups/{sourceResourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{sourceAccount}"
343+
}
344+
}
345+
}'
346+
```
347+
325348
### Deploy a model with Azure CLI
326349

327350
The following example shows how to use the Azure CLI to deploy your customized model. With the Azure CLI, you must specify a name for the deployment of your customized model. For more information about how to use the Azure CLI to deploy customized models, see [`az cognitiveservices account deployment`](/cli/azure/cognitiveservices/account/deployment).

articles/ai-services/openai/quotas-limits.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ The following sections provide you with a quick guide to the default quotas and
5151
| GPT-4o max images per request (# of images in the messages array/conversation history) | 50 |
5252
| GPT-4 `vision-preview` & GPT-4 `turbo-2024-04-09` default max tokens | 16 <br><br> Increase the `max_tokens` parameter value to avoid truncated responses. GPT-4o max tokens defaults to 4096. |
5353
| Max number of custom headers in API requests<sup>1</sup> | 10 |
54+
| Message character limit | 1048576 |
5455

5556
<sup>1</sup> Our current APIs allow up to 10 custom headers, which are passed through the pipeline, and returned. Some customers now exceed this header count resulting in HTTP 431 errors. There's no solution for this error, other than to reduce header volume. **In future API versions we will no longer pass through custom headers**. We recommend customers not depend on custom headers in future system architectures.
5657

articles/ai-services/speech-service/includes/release-notes/release-notes-stt.md

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,23 @@
1-
---
21
author: eric-urban
32
ms.service: azure-ai-speech
43
ms.topic: include
5-
ms.date: 11/19/2024
4+
ms.date: 1/21/2025
65
ms.author: eur
76
---
87

8+
### January 2025 release
9+
10+
#### Real-time speech to text - New English model release
11+
12+
Announcing the release of the latest English speech model (en-US, en-CA), which brings substantial improvements across various performance metrics. Below are the key highlights of this release:
13+
- Accessibility Enhancements: Achieved a 36% reduction in Word Error Rate (WER) on Microsoft internal accessibility test sets, making speech recognition more accurate and reliable for recognizing speech from individuals with speech disabilities.
14+
-
15+
- Ghost Word Reduction: A remarkable 90% reduction in ghost words on the ghost word development set and reductions range from 63% to 100% across other ghost word datasets, significantly enhancing the clarity and accuracy of transcriptions.
16+
-
17+
The new model also improved the overall performance, including entity recognition and better recognition of spelled-out letters.
18+
19+
These advancements are expected to provide a more accurate, efficient, and satisfying experience for all users. The new model is available through the API and Azure AI Foundry playground. Feedback is encouraged to further refine its capabilities.
20+
921
### November 2024 release
1022

1123
#### Speech to text REST API version 2024-11-15

articles/ai-services/speech-service/speech-services-quotas-and-limits.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@ The limits in this table apply per Speech resource when you create a custom spee
6969
| Quota | Free (F0) | Standard (S0) |
7070
|-----|-----|-----|
7171
| REST API limit | 100 requests per 10 seconds (600 requests per minute) | 100 requests per 10 seconds (600 requests per minute) |
72+
| Max number of custom model deployments per Speech resource | 1 | 50 |
7273
| Max number of speech datasets | 2 | 500 |
7374
| Max acoustic dataset file size for data import | 2 GB | 2 GB |
7475
| Max language dataset file size for data import | 200 MB | 1.5 GB |

articles/ai-studio/how-to/flow-develop.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ In this article, you learn how to create and develop your first prompt flow in A
3434
- If you don't have an Azure AI Foundry project already, first [create a project](create-projects.md).
3535
- Prompt flow requires a compute session. If you don't have a runtime, you can [create one in Azure AI Foundry portal](./create-manage-compute-session.md).
3636
- You need a deployed model.
37-
- In your project, configure access control for the blog storage account. Assign the **Storage Blob Data Contributor** role to your user account.
37+
- In your project, configure access control for the blob storage account. Assign the **Storage Blob Data Contributor** role to your user account.
3838
- In the bottom left of the Azure AI Foundry portal, select **Management center**.
3939
- In **Connected resources** for your project, select the link that corresponds to the **Azure Blob Storage** type.
4040
- Select **View in Azure Portal**

articles/machine-learning/feature-retrieval-concepts.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,22 +6,22 @@ ms.service: azure-machine-learning
66
ms.subservice: mldata
77
ms.topic: how-to
88
author: fbsolo-ms1
9-
ms.author: franksolomon
10-
ms.reviewer: yogipandey
11-
ms.date: 12/06/2023
9+
ms.author: franksolomon
10+
ms.reviewer: franksolomon
11+
ms.date: 01/22/2025
1212
ms.custom: template-concept
1313
---
1414

1515
# Feature retrieval specification and usage in training and inference
1616

1717
This article describes the feature retrieval specification, and how to use a feature retrieval specification in training and inference.
1818

19-
A feature retrieval specification is an artifact that defines a list of features to use in model input. The features in a feature retrieval specification:
19+
A feature retrieval specification is an artifact that defines a list of features to use in model input. In a feature retrieval specification, the features:
2020

2121
- must exist in a feature set registered in a feature store
2222
- can exist in multiple feature sets and multiple feature stores
2323

24-
The feature retrieval specification is used at the time of model training and the time of model inference. These flow steps involve the specification:
24+
The feature retrieval specification is used at the time of model training and at the time of model inference. These flow steps involve the specification:
2525

2626
1. Select features, and generate a feature retrieval specification
2727
1. Use that specification and observation data to generate training data resource with a [point-in-time join](./offline-retrieval-point-in-time-join-concepts.md)
@@ -69,7 +69,7 @@ featurestore1.generate_feature_retrieval_spec("./feature_retrieval_spec_folder",
6969

7070
```
7171

72-
Find detailed examples in the **2.Experiment-train-models-using-features.ipynb** notebook, hosted at [this resource](https://github.com/Azure/azureml-examples/tree/main/sdk/python/featurestore_sample/notebooks/sdk_only).
72+
The **2.Experiment-train-models-using-features.ipynb** notebook, hosted at [this resource](https://github.com/Azure/azureml-examples/tree/main/sdk/python/featurestore_sample/notebooks/sdk_only), has detailed examples.
7373

7474
The function generates a YAML file artifact, which has a structure similar to the structure in this example:
7575
```yaml
@@ -122,7 +122,7 @@ training_df = get_offline_features(
122122
123123
```
124124

125-
The second option sets the feature retrieval specification as an input to the built-in feature retrieval (pipeline) component. It combines that feature retrieval specification with other inputs - for example, the observation data set. It then submits an Azure Machine Learning pipeline (Spark) job, to generate the training data set as output. This option is recommended to make the training pipeline ready for production, for repeated runs. For more details about the built-in feature retrieval (pipeline) component, visit the [feature retrieval component](#built-in-feature-retrieval-component) resource.
125+
The second option sets the feature retrieval specification as an input to the built-in feature retrieval (pipeline) component. It combines that feature retrieval specification with other inputs - for example, the observation data set. It then submits an Azure Machine Learning pipeline (Spark) job, to generate the training data set as output. This option is recommended as a way to make the training pipeline ready for production, for repeated runs. Visit the [feature retrieval component](#built-in-feature-retrieval-component) resource for more information about the built-in feature retrieval (pipeline) components.
126126

127127
## Package a feature retrieval specification with model artifact
128128

0 commit comments

Comments
 (0)