Moderação de Segurança de Conteúdo com o Windows Copilot Runtime
Importante
Disponível no canal experimental mais recente versão do SDK de Aplicativos Windows.
O canal experimental do SDK de Aplicativos Windows inclui APIs e recursos em estágios iniciais de desenvolvimento. Todas as APIs no canal experimental estão sujeitas a extensas revisões e alterações de quebra e podem ser removidas de versões subsequentes a qualquer momento. Os recursos experimentais não são suportados para uso em ambientes de produção e os aplicativos que os usam não podem ser publicados na Microsoft Store.
As APIs de Runtime do Windows Copilot, como a API Phi Silica ou a API Imaging, implementam a Moderação de Conteúdo de Texto para classificar e filtrar conteúdo potencialmente prejudicial de serem gerados ou apresentados por esses modelos generativos. A API filtrará o conteúdo classificado como potencialmente prejudicial por padrão, no entanto, os desenvolvedores podem configurar diferentes níveis de sensibilidade.
Pré-requisitos
- As APIs Runtime do Windows Copilot exigem um PC Copilot+ que contenha um chip Qualcomm.
- Arm64EC (Emulation Compatible) não é suportado atualmente.
- Windows 11 Insider Preview Build 26120.3073 (Canais Dev e Beta) ou posterior deve estar instalado no seu dispositivo.
Moderação de conteúdo de texto
Você pode ajustar a moderação de conteúdo no prompt de entrada para o modelo generativo e a saída gerada por IA. A moderação de conteúdo das APIs de Runtime do Windows Copilot é desenvolvida e implementada de forma semelhante à fornecida pelo Azure AI Content Safety.
Categorias de danos
As categorias de danos alinham-se com as definições usadas na Segurança de Conteúdo do Azure AI e podem ser encontradas na orientação da Segurança de Conteúdo do Azure AI . As categorias de danos incluem: Ódio e Justiça, Conteúdo sexual, Violência ou Automutilação, e podem incluir vários rótulos no mesmo conteúdo.
Estas quatro categorias, que classificam os conteúdos potencialmente nocivos, permitem ajustar os filtros de sensibilidade.
Categoria | Descrição | Nome da API |
---|---|---|
Ódio | Os danos causados por ódio e injustiça referem-se a qualquer conteúdo que ataque ou use linguagem discriminatória em relação a uma pessoa ou grupo identitário com base em certos atributos diferenciadores desses grupos. | HateContentSeverity |
Sexual | Sexual descreve linguagem relacionada 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 sexual violento forçado contra a vontade. | SexualContentSeverity |
Violência | A violência descreve a linguagem relacionada a ações físicas destinadas a ferir, ferir, danificar ou matar alguém ou algo; descreve armas, armas e entidades relacionadas. | ViolentContentSeverity |
Automutilação | A automutilação descreve a linguagem relacionada com ações físicas destinadas a magoar, ferir, danificar o próprio corpo ou matar-se propositadamente. | SelfHarmContentSeverity |
Níveis de severidade
Por padrão, todas as chamadas para APIs generativas do tempo de execução do Windows Copilot utilizam moderação de conteúdo, mas o nível de severidade pode ser ajustado.
high
: Não disponível. O conteúdo classificado como nível de gravidade 3+ (alto risco de dano potencial) está atualmente impedido de ser retornado pelo modelo de IA generativa.medium
: O nível de gravidade padrão é definido comomedium
. O conteúdo classificado como nível de gravidade 0 - 3 será retornado.low
: Reduz ainda mais o risco de devolução de conteúdos potencialmente nocivos. Somente o conteúdo classificado como nível de gravidade 0 - 1 será retornado.
Para saber mais sobre os níveis de gravidade, consulte Categorias de Danos à Segurança de Conteúdo da IA do Azure.
Exemplo de código de moderação de conteúdo de texto
Para configurar filtros de gravidade de moderação de conteúdo de texto incorporados no Windows Copilot Runtime, é necessário passar a estrutura ContentFilterOptions
como parâmetro para a API utilizada na geração de resposta, como a API Phi Silica.
O exemplo de código a seguir demonstra a adição de filtros de gravidade de moderação de conteúdo de texto para o Microsoft Windows Generative AI LanguageModel
:
var languageModelOptions = new LanguageModelOptions {
Temp = 0.9f,
Top_p = 0.9f,
Top_k = 40
};
var promptMinSeverityLevelToBlock = new TextContentFilterSeverity {
HateContentSeverity = SeverityLevel.Low,
SexualContentSeverity = SeverityLevel.Low,
ViolentContentSeverity = SeverityLevel.Medium,
SelfHarmContentSeverity = SeverityLevel.Low
};
var responseMinSeverityLevelToBlock = new TextContentFilterSeverity {
HateContentSeverity = SeverityLevel.Low,
SexualContentSeverity = SeverityLevel.Low,
ViolentContentSeverity = SeverityLevel.Low,
SelfHarmContentSeverity = SeverityLevel.Medium
};
var contentFilterOptions = new ContentFilterOptions {
PromptMinSeverityLevelToBlock = promptMinSeverityLevelToBlock,
ResponseMinSeverityLevelToBlock = responseMinSeverityLevelToBlock
};
IProgress<string> progress;
var languageModelResponseWithProgress = model.GenerateResponseWithProgressAsync(languageModelOptions, prompt, contentFilterOptions);
languageModelRepsonseWithProgress.Progress = (_, generationProgress) =>
{
progress.Report(generationProgress);
};
string response = (await languageModelResponseWithProgress).Response;