Skip to content

Commit 4d90f76

Browse files
authored
Merge pull request #3390 from MicrosoftDocs/main
3/6/2025 PM Publish
2 parents ddef09c + 2857940 commit 4d90f76

16 files changed

+140
-93
lines changed

articles/ai-foundry/includes/create-content-filter.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ ms.reviewer: pafarley
66
ms.author: pafarley
77
ms.service: azure-ai-foundry
88
ms.topic: include
9-
ms.date: 11/25/2024
9+
ms.date: 03/05/2025
1010
ms.custom: include
1111
---
1212

@@ -74,3 +74,5 @@ Follow these steps to apply a content filter to a deployment:
7474

7575
Now, you can go to the playground to test whether the content filter works as expected.
7676

77+
> [!TIP]
78+
> You can also create and update content filters using the REST APIs. For more information, see the [API reference](/rest/api/aiservices/accountmanagement/rai-policies/create-or-update). Content filters can be configured at the resource level. Once a new configuration is created, it can be associated with one or more deployments. For more information about model deployment, see the resource [deployment guide](../../ai-services/openai/how-to/create-resource.md).

articles/ai-services/agents/concepts/model-region-support.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ Azure AI Agent Service supports the same models as the chat completions API in A
3939
| norwayeast |- | - | - | - || - |- | - | - | - | - | - |
4040
| southindia | - | - | - | - || - | - | - | - ||| - |
4141
| swedencentral |||||| - ||||| - ||
42+
| uaenorth | - | - | - | - | - | - | - | - | - | - | - | - |
4243
| uksouth | - | - | - | - ||| - | - |||||
4344
| westus |||| - || - || - | - ||| - |
4445
| westus3 |||| - || - || - | - | - || - |

articles/ai-services/agents/how-to/tools/azure-functions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: 'How to use Azure Functions with the Azure AI Search tool'
2+
title: How to use Azure Functions with the Azure AI Agent Service
33
titleSuffix: Azure OpenAI
44
description: Learn how to use Azure functions with Azure AI Agents.
55
services: azure-ai-agent-service

articles/ai-services/openai/how-to/content-filters.md

Lines changed: 41 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
11
---
2-
title: 'Use content filters (preview) with Azure AI Foundry'
2+
title: 'Use content filters (preview)'
33
titleSuffix: Azure OpenAI
44
description: Learn how to use and configure the content filters that come with Azure AI Foundry, including getting approval for gated modifications.
55
#services: cognitive-services
66
manager: nitinme
77
ms.service: azure-ai-openai
88
ms.topic: how-to
9-
ms.date: 12/05/2024
9+
ms.date: 03/05/2025
1010
author: mrbullwinkle
1111
ms.author: mbullwin
1212
recommendations: false
1313
ms.custom: FY25Q1-Linter
1414
# customer intent: As a developer, I want to learn how to configure content filters with Azure AI Foundry so that I can ensure that my applications comply with our Code of Conduct.
1515
---
1616

17-
# How to configure content filters with Azure AI Foundry
17+
# How to configure content filters
1818

1919
The content filtering system integrated into Azure AI Foundry runs alongside the core models, including DALL-E image generation models. It uses an ensemble of multi-class classification models to detect four categories of harmful content (violence, hate, sexual, and self-harm) at four severity levels respectively (safe, low, medium, and high), and optional binary classifiers for detecting jailbreak risk, existing text, and code in public repositories.
2020

@@ -45,10 +45,46 @@ You can configure the following filter categories in addition to the default har
4545
|Prompt Shields for indirect attacks | GA| Off | User prompt | Filter / annotate Indirect Attacks, also referred to as Indirect Prompt Attacks or Cross-Domain Prompt Injection Attacks, a potential vulnerability where third parties place malicious instructions inside of documents that the generative AI system can access and process. Requires: [Document embedding and formatting](/azure/ai-services/openai/concepts/content-filter?tabs=warning%2Cuser-prompt%2Cpython-new#embedding-documents-in-your-prompt). |
4646
| Protected material - code |GA| On | Completion | Filters protected code or gets the example citation and license information in annotations for code snippets that match any public code sources, powered by GitHub Copilot. For more information about consuming annotations, see the [content filtering concepts guide](/azure/ai-services/openai/concepts/content-filter#annotations-preview) |
4747
| Protected material - text | GA| On | Completion | Identifies and blocks known text content from being displayed in the model output (for example, song lyrics, recipes, and selected web content). |
48-
| Groundedness* | Preview |Off | Completion |Detects whether the text responses of large language models (LLMs) are grounded in the source materials provided by the users. Ungroundedness refers to instances where the LLMs produce information that is non-factual or inaccurate from what was present in the source materials. Requires: [Document embedding and formatting](/azure/ai-services/openai/concepts/content-filter?tabs=warning%2Cuser-prompt%2Cpython-new#embedding-documents-in-your-prompt).|
48+
| Groundedness | Preview |Off | Completion |Detects whether the text responses of large language models (LLMs) are grounded in the source materials provided by the users. Ungroundedness refers to instances where the LLMs produce information that is non-factual or inaccurate from what was present in the source materials. Requires: [Document embedding and formatting](/azure/ai-services/openai/concepts/content-filter?tabs=warning%2Cuser-prompt%2Cpython-new#embedding-documents-in-your-prompt).|
4949

5050
[!INCLUDE [create-content-filter](../../../ai-foundry/includes/create-content-filter.md)]
5151

52+
## Specify a content filtering configuration at request time (preview)
53+
54+
In addition to the deployment-level content filtering configuration, we also provide a request header that allows you specify your custom configuration at request time for every API call.
55+
56+
```bash
57+
curl --request POST \
58+
--url 'URL' \
59+
--header 'Content-Type: application/json' \
60+
--header 'api-key: API_KEY' \
61+
--header 'x-policy-id: CUSTOM_CONTENT_FILTER_NAME' \
62+
--data '{
63+
"messages": [
64+
{
65+
"role": "system",
66+
"content": "You are a creative assistant."
67+
},
68+
{
69+
"role": "user",
70+
"content": "Write a poem about the beauty of nature."
71+
}
72+
]
73+
}'
74+
```
75+
76+
The request-level content filtering configuration will override the deployment-level configuration, for the specific API call. If a configuration is specified that does not exist, the following error message will be returned.
77+
78+
```json
79+
{
80+
"error":
81+
{
82+
"code": "InvalidContentFilterPolicy",
83+
"message": "Your request contains invalid content filter policy. Please provide a valid policy."
84+
}
85+
}
86+
```
87+
5288
## Report content filtering feedback
5389

5490
If you are encountering a content filtering issue, select the **Filters Feedback** button at the top of the playground. This is enabled in the **Images, Chat, and Completions** playground once you submit a prompt.
@@ -66,3 +102,4 @@ We recommend informing your content filtering configuration decisions through an
66102
- Learn more about Responsible AI practices for Azure OpenAI: [Overview of Responsible AI practices for Azure OpenAI models](/legal/cognitive-services/openai/overview?context=/azure/ai-services/openai/context/context).
67103
- Read more about [content filtering categories and severity levels](../concepts/content-filter.md) with Azure AI Foundry.
68104
- Learn more about red teaming from our: [Introduction to red teaming large language models (LLMs) article](../concepts/red-teaming.md).
105+
- Learn how to [configure content filters using the API](/rest/api/aiservices/accountmanagement/rai-policies/create-or-update)

articles/ai-services/openai/includes/model-matrix/provisioned-global.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ ms.date: 03/04/2025
1313
|:-------------------|:----------------------:|:--------------------------:|:--------------------------:|:--------------------------:|:-------------------------------:|
1414
| australiaeast | - |||||
1515
| brazilsouth | - |||||
16-
| canadacentral | - |||||
1716
| canadaeast | - |||||
1817
| eastus ||||||
1918
| eastus2 | - |||||

articles/ai-services/openai/includes/model-matrix/provisioned-models.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ ms.date: 02/28/2025
1313
|:-------------------|:--------------------------:|:--------------------------:|:--------------------------:|:-------------------------------:|:-------------------:|:---------------------------:|:---------------------------:|:-------------------------------:|:-----------------------:|:--------------------------:|:--------------------------:|
1414
| australiaeast ||||||||||||
1515
| brazilsouth || - | - ||||| - ||| - |
16-
| canadacentral || - | - | - || - | - | - || - ||
1716
| canadaeast ||||||| - || - || - |
1817
| eastus ||||||||||||
1918
| eastus2 ||| - |||||||||

articles/ai-services/openai/includes/use-your-data-javascript.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ ms.date: 01/10/2025
4848
4949
// Set the Azure and AI Search values from environment variables
5050
const endpoint = process.env.AZURE_OPENAI_ENDPOINT || "Your endpoint";
51-
const searchEndpoint = process.enV.AZURE_AI_SEARCH_ENDPOINT || "Your search endpoint";
51+
const searchEndpoint = process.env.AZURE_AI_SEARCH_ENDPOINT || "Your search endpoint";
5252
const searchIndex = process.env.AZURE_AI_SEARCH_INDEX || "Your search index";
5353
5454
// keyless authentication

articles/ai-services/openai/whats-new.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,20 @@ ms.custom:
1111
- references_regions
1212
- ignite-2024
1313
ms.topic: whats-new
14-
ms.date: 2/27/2025
14+
ms.date: 03/05/2025
1515
recommendations: false
1616
---
1717

1818
# What's new in Azure OpenAI Service
1919

2020
This article provides a summary of the latest releases and major documentation updates for Azure OpenAI Service.
2121

22+
## March 2025
23+
24+
### Specify content filtering configurations
25+
26+
In addition to the deployment-level content filtering configuration, we now also provide a request header that allows you specify your custom configuration at request time for every API call. For more information, see [Use content filters (preview)](./how-to/content-filters.md#specify-a-content-filtering-configuration-at-request-time-preview).
27+
2228
## February 2025
2329

2430
### GPT-4.5 Preview

articles/machine-learning/concept-model-catalog.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ Deploying a model through MaaS allows users to get access to ready to use infere
126126

127127
### Fine-tune models through MaaS with Pay-as-you-go
128128

129-
For models that are available through MaaS and support fine-tuning, users can take advantage of hosted fine-tuning with pay-as-you-go billing to tailor the models using data they provide. For more information, see [fine-tune a Llama 2 model](/azure/ai-foundry/how-to/fine-tune-model-llama) in [Azure AI Foundry portal](https://ai.azure.com/).
129+
For models that are available through MaaS and support fine-tuning, users can take advantage of hosted fine-tuning with pay-as-you-go billing to tailor the models using data they provide. For more information, see [fine-tune a Llama 2 model](/azure/ai-services/openai/how-to/fine-tuning) in [Azure AI Foundry portal](https://ai.azure.com/).
130130

131131
### RAG with models deployed through MaaS
132132

articles/machine-learning/how-to-add-users.md

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ You need certain permission levels to follow the steps in this article. If you c
3131

3232
When you add a user to your project, you assign them a role to define their level of access. Before you add users, define the roles you want to use.
3333

34-
There is a built-in role for data labeling, scoped only to labeling data. If you want to use the built-in role for all your labelers, skip this section and proceed to [add guest user](#add-guest-user).
34+
There's a built-in role for data labeling, scoped only to labeling data. If you want to use the built-in role for all your labelers, skip this section and proceed to [add guest user](#add-guest-user).
3535

3636
The following custom roles give other levels of access for a data labeling project. Define all the roles you want to use before moving on to add the users.
3737

@@ -47,7 +47,7 @@ The following custom roles give other levels of access for a data labeling proje
4747
1. For the **Custom role name**, type the name you want to use. For example, **Labeling team lead**.
4848
1. In the **Description** box, add a description. For example, **Team leader for labeling projects**.
4949
1. Select **Start from JSON**.
50-
1. Ignore the **Select a file** entry, even though it is starred. You'll create the JSON in a future step.
50+
1. Ignore the **Select a file** entry, even though it's starred. You'll create the JSON in a future step.
5151
1. At the bottom of the page, select **Next**.
5252
1. Skip tabs.
5353
1. Don't do anything for the **Permissions** tab. You add permissions in a later step. Select **Next**.
@@ -58,14 +58,17 @@ The following custom roles give other levels of access for a data labeling proje
5858

5959
:::image type="content" source="media/how-to-add-users/replace-lines.png" alt-text="Create custom role: select lines to replace them in the editor.":::
6060

61-
1. Replace these two lines with the `Actions` and `NotActions` from the appropriate role in the following tabs. Make sure to copy from `Actions` through the closing bracket, `],`.
61+
1. Replace these two lines with the `Actions` and `NotActions` from the appropriate role in the following tabs. Make sure to copy from `Actions` through the closing bracket, `],`.
62+
63+
> [!TIP]
64+
> Don't copy the entire JSON shown here, just the Actions and NotActions sections. Leave the rest of the JSON as it is in the editor.
6265
63-
[!INCLUDE [custom-role-data-labeling](includes/custom-role-data-labeling.md)]
66+
[!INCLUDE [custom-role-data-labeling](includes/custom-role-data-labeling.md)]
6467

6568
1. Select **Save** at the top of the edit box to save your changes.
6669

6770
> [!IMPORTANT]
68-
> Don't select **Next** until you've saved your edits.
71+
> Don't select **Next** until you save your edits.
6972
7073
1. After you save your edits, select **Next**.
7174
1. Select **Create** to create the custom role.
@@ -82,22 +85,22 @@ To add a guest user, your organization's external collaboration settings need th
8285
:::image type="content" source="media/how-to-add-users/menu-active-directory.png" alt-text="Select Microsoft Entra ID from the menu.":::
8386

8487
1. On the left, select **Users**.
85-
1. At the top, select **New user**.
88+
1. At the top, select **Manage > New user**.
8689
1. Select **Invite external user**.
8790
1. Fill in the name and email address for the user.
8891
1. Add a message for the new user.
8992
1. At the bottom of the page, select **Invite**.
9093

9194
:::image type="content" source="media/how-to-add-users/invite-user.png" alt-text="Invite guest user from Microsoft Entra ID.":::
9295

93-
Repeat these steps for each of the guest users. Or use the link at the bottom of the **Invite user** box to invite multiple users in bulk.
96+
Repeat these steps for each of the guest users.
9497

9598
> [!TIP]
96-
> Inform your labelers that they will receive an email. They must accept the invitation in order to gain access to your project.
99+
> Inform your labelers that they'll receive an email. They must accept the invitation in order to gain access to your project.
97100
98101
## Add users to your workspace
99102

100-
Once you have the appropriate users in your system and the role(s) defined, add the users to your workspace so that they can access your data labeling project.
103+
Once you have the appropriate users in your system and the roles defined, add the users to your workspace so that they can access your data labeling project.
101104

102105
To add users to your workspace, you must be an owner of the workspace.
103106

@@ -120,7 +123,7 @@ To add users to your workspace, you must be an owner of the workspace.
120123

121124
## For your labelers
122125

123-
Once labelers have been added as users in the workspace, they can begin labeling in your project. However, they still need information from you to access the project.
126+
Once labelers are added as users in the workspace, they can begin labeling in your project. However, they still need information from you to access the project.
124127

125128
Be sure to create your labeling project before you contact your labelers.
126129

0 commit comments

Comments
 (0)