Compartilhar via


Moderação de segurança de conteúdo com as APIs de IA do Windows

As APIs de IA do Windows, como Phi Silica e Imaging, usam a moderação de conteúdo para classificar e filtrar conteúdo potencialmente prejudicial de prompts do usuário ou em respostas retornadas pelos modelos generativos. Por padrão, essas API filtram o conteúdo classificado como potencialmente prejudicial, mas os níveis de confidencialidade podem ser configurados.

Para detalhes da API, veja referência da API para moderação de segurança de conteúdo.

Pré-requisitos

Conclua as etapas em Introdução à criação de um aplicativo com APIs de IA do Windows.

Ajustar a moderação de segurança de conteúdo

Você pode ajustar a moderação de conteúdo no prompt de entrada para o modelo de geração e a saída gerada pela IA. A moderação de conteúdo da API de IA do Windows foi projetada e implementada de forma semelhante à fornecida pela Segurança de Conteúdo de IA do Azure.

Categorias de danos

As categorias de danos com suporte pelas APIs de IA do Windows se alinham às definidas pela Segurança de Conteúdo de IA do Azure. As categorias de danos incluem Ódio e imparcialidade, Sexual, Violência e Automutilação (várias categorias podem ser atribuídas ao mesmo conteúdo).

Categoria Descrição Nome da API
Ódio Conteúdo que ataca ou usa linguagem discriminatória com referência a uma pessoa ou grupo de identidade com base em determinados atributos diferenciais desses grupos. HateContentSeverity
Sexual Conteúdo relacionado a órgãos anatômicos e genitais, relacionamentos românticos e atos sexuais, atos retratados em termos eróticos ou afetuosos, incluindo aqueles retratados como uma agressão ou um ato violento sexual forçado contra a vontade. SexualContentSeverity
Violência Conteúdo relacionado a ações físicas destinadas a ferir, ferir, danificar ou matar alguém ou algo assim; descreve armas, armas e entidades relacionadas. ViolentContentSeverity
Automutilação Conteúdo relacionado a ações físicas destinadas a machucar, ferir, danificar o próprio corpo ou a matar-se propositalmente. SelfHarmContentSeverity

Níveis de severidade

Por padrão, todas as chamadas para APIs de IA do Windows gerativas usam moderação de conteúdo, mas os níveis de severidade podem ser ajustados.

  • high: não disponível. O conteúdo classificado como nível de severidade 3+ (alto risco para possíveis danos) está impedido de ser retornado pelo modelo de IA generativo.

  • medium: o nível de severidade padrão é definido como medium. O conteúdo classificado como nível de severidade 0 a 3 será retornado.

  • low: reduz ainda mais o risco de retornar conteúdo potencialmente prejudicial. Somente o conteúdo classificado como nível de severidade 0 a 1 será retornado.

Para saber mais sobre os níveis de gravidade, consulte Categorias de Prejuízo da Segurança de Conteúdo de IA do Azure.

Exemplo de código de moderação de conteúdo de texto

Para configurar os filtros de severidade de Moderação de Conteúdo de Texto, você deve passar o struct ContentFilterOptions como um parâmetro para a API usada para geração de resposta (como a API Phi Silica).

O exemplo de código a seguir demonstra a adição de filtros de severidade de Moderação de Conteúdo de Texto ao Microsoft Windows Generative AI LanguageModel:

LanguageModelOptions options = new LanguageModelOptions();
ContentFilterOptions filterOptions = new ContentFilterOptions();

// prompt
filterOptions.PromptMaxAllowedSeverityLevel.Violent = SeverityLevel.Minimum;
filterOptions.PromptMaxAllowedSeverityLevel.Hate = SeverityLevel.Low;
filterOptions.PromptMaxAllowedSeverityLevel.SelfHarm = SeverityLevel.Medium;
filterOptions.PromptMaxAllowedSeverityLevel.Sexual = SeverityLevel.High;

//response
filterOptions.ResponseMaxAllowedSeverityLevel.Violent = SeverityLevel.Medium;

//image
filterOptions.ImageMaxAllowedSeverityLevel.AdultContentLevel = SeverityLevel.Medium;
filterOptions.ImageMaxAllowedSeverityLevel.RacyContentLevel = SeverityLevel.Medium;

options.ContentFilterOptions = filterOptions;

var result = await languageModel.GenerateResponseAsync(prompt, options);

Console.WriteLine(result.Text);

Consulte também