Поделиться через


Модерация безопасности содержимого с помощью API ИИ Windows

API-интерфейсы ИИ Windows, такие как Phi Silica и Imaging, используют модерацию содержимого для классификации и фильтрации потенциально вредного содержимого от запросов пользователей или ответов, возвращаемых генерирующими моделями. По умолчанию эти API фильтруют содержимое, классифицированное как потенциально опасное, но уровни чувствительности можно настроить.

Сведения об API см. в справочнике API для модерации безопасности содержимого.

Необходимые условия

Выполните действия, описанные в статье "Начало создания приложения с помощью API ИИ Windows".

Настройка модерации безопасности содержимого

Вы можете настроить модерацию содержимого в вводном запросе на созданную модель и выходные данные искусственного интеллекта. Модерация содержимого API ИИ Windows разработана и реализована аналогично той, которую предоставляет безопасность содержимого ИИ Azure.

Категории вреда

Категории вреда, поддерживаемые API-интерфейсами ИИ Windows, соответствуют категориям, определенным в службе "Безопасность содержимого ИИ Azure". Категории вреда включают ненависть и справедливость, сексуальное, насилие и самоповредение (несколько категорий могут быть назначены одному и тому же содержимому).

Категория Описание Имя API
Ненависть Контент, который атакует или использует дискриминационный язык по отношению к человеку или группе идентичности на основе определенных атрибутов этих групп. HateContentSeverity
Половой Содержание, связанное с анатомическими органами и гениталиями, романтическими отношениями и сексуальными актами, действия, изображаемые в эротических или нежных терминах, включая те, которые изображаются как нападение или принудительный сексуальный насильственный акт против воли. SexualContentSeverity
Насилие Содержимое, связанное с физическими действиями, предназначенными для нанесения ранения, повреждения или убийства кого-то или чего-то; описывает вооружение, оружие и связанные с этим предметы. ViolentContentSeverity
Самоповредение Содержание, относящееся к физическим действиям, направленным на нанесение боли, ранения, повреждения тела или самоубийство. SelfHarmContentSeverity

Уровни серьезности

По умолчанию все вызовы API Windows для генеративного ИИ используют модерацию содержимого, но уровни строгости можно настроить.

  • high: недоступно. Содержимое, классифицируемое как имеющее уровень риска 3+ (высокий риск для потенциального вреда), в настоящее время блокируется генеративной моделью искусственного интеллекта от возвращения.

  • medium: для уровня серьезности по умолчанию задано значение medium. Содержимое, классифицированное как уровень серьезности 0 – 3, будет возвращено.

  • low: еще больше снижает риск возвращения потенциально вредного содержимого. Возвращается только содержимое, классифицированное как уровень серьезности 0 – 1.

Дополнительные сведения о уровнях серьезности см. в статье "Категории вреда безопасности содержимого ИИ Azure".

Пример кода модерации текста

Чтобы настроить фильтры серьезности модерации текста, необходимо передать структуру ContentFilterOptions в качестве параметра API, используемого для создания ответов (например, API Phi Silica).

В следующем примере кода показано добавление фильтров серьезности модерации текстового содержимого в 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);

См. также