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
Copy file name to clipboardExpand all lines: articles/ai-foundry/includes/create-content-filter.md
+3-1Lines changed: 3 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ ms.reviewer: pafarley
6
6
ms.author: pafarley
7
7
ms.service: azure-ai-foundry
8
8
ms.topic: include
9
-
ms.date: 11/25/2024
9
+
ms.date: 03/05/2025
10
10
ms.custom: include
11
11
---
12
12
@@ -74,3 +74,5 @@ Follow these steps to apply a content filter to a deployment:
74
74
75
75
Now, you can go to the playground to test whether the content filter works as expected.
76
76
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).
Copy file name to clipboardExpand all lines: articles/ai-services/openai/how-to/content-filters.md
+41-4Lines changed: 41 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,20 +1,20 @@
1
1
---
2
-
title: 'Use content filters (preview) with Azure AI Foundry'
2
+
title: 'Use content filters (preview)'
3
3
titleSuffix: Azure OpenAI
4
4
description: Learn how to use and configure the content filters that come with Azure AI Foundry, including getting approval for gated modifications.
5
5
#services: cognitive-services
6
6
manager: nitinme
7
7
ms.service: azure-ai-openai
8
8
ms.topic: how-to
9
-
ms.date: 12/05/2024
9
+
ms.date: 03/05/2025
10
10
author: mrbullwinkle
11
11
ms.author: mbullwin
12
12
recommendations: false
13
13
ms.custom: FY25Q1-Linter
14
14
# 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.
15
15
---
16
16
17
-
# How to configure content filters with Azure AI Foundry
17
+
# How to configure content filters
18
18
19
19
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.
20
20
@@ -45,10 +45,46 @@ You can configure the following filter categories in addition to the default har
45
45
|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). |
46
46
| 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)|
47
47
| 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).|
## 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.
"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
+
52
88
## Report content filtering feedback
53
89
54
90
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
66
102
- 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).
67
103
- Read more about [content filtering categories and severity levels](../concepts/content-filter.md) with Azure AI Foundry.
68
104
- 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)
Copy file name to clipboardExpand all lines: articles/ai-services/openai/whats-new.md
+7-1Lines changed: 7 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,14 +11,20 @@ ms.custom:
11
11
- references_regions
12
12
- ignite-2024
13
13
ms.topic: whats-new
14
-
ms.date: 2/27/2025
14
+
ms.date: 03/05/2025
15
15
recommendations: false
16
16
---
17
17
18
18
# What's new in Azure OpenAI Service
19
19
20
20
This article provides a summary of the latest releases and major documentation updates for Azure OpenAI Service.
21
21
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).
Copy file name to clipboardExpand all lines: articles/machine-learning/concept-model-catalog.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -126,7 +126,7 @@ Deploying a model through MaaS allows users to get access to ready to use infere
126
126
127
127
### Fine-tune models through MaaS with Pay-as-you-go
128
128
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/).
Copy file name to clipboardExpand all lines: articles/machine-learning/how-to-add-users.md
+13-10Lines changed: 13 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -31,7 +31,7 @@ You need certain permission levels to follow the steps in this article. If you c
31
31
32
32
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.
33
33
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).
35
35
36
36
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.
37
37
@@ -47,7 +47,7 @@ The following custom roles give other levels of access for a data labeling proje
47
47
1. For the **Custom role name**, type the name you want to use. For example, **Labeling team lead**.
48
48
1. In the **Description** box, add a description. For example, **Team leader for labeling projects**.
49
49
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.
51
51
1. At the bottom of the page, select **Next**.
52
52
1. Skip tabs.
53
53
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
58
58
59
59
:::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.":::
60
60
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.
1. Select **Save** at the top of the edit box to save your changes.
66
69
67
70
> [!IMPORTANT]
68
-
> Don't select **Next** until you've saved your edits.
71
+
> Don't select **Next** until you save your edits.
69
72
70
73
1. After you save your edits, select **Next**.
71
74
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
82
85
:::image type="content" source="media/how-to-add-users/menu-active-directory.png" alt-text="Select Microsoft Entra ID from the menu.":::
83
86
84
87
1. On the left, select **Users**.
85
-
1. At the top, select **New user**.
88
+
1. At the top, select **Manage > New user**.
86
89
1. Select **Invite external user**.
87
90
1. Fill in the name and email address for the user.
88
91
1. Add a message for the new user.
89
92
1. At the bottom of the page, select **Invite**.
90
93
91
94
:::image type="content" source="media/how-to-add-users/invite-user.png" alt-text="Invite guest user from Microsoft Entra ID.":::
92
95
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.
94
97
95
98
> [!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.
97
100
98
101
## Add users to your workspace
99
102
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.
101
104
102
105
To add users to your workspace, you must be an owner of the workspace.
103
106
@@ -120,7 +123,7 @@ To add users to your workspace, you must be an owner of the workspace.
120
123
121
124
## For your labelers
122
125
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.
124
127
125
128
Be sure to create your labeling project before you contact your labelers.
0 commit comments