Rai Policy
Cognitive Services RaiPolicy. Uses Azure REST API version 2023-10-01-preview. Other available API versions: 2024-04-01-preview, 2024-06-01-preview, 2024-10-01, 2025-04-01-preview.
Example Usage
PutRaiPolicy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var raiPolicy = new AzureNative.CognitiveServices.RaiPolicy("raiPolicy", new()
{
AccountName = "accountName",
Properties = new AzureNative.CognitiveServices.Inputs.RaiPolicyPropertiesArgs
{
BasePolicyName = "Microsoft.Default",
ContentFilters = new[]
{
new AzureNative.CognitiveServices.Inputs.RaiPolicyContentFilterArgs
{
AllowedContentLevel = AzureNative.CognitiveServices.AllowedContentLevel.High,
Blocking = false,
Enabled = false,
Name = "hate",
Source = AzureNative.CognitiveServices.RaiPolicyContentSource.Prompt,
},
new AzureNative.CognitiveServices.Inputs.RaiPolicyContentFilterArgs
{
AllowedContentLevel = AzureNative.CognitiveServices.AllowedContentLevel.Medium,
Blocking = true,
Enabled = true,
Name = "hate",
Source = AzureNative.CognitiveServices.RaiPolicyContentSource.Completion,
},
new AzureNative.CognitiveServices.Inputs.RaiPolicyContentFilterArgs
{
AllowedContentLevel = AzureNative.CognitiveServices.AllowedContentLevel.High,
Blocking = true,
Enabled = true,
Name = "sexual",
Source = AzureNative.CognitiveServices.RaiPolicyContentSource.Prompt,
},
new AzureNative.CognitiveServices.Inputs.RaiPolicyContentFilterArgs
{
AllowedContentLevel = AzureNative.CognitiveServices.AllowedContentLevel.Medium,
Blocking = true,
Enabled = true,
Name = "sexual",
Source = AzureNative.CognitiveServices.RaiPolicyContentSource.Completion,
},
new AzureNative.CognitiveServices.Inputs.RaiPolicyContentFilterArgs
{
AllowedContentLevel = AzureNative.CognitiveServices.AllowedContentLevel.High,
Blocking = true,
Enabled = true,
Name = "selfharm",
Source = AzureNative.CognitiveServices.RaiPolicyContentSource.Prompt,
},
new AzureNative.CognitiveServices.Inputs.RaiPolicyContentFilterArgs
{
AllowedContentLevel = AzureNative.CognitiveServices.AllowedContentLevel.Medium,
Blocking = true,
Enabled = true,
Name = "selfharm",
Source = AzureNative.CognitiveServices.RaiPolicyContentSource.Completion,
},
new AzureNative.CognitiveServices.Inputs.RaiPolicyContentFilterArgs
{
AllowedContentLevel = AzureNative.CognitiveServices.AllowedContentLevel.Medium,
Blocking = true,
Enabled = true,
Name = "violence",
Source = AzureNative.CognitiveServices.RaiPolicyContentSource.Prompt,
},
new AzureNative.CognitiveServices.Inputs.RaiPolicyContentFilterArgs
{
AllowedContentLevel = AzureNative.CognitiveServices.AllowedContentLevel.Medium,
Blocking = true,
Enabled = true,
Name = "violence",
Source = AzureNative.CognitiveServices.RaiPolicyContentSource.Completion,
},
new AzureNative.CognitiveServices.Inputs.RaiPolicyContentFilterArgs
{
Blocking = true,
Enabled = true,
Name = "jailbreak",
Source = AzureNative.CognitiveServices.RaiPolicyContentSource.Prompt,
},
new AzureNative.CognitiveServices.Inputs.RaiPolicyContentFilterArgs
{
Blocking = true,
Enabled = true,
Name = "protected_material_text",
Source = AzureNative.CognitiveServices.RaiPolicyContentSource.Completion,
},
new AzureNative.CognitiveServices.Inputs.RaiPolicyContentFilterArgs
{
Blocking = true,
Enabled = true,
Name = "protected_material_code",
Source = AzureNative.CognitiveServices.RaiPolicyContentSource.Completion,
},
new AzureNative.CognitiveServices.Inputs.RaiPolicyContentFilterArgs
{
Blocking = true,
Enabled = true,
Name = "profanity",
Source = AzureNative.CognitiveServices.RaiPolicyContentSource.Prompt,
},
},
Mode = AzureNative.CognitiveServices.RaiPolicyMode.Deferred,
},
RaiPolicyName = "raiPolicyName",
ResourceGroupName = "resourceGroupName",
});
});
Content copied to clipboard
package main
import (
cognitiveservices "github.com/pulumi/pulumi-azure-native-sdk/cognitiveservices/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := cognitiveservices.NewRaiPolicy(ctx, "raiPolicy", &cognitiveservices.RaiPolicyArgs{
AccountName: pulumi.String("accountName"),
Properties: &cognitiveservices.RaiPolicyPropertiesArgs{
BasePolicyName: pulumi.String("Microsoft.Default"),
ContentFilters: cognitiveservices.RaiPolicyContentFilterArray{
&cognitiveservices.RaiPolicyContentFilterArgs{
AllowedContentLevel: pulumi.String(cognitiveservices.AllowedContentLevelHigh),
Blocking: pulumi.Bool(false),
Enabled: pulumi.Bool(false),
Name: pulumi.String("hate"),
Source: pulumi.String(cognitiveservices.RaiPolicyContentSourcePrompt),
},
&cognitiveservices.RaiPolicyContentFilterArgs{
AllowedContentLevel: pulumi.String(cognitiveservices.AllowedContentLevelMedium),
Blocking: pulumi.Bool(true),
Enabled: pulumi.Bool(true),
Name: pulumi.String("hate"),
Source: pulumi.String(cognitiveservices.RaiPolicyContentSourceCompletion),
},
&cognitiveservices.RaiPolicyContentFilterArgs{
AllowedContentLevel: pulumi.String(cognitiveservices.AllowedContentLevelHigh),
Blocking: pulumi.Bool(true),
Enabled: pulumi.Bool(true),
Name: pulumi.String("sexual"),
Source: pulumi.String(cognitiveservices.RaiPolicyContentSourcePrompt),
},
&cognitiveservices.RaiPolicyContentFilterArgs{
AllowedContentLevel: pulumi.String(cognitiveservices.AllowedContentLevelMedium),
Blocking: pulumi.Bool(true),
Enabled: pulumi.Bool(true),
Name: pulumi.String("sexual"),
Source: pulumi.String(cognitiveservices.RaiPolicyContentSourceCompletion),
},
&cognitiveservices.RaiPolicyContentFilterArgs{
AllowedContentLevel: pulumi.String(cognitiveservices.AllowedContentLevelHigh),
Blocking: pulumi.Bool(true),
Enabled: pulumi.Bool(true),
Name: pulumi.String("selfharm"),
Source: pulumi.String(cognitiveservices.RaiPolicyContentSourcePrompt),
},
&cognitiveservices.RaiPolicyContentFilterArgs{
AllowedContentLevel: pulumi.String(cognitiveservices.AllowedContentLevelMedium),
Blocking: pulumi.Bool(true),
Enabled: pulumi.Bool(true),
Name: pulumi.String("selfharm"),
Source: pulumi.String(cognitiveservices.RaiPolicyContentSourceCompletion),
},
&cognitiveservices.RaiPolicyContentFilterArgs{
AllowedContentLevel: pulumi.String(cognitiveservices.AllowedContentLevelMedium),
Blocking: pulumi.Bool(true),
Enabled: pulumi.Bool(true),
Name: pulumi.String("violence"),
Source: pulumi.String(cognitiveservices.RaiPolicyContentSourcePrompt),
},
&cognitiveservices.RaiPolicyContentFilterArgs{
AllowedContentLevel: pulumi.String(cognitiveservices.AllowedContentLevelMedium),
Blocking: pulumi.Bool(true),
Enabled: pulumi.Bool(true),
Name: pulumi.String("violence"),
Source: pulumi.String(cognitiveservices.RaiPolicyContentSourceCompletion),
},
&cognitiveservices.RaiPolicyContentFilterArgs{
Blocking: pulumi.Bool(true),
Enabled: pulumi.Bool(true),
Name: pulumi.String("jailbreak"),
Source: pulumi.String(cognitiveservices.RaiPolicyContentSourcePrompt),
},
&cognitiveservices.RaiPolicyContentFilterArgs{
Blocking: pulumi.Bool(true),
Enabled: pulumi.Bool(true),
Name: pulumi.String("protected_material_text"),
Source: pulumi.String(cognitiveservices.RaiPolicyContentSourceCompletion),
},
&cognitiveservices.RaiPolicyContentFilterArgs{
Blocking: pulumi.Bool(true),
Enabled: pulumi.Bool(true),
Name: pulumi.String("protected_material_code"),
Source: pulumi.String(cognitiveservices.RaiPolicyContentSourceCompletion),
},
&cognitiveservices.RaiPolicyContentFilterArgs{
Blocking: pulumi.Bool(true),
Enabled: pulumi.Bool(true),
Name: pulumi.String("profanity"),
Source: pulumi.String(cognitiveservices.RaiPolicyContentSourcePrompt),
},
},
Mode: pulumi.String(cognitiveservices.RaiPolicyModeDeferred),
},
RaiPolicyName: pulumi.String("raiPolicyName"),
ResourceGroupName: pulumi.String("resourceGroupName"),
})
if err != nil {
return err
}
return nil
})
}
Content copied to clipboard
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.cognitiveservices.RaiPolicy;
import com.pulumi.azurenative.cognitiveservices.RaiPolicyArgs;
import com.pulumi.azurenative.cognitiveservices.inputs.RaiPolicyPropertiesArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var raiPolicy = new RaiPolicy("raiPolicy", RaiPolicyArgs.builder()
.accountName("accountName")
.properties(RaiPolicyPropertiesArgs.builder()
.basePolicyName("Microsoft.Default")
.contentFilters(
RaiPolicyContentFilterArgs.builder()
.allowedContentLevel("High")
.blocking(false)
.enabled(false)
.name("hate")
.source("Prompt")
.build(),
RaiPolicyContentFilterArgs.builder()
.allowedContentLevel("Medium")
.blocking(true)
.enabled(true)
.name("hate")
.source("Completion")
.build(),
RaiPolicyContentFilterArgs.builder()
.allowedContentLevel("High")
.blocking(true)
.enabled(true)
.name("sexual")
.source("Prompt")
.build(),
RaiPolicyContentFilterArgs.builder()
.allowedContentLevel("Medium")
.blocking(true)
.enabled(true)
.name("sexual")
.source("Completion")
.build(),
RaiPolicyContentFilterArgs.builder()
.allowedContentLevel("High")
.blocking(true)
.enabled(true)
.name("selfharm")
.source("Prompt")
.build(),
RaiPolicyContentFilterArgs.builder()
.allowedContentLevel("Medium")
.blocking(true)
.enabled(true)
.name("selfharm")
.source("Completion")
.build(),
RaiPolicyContentFilterArgs.builder()
.allowedContentLevel("Medium")
.blocking(true)
.enabled(true)
.name("violence")
.source("Prompt")
.build(),
RaiPolicyContentFilterArgs.builder()
.allowedContentLevel("Medium")
.blocking(true)
.enabled(true)
.name("violence")
.source("Completion")
.build(),
RaiPolicyContentFilterArgs.builder()
.blocking(true)
.enabled(true)
.name("jailbreak")
.source("Prompt")
.build(),
RaiPolicyContentFilterArgs.builder()
.blocking(true)
.enabled(true)
.name("protected_material_text")
.source("Completion")
.build(),
RaiPolicyContentFilterArgs.builder()
.blocking(true)
.enabled(true)
.name("protected_material_code")
.source("Completion")
.build(),
RaiPolicyContentFilterArgs.builder()
.blocking(true)
.enabled(true)
.name("profanity")
.source("Prompt")
.build())
.mode("Deferred")
.build())
.raiPolicyName("raiPolicyName")
.resourceGroupName("resourceGroupName")
.build());
}
}
Content copied to clipboard
Import
An existing resource can be imported using its type token, name, and identifier, e.g.
$ pulumi import azure-native:cognitiveservices:RaiPolicy raiPolicyName /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{accountName}/raiPolicies/{raiPolicyName}
Content copied to clipboard