Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Начните применять основную модерацию текста с помощью Центра безопасности контента, REST API или клиентских библиотек. Служба безопасности содержимого Azure предоставляет алгоритмы ИИ для пометки неприемлемого содержимого. Чтобы попробовать его, выполните следующие действия.
Дополнительные сведения о модерации текста см. на странице концепции категорий "Вред". Сведения о ограничениях ввода API см. в разделе "Требования к входным данным" в разделе "Обзор".
Внимание
Примеры данных и кода могут содержать оскорбительный контент. Рекомендуется использовать усмотрение пользователя.
Предварительные условия
- Учетная запись Azure. Если у вас нет учетной записи, вы можете создать ее бесплатно.
- Ресурс Azure ИИ
Настройка
Чтобы воспользоваться страницей Попробуйте Безопасность содержимого, выполните следующие действия:
- Перейдите в Azure AI Foundry и перейдите к проекту или центру. Затем выберите вкладку "Guardrails + элементы управления" на левой панели навигации и выберите вкладку "Попробовать".
- На странице "Попробовать" можно поэкспериментировать с различными функциями Guardrails и возможностями управления, например, текстом и изображениями, используя настраиваемые пороговые значения для фильтрации неуместного или вредного содержимого.
Анализ текста
- Выберите панель "Умеренное текстовое содержимое".
- Добавьте текст в поле ввода или выделите пример текста на панели на странице.
- Выберите Запустить тест. Служба возвращает все обнаруженные категории с уровнем серьезности для каждой: 0 - Безопасно, 2 - Низкий, 4 - Средний, 6 - Высокий. Он также возвращает двоичный результат "Принято отклонено/" на основе настроенных фильтров. Используйте матрицу на вкладке "Настройка фильтров" , чтобы задать допустимые или запрещенные уровни серьезности для каждой категории. Затем вы можете снова запустить текст, чтобы узнать, как работает фильтр.
Просмотр и экспорт кода
Для просмотра и копирования примера кода можно использовать функцию Просмотр кода на страницах Анализ содержимого текста или Анализ содержимого изображения, которая включает конфигурацию для фильтрации по степени важности, черных списков и функций модерации. Затем вы можете развернуть код у себя.
Предварительные условия
- подписка Azure — создайте бесплатную учетную запись.
- После получения подписки Azure создайте ресурс безопасности содержимого в портал Azure, чтобы получить ключ и конечную точку. Введите уникальное имя ресурса, выберите подписку и выберите группу ресурсов, поддерживаемый регион (см . доступность региона) и поддерживаемую ценовую категорию. Затем выберите Создать.
- Развертывание ресурса занимает несколько минут. После завершения выберите перейти к ресурсу. В области слева в разделе "Управление ресурсами" выберите "Ключ подписки" и "Конечная точка". Конечная точка и любой из ключей используются для вызова API.
- Установлен cURL.
Анализ текстового содержимого
В следующем разделе описывается пример запроса с cURL. Вставьте приведенную ниже команду в текстовый редактор и внесите следующие изменения.
- Замените
<endpoint>URL-адрес конечной точки, связанный с ресурсом. - Замените
<your_subscription_key>одним из ключей, предоставленных с вашим ресурсом. - При необходимости замените
"text"поле в тексте собственным текстом, который вы хотите проанализировать.Совет
Размер текста и степень детализации
См . сведения о требованиях к входным данным для ограничений максимальной длины текста.
curl --location --request POST '<endpoint>/contentsafety/text:analyze?api-version=2024-09-01' \
--header 'Ocp-Apim-Subscription-Key: <your_subscription_key>' \
--header 'Content-Type: application/json' \
--data-raw '{
"text": "I hate you",
"categories": ["Hate", "Sexual", "SelfHarm", "Violence"],
"blocklistNames": ["string"],
"haltOnBlocklistHit": true,
"outputType": "FourSeverityLevels"
}'
Следующие поля должны быть включены в URL-адрес:
| Имя | Обязательно | Описание | Тип |
|---|---|---|---|
| Версия API | Обязательно | Это проверяемая версия API. Текущая версия: api-version=2024-09-01. Пример: <endpoint>/contentsafety/text:analyze?api-version=2024-09-01 |
Строка |
Параметры в тексте запроса определяются в этой таблице:
| Имя | Обязательно | Описание | Тип |
|---|---|---|---|
| текст | Обязательно | Это необработанный текст для проверки. Другие символы, отличные от ascii, могут быть включены. | Строка |
| Категории | Необязательно | Предполагается, что это массив имен категорий. См. руководство по категориям вреда для списка доступных имен категорий. Если категории не указаны, используются все четыре категории. Мы используем несколько категорий, чтобы получить оценки в одном запросе. | Строка |
| blocklistNames | Необязательно | Имя черного списка текста. Поддерживаются только следующие символы: 0-9 A-Z a-z - . _ ~ Вы можете здесь добавить несколько имен списков. |
Массив |
| haltOnBlocklistHit | Необязательно | Если параметр установлен на true, дальнейший анализ вредного содержимого не будет выполняться в случаях, когда срабатывают черные списки. Если установлено значение false, будут выполняться все анализы на наличие вредоносного контента, независимо от того, срабатывают ли списки блокировки. |
Логический |
| типВывода | Необязательно |
"FourSeverityLevels" или "EightSeverityLevels". Уровень серьезности выходных данных в четырех или восьми уровнях может быть 0,2,4,6 или 0,1,2,3,4,5,6,7. |
Строка |
См. следующий пример текста запроса:
{
"text": "I hate you",
"categories": ["Hate", "Sexual", "SelfHarm", "Violence"],
"blocklistNames": ["array"],
"haltOnBlocklistHit": false,
"outputType": "FourSeverityLevels"
}
Откройте окно командной строки, вставьте измененную команду cURL и запустите ее.
Выходные данные
В выходных данных консоли должны отображаться результаты модерации текста, отображаемые в виде данных JSON. Например:
{
"blocklistsMatch": [
{
"blocklistName": "string",
"blocklistItemId": "string",
"blocklistItemText": "string"
}
],
"categoriesAnalysis": [
{
"category": "Hate",
"severity": 2
},
{
"category": "SelfHarm",
"severity": 0
},
{
"category": "Sexual",
"severity": 0
},
{
"category": "Violence",
"severity": 0
}
]
}
Поля JSON в выходных данных определяются здесь:
| Имя | Описание | Тип |
|---|---|---|
| КатегорииАнализ | Каждый выходной класс, прогнозируемый API. Классификация может иметь несколько меток. Например, если пример текста выполняется через модель модерации текста, его можно классифицировать как сексуальное содержимое, так и насилие. Категории вреда | Строка |
| Серьезность | Чем выше уровень серьезности входного содержимого, тем больше это значение. | Целое |
Справочная документация | Исходный код библиотеки | Пакет (NuGet) | Примеры
Предварительные условия
- подписка Azure — создайте бесплатную учетную запись.
- Интегрированная среда разработки Visual Studio с включённой компонентой разработки настольных приложений .NET. Или если вы не планируете использовать интегрированную среду разработки Visual Studio, вам нужна текущая версия .NET Core.
- После получения подписки Azure создайте ресурс безопасности содержимого в портал Azure, чтобы получить ключ и конечную точку. Введите уникальное имя ресурса, выберите подписку и выберите группу ресурсов, поддерживаемый регион (см . доступность региона) и поддерживаемую ценовую категорию. Затем выберите Создать.
- Развертывание ресурса занимает несколько минут. После завершения выберите перейти к ресурсу. В области слева в разделе "Управление ресурсами" выберите "Ключ подписки" и "Конечная точка". Конечная точка и любой из ключей используются для вызова API.
Настройка приложения
Создайте приложение C#.
Откройте Visual Studio и в разделе "Начало работы " выберите "Создать проект". Задайте для фильтров шаблонов значение C#/All Platform/Console. Выберите консольное приложение (приложение командной строки, которое может работать в .NET в Windows, Linux и macOS) и нажмите кнопку "Далее". Измените имя проекта на ContentSafetyQuickstart и нажмите кнопку "Далее". Выберите .NET 6.0 или более поздней версии и нажмите кнопку "Создать ", чтобы создать проект.
Установка клиентского пакета SDK
После создания нового проекта установите клиентский пакет SDK, щелкнув правой кнопкой мыши решение проекта в Обозреватель решений и выбрав "Управление пакетами NuGet". В открывшемся диспетчере пакетов выберите Просмотр и выполните поиск по запросу Azure.AI.ContentSafety. Выберите Установить.
Создание переменной среды
В этом примере учетные данные записываются в переменные среды на локальном компьютере, на котором запущено приложение.
Чтобы задать переменную среды для ключа и конечной точки, откройте окно консоли и следуйте инструкциям для операционной системы и среды разработки.
- Чтобы задать
CONTENT_SAFETY_KEYпеременную среды, заменитеYOUR_CONTENT_SAFETY_KEYодним из ключей ресурса. - Чтобы задать переменную среды, замените
CONTENT_SAFETY_ENDPOINTна конечную точку вашего ресурсаYOUR_CONTENT_SAFETY_ENDPOINT.
Внимание
Используйте ключи API с осторожностью. Не включайте ключ API непосредственно в код и никогда не публикуйте его. Если вы используете ключ API, сохраните его безопасно в Azure Key Vault. Дополнительные сведения об использовании ключей API безопасно в приложениях см. в разделе "Ключи API" с помощью Azure Key Vault.
Дополнительные сведения о безопасности служб ИИ см. в статье "Проверка подлинности запросов к службам ИИ Azure".
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'
После добавления переменных среды может потребоваться перезапустить все запущенные программы, которые будут считывать переменные среды, включая окно консоли.
Анализ текстового содержимого
В каталоге проекта откройте файл Program.cs , созданный ранее. Вставьте следующий код.
using System;
using Azure.AI.ContentSafety;
namespace Azure.AI.ContentSafety.Dotnet.Sample
{
class ContentSafetySampleAnalyzeText
{
public static void AnalyzeText()
{
// retrieve the endpoint and key from the environment variables created earlier
string endpoint = Environment.GetEnvironmentVariable("CONTENT_SAFETY_ENDPOINT");
string key = Environment.GetEnvironmentVariable("CONTENT_SAFETY_KEY");
ContentSafetyClient client = new ContentSafetyClient(new Uri(endpoint), new AzureKeyCredential(key));
string text = "Your input text";
var request = new AnalyzeTextOptions(text);
Response<AnalyzeTextResult> response;
try
{
response = client.AnalyzeText(request);
}
catch (RequestFailedException ex)
{
Console.WriteLine("Analyze text failed.\nStatus code: {0}, Error code: {1}, Error message: {2}", ex.Status, ex.ErrorCode, ex.Message);
throw;
}
Console.WriteLine("\nAnalyze text succeeded:");
Console.WriteLine("Hate severity: {0}", response.Value.CategoriesAnalysis.FirstOrDefault(a => a.Category == TextCategory.Hate)?.Severity ?? 0);
Console.WriteLine("SelfHarm severity: {0}", response.Value.CategoriesAnalysis.FirstOrDefault(a => a.Category == TextCategory.SelfHarm)?.Severity ?? 0);
Console.WriteLine("Sexual severity: {0}", response.Value.CategoriesAnalysis.FirstOrDefault(a => a.Category == TextCategory.Sexual)?.Severity ?? 0);
Console.WriteLine("Violence severity: {0}", response.Value.CategoriesAnalysis.FirstOrDefault(a => a.Category == TextCategory.Violence)?.Severity ?? 0);
}
static void Main()
{
AnalyzeText();
}
}
}
Замените "Your input text" текстовым содержимым, который вы хотите использовать.
Совет
Размер текста и степень детализации
См . сведения о требованиях к входным данным для ограничений максимальной длины текста.
Создайте и запустите приложение, выбрав "Начать отладку " в меню отладки в верхней части окна интегрированной среды разработки (или нажмите клавишу F5).
Справочная документация | Исходный код библиотеки | Пакет (PyPI) | Примеры |
Предварительные условия
- подписка Azure — создайте бесплатную учетную запись.
- После получения подписки Azure создайте ресурс безопасности содержимого в портал Azure, чтобы получить ключ и конечную точку. Введите уникальное имя ресурса, выберите подписку и выберите группу ресурсов, поддерживаемый регион (см . доступность региона) и поддерживаемую ценовую категорию. Затем выберите Создать.
- Развертывание ресурса занимает несколько минут. После завершения выберите перейти к ресурсу. В области слева в разделе "Управление ресурсами" выберите "Ключ подписки" и "Конечная точка". Конечная точка и любой из ключей используются для вызова API.
-
Python 3.x
- Установка Python должна включать pip. Чтобы проверить, установлен ли pip, выполните команду
pip --versionв командной строке. Чтобы использовать pip, установите последнюю версию Python.
- Установка Python должна включать pip. Чтобы проверить, установлен ли pip, выполните команду
Создание переменной среды
В этом примере учетные данные записываются в переменные среды на локальном компьютере, на котором запущено приложение.
Чтобы задать переменную среды для ключа и конечной точки, откройте окно консоли и следуйте инструкциям для операционной системы и среды разработки.
- Чтобы задать
CONTENT_SAFETY_KEYпеременную среды, заменитеYOUR_CONTENT_SAFETY_KEYодним из ключей ресурса. - Чтобы задать переменную среды, замените
CONTENT_SAFETY_ENDPOINTна конечную точку вашего ресурсаYOUR_CONTENT_SAFETY_ENDPOINT.
Внимание
Используйте ключи API с осторожностью. Не включайте ключ API непосредственно в код и никогда не публикуйте его. Если вы используете ключ API, сохраните его безопасно в Azure Key Vault. Дополнительные сведения об использовании ключей API безопасно в приложениях см. в разделе "Ключи API" с помощью Azure Key Vault.
Дополнительные сведения о безопасности служб ИИ см. в статье "Проверка подлинности запросов к службам ИИ Azure".
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'
После добавления переменных среды может потребоваться перезапустить все запущенные программы, которые будут считывать переменные среды, включая окно консоли.
Анализ текстового содержимого
В следующем разделе описывается пример запроса с помощью пакета SDK для Python.
Откройте командную строку, перейдите в папку проекта и создайте файл с именем quickstart.py.
Выполните следующую команду, чтобы установить библиотеку безопасности содержимого ИИ Azure:
pip install azure-ai-contentsafetyСкопируйте следующий код в quickstart.py:
import os from azure.ai.contentsafety import ContentSafetyClient from azure.core.credentials import AzureKeyCredential from azure.core.exceptions import HttpResponseError from azure.ai.contentsafety.models import AnalyzeTextOptions, TextCategory def analyze_text(): # analyze text key = os.environ["CONTENT_SAFETY_KEY"] endpoint = os.environ["CONTENT_SAFETY_ENDPOINT"] # Create an Azure AI Content Safety client client = ContentSafetyClient(endpoint, AzureKeyCredential(key)) # Contruct request request = AnalyzeTextOptions(text="Your input text") # Analyze text try: response = client.analyze_text(request) except HttpResponseError as e: print("Analyze text failed.") if e.error: print(f"Error code: {e.error.code}") print(f"Error message: {e.error.message}") raise print(e) raise hate_result = next(item for item in response.categories_analysis if item.category == TextCategory.HATE) self_harm_result = next(item for item in response.categories_analysis if item.category == TextCategory.SELF_HARM) sexual_result = next(item for item in response.categories_analysis if item.category == TextCategory.SEXUAL) violence_result = next(item for item in response.categories_analysis if item.category == TextCategory.VIOLENCE) if hate_result: print(f"Hate severity: {hate_result.severity}") if self_harm_result: print(f"SelfHarm severity: {self_harm_result.severity}") if sexual_result: print(f"Sexual severity: {sexual_result.severity}") if violence_result: print(f"Violence severity: {violence_result.severity}") if __name__ == "__main__": analyze_text()Замените
"Your input text"текстовым содержимым, который вы хотите использовать.Совет
Размер текста и степень детализации
См . сведения о требованиях к входным данным для ограничений максимальной длины текста.
Затем запустите приложение командой
pythonв вашем файле быстрого старта.python quickstart.py
Справочная документация | Исходный код библиотеки | Артефакт (Maven) | Примеры
Предварительные условия
- подписка Azure — создайте бесплатную учетную запись.
- Текущая версия пакета средств разработки Java (JDK).
- Средство сборки Gradle или другой диспетчер зависимостей.
- После получения подписки Azure создайте ресурс безопасности содержимого в портал Azure, чтобы получить ключ и конечную точку. Введите уникальное имя ресурса, выберите подписку и выберите группу ресурсов, поддерживаемый регион (см . доступность региона) и поддерживаемую ценовую категорию. Затем выберите Создать.
- Развертывание ресурса занимает несколько минут. После завершения выберите перейти к ресурсу. В области слева в разделе "Управление ресурсами" выберите "Ключ подписки" и "Конечная точка". Конечная точка и любой из ключей используются для вызова API.
Настройка приложения
Создайте проект Gradle.
В окне консоли (например, cmd, PowerShell или Bash) создайте новый каталог для приложения и перейдите в него.
mkdir myapp && cd myapp
Выполните команду gradle init из рабочей папки. Эта команда создает необходимые файлы сборки для Gradle, включая build.gradle.kts, который используется во время выполнения для создания и настройки приложения.
gradle init --type basic
Когда будет предложено выбрать DSL, выберите Kotlin.
В рабочей папке выполните следующую команду, чтобы создать исходную папку проекта.
mkdir -p src/main/java
Перейдите к новой папке и создайте файл с именем ContentSafetyQuickstart.java.
Установка клиентского пакета SDK
В этом кратком руководстве используется менеджер зависимостей Gradle. Клиентскую библиотеку и информацию для других диспетчеров зависимостей можно найти в центральном репозитории Maven.
Найдите файл build.gradle.kts и откройте его в предпочитаемой интегрированной среде разработки или текстовом редакторе. Затем скопируйте и вставьте в файл приведенную ниже конфигурацию сборки. Эта конфигурация определяет проект как приложение Java, точка входа которого — это класс ContentSafetyQuickstart. Она импортирует библиотеку Визуального распознавания ИИ Azure.
plugins {
java
application
}
application {
mainClass.set("ContentSafetyQuickstart")
}
repositories {
mavenCentral()
}
dependencies {
implementation(group = "com.azure", name = "azure-ai-contentsafety", version = "1.0.0")
}
Создание переменной среды
В этом примере учетные данные записываются в переменные среды на локальном компьютере, на котором запущено приложение.
Чтобы задать переменную среды для ключа и конечной точки, откройте окно консоли и следуйте инструкциям для операционной системы и среды разработки.
- Чтобы задать
CONTENT_SAFETY_KEYпеременную среды, заменитеYOUR_CONTENT_SAFETY_KEYодним из ключей ресурса. - Чтобы задать переменную среды, замените
CONTENT_SAFETY_ENDPOINTна конечную точку вашего ресурсаYOUR_CONTENT_SAFETY_ENDPOINT.
Внимание
Используйте ключи API с осторожностью. Не включайте ключ API непосредственно в код и никогда не публикуйте его. Если вы используете ключ API, сохраните его безопасно в Azure Key Vault. Дополнительные сведения об использовании ключей API безопасно в приложениях см. в разделе "Ключи API" с помощью Azure Key Vault.
Дополнительные сведения о безопасности служб ИИ см. в статье "Проверка подлинности запросов к службам ИИ Azure".
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'
После добавления переменных среды может потребоваться перезапустить все запущенные программы, которые будут считывать переменные среды, включая окно консоли.
Анализ текстового содержимого
Откройте ContentSafetyQuickstart.java в предпочитаемом редакторе или интегрированной среде разработки и вставьте следующий код. Замените <your text sample> текстовым содержимым, который вы хотите использовать.
Совет
Размер текста и степень детализации
См . сведения о требованиях к входным данным для ограничений максимальной длины текста.
import com.azure.ai.contentsafety.ContentSafetyClient;
import com.azure.ai.contentsafety.ContentSafetyClientBuilder;
import com.azure.ai.contentsafety.models.AnalyzeTextOptions;
import com.azure.ai.contentsafety.models.AnalyzeTextResult;
import com.azure.ai.contentsafety.models.TextCategoriesAnalysis;
import com.azure.core.credential.KeyCredential;
import com.azure.core.util.Configuration;
public class ContentSafetyQuickstart {
public static void main(String[] args) {
// get endpoint and key from environment variables
String endpoint = System.getenv("CONTENT_SAFETY_ENDPOINT");
String key = System.getenv("CONTENT_SAFETY_KEY");
ContentSafetyClient contentSafetyClient = new ContentSafetyClientBuilder()
.credential(new KeyCredential(key))
.endpoint(endpoint).buildClient();
AnalyzeTextResult response = contentSafetyClient.analyzeText(new AnalyzeTextOptions("<your text sample>"));
for (TextCategoriesAnalysis result : response.getCategoriesAnalysis()) {
System.out.println(result.getCategory() + " severity: " + result.getSeverity());
}
}
}
Вернитесь в корневую папку проекта и выполните сборку приложения:
gradle build
Затем запустите его с помощью команды gradle run:
gradle run
Выходные данные
Hate severity: 0
SelfHarm severity: 0
Sexual severity: 0
Violence severity: 0
Справочная документация | Исходный код библиотеки | Пакет (npm) | Примеры |
Предварительные условия
- подписка Azure — создайте бесплатную учетную запись.
- Текущая версия Node.js
- После получения подписки Azure создайте ресурс безопасности содержимого в портал Azure, чтобы получить ключ и конечную точку. Введите уникальное имя ресурса, выберите подписку и выберите группу ресурсов, поддерживаемый регион (см . доступность региона) и поддерживаемую ценовую категорию. Затем выберите Создать.
- Развертывание ресурса занимает несколько минут. После завершения выберите перейти к ресурсу. В области слева в разделе "Управление ресурсами" выберите "Ключ подписки" и "Конечная точка". Конечная точка и любой из ключей используются для вызова API.
Настройка приложения
Создайте новое приложение Node.js. В окне консоли (например, cmd, PowerShell или Bash) создайте новый каталог для приложения и перейдите в него.
mkdir myapp && cd myapp
Выполните команду npm init, чтобы создать приложение узла с помощью файла package.json.
npm init
Установка клиентского пакета SDK
Установите пакет npm @azure-rest/ai-content-safety:
npm install @azure-rest/ai-content-safety
Кроме того, установите dotenv модуль для использования переменных среды:
npm install dotenv
Файл package.json этого приложения будет дополнен зависимостями.
Создание переменной среды
В этом примере учетные данные записываются в переменные среды на локальном компьютере, на котором запущено приложение.
Чтобы задать переменную среды для ключа и конечной точки, откройте окно консоли и следуйте инструкциям для операционной системы и среды разработки.
- Чтобы задать
CONTENT_SAFETY_KEYпеременную среды, заменитеYOUR_CONTENT_SAFETY_KEYодним из ключей ресурса. - Чтобы задать переменную среды, замените
CONTENT_SAFETY_ENDPOINTна конечную точку вашего ресурсаYOUR_CONTENT_SAFETY_ENDPOINT.
Внимание
Используйте ключи API с осторожностью. Не включайте ключ API непосредственно в код и никогда не публикуйте его. Если вы используете ключ API, сохраните его безопасно в Azure Key Vault. Дополнительные сведения об использовании ключей API безопасно в приложениях см. в разделе "Ключи API" с помощью Azure Key Vault.
Дополнительные сведения о безопасности служб ИИ см. в статье "Проверка подлинности запросов к службам ИИ Azure".
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'
После добавления переменных среды может потребоваться перезапустить все запущенные программы, которые будут считывать переменные среды, включая окно консоли.
Анализ текстового содержимого
Создайте файл в каталоге index.js. Откройте его в предпочитаемом редакторе или интегрированной среде разработки и вставьте следующий код. Замените <your text sample> текстовым содержимым, который вы хотите использовать.
Совет
Размер текста и степень детализации
См . сведения о требованиях к входным данным для ограничений максимальной длины текста.
const ContentSafetyClient = require("@azure-rest/ai-content-safety").default,
{ isUnexpected } = require("@azure-rest/ai-content-safety");
const { AzureKeyCredential } = require("@azure/core-auth");
// Load the .env file if it exists
require("dotenv").config();
async function main() {
// get endpoint and key from environment variables
const endpoint = process.env["CONTENT_SAFETY_ENDPOINT"];
const key = process.env["CONTENT_SAFETY_KEY"];
const credential = new AzureKeyCredential(key);
const client = ContentSafetyClient(endpoint, credential);
// replace with your own sample text string
const text = "<your sample text>";
const analyzeTextOption = { text: text };
const analyzeTextParameters = { body: analyzeTextOption };
const result = await client.path("/text:analyze").post(analyzeTextParameters);
if (isUnexpected(result)) {
throw result;
}
for (let i = 0; i < result.body.categoriesAnalysis.length; i++) {
const textCategoriesAnalysisOutput = result.body.categoriesAnalysis[i];
console.log(
textCategoriesAnalysisOutput.category,
" severity: ",
textCategoriesAnalysisOutput.severity
);
}
}
main().catch((err) => {
console.error("The sample encountered an error:", err);
});
Запустите приложение, выполнив команду node для файла quickstart.
node index.js
Выходные данные
Hate severity: 0
SelfHarm severity: 0
Sexual severity: 0
Violence severity: 0
Справочная документация | Исходный код библиотеки | Пакет (npm) | Примеры |
Предварительные условия
- подписка Azure — создайте бесплатную учетную запись.
- Node.js LTS
- TypeScript
- Visual Studio Code
- После получения подписки Azure создайте ресурс безопасности содержимого в портал Azure, чтобы получить ключ и конечную точку. Введите уникальное имя ресурса, выберите подписку и выберите группу ресурсов, поддерживаемый регион (см . доступность региона) и поддерживаемую ценовую категорию. Затем выберите Создать.
- Развертывание ресурса занимает несколько минут. После завершения выберите перейти к ресурсу. В области слева в разделе "Управление ресурсами" выберите "Ключ подписки" и "Конечная точка". Конечная точка и любой из ключей используются для вызова API.
Настройка приложения
Создайте новое приложение TypeScript. В окне консоли (например, cmd, PowerShell или Bash) создайте новый каталог для приложения и перейдите в него.
mkdir content-safety-typescript && cd content-safety-typescript code .Инициализировать новый проект Node.js с помощью TypeScript:
npm init -y npm pkg set type=moduleУстановите необходимые пакеты:
npm install @azure-rest/ai-content-safety @azure/core-authУстановите зависимости для разработки:
npm install typescript @types/node --save-devСоздайте файл в каталоге
tsconfig.jsonпроекта:{ "compilerOptions": { "target": "es2022", "module": "esnext", "moduleResolution": "bundler", "rootDir": "./src", "outDir": "./dist/", "esModuleInterop": true, "forceConsistentCasingInFileNames": true, "strict": true, "skipLibCheck": true, "declaration": true, "sourceMap": true, "resolveJsonModule": true, "moduleDetection": "force", "allowSyntheticDefaultImports": true, "verbatimModuleSyntax": false }, "include": [ "src/**/*.ts" ], "exclude": [ "node_modules/**/*", "**/*.spec.ts" ] }Обновите
package.json, чтобы включить скрипт для создания файлов TypeScript."scripts": { "build": "tsc", "start": "node dist/index.js" }srcСоздайте каталог для кода TypeScript.
Создание переменной среды
В этом примере учетные данные записываются в переменные среды на локальном компьютере, на котором запущено приложение.
Чтобы задать переменную среды для ключа и конечной точки, откройте окно консоли и следуйте инструкциям для операционной системы и среды разработки.
- Чтобы задать
CONTENT_SAFETY_KEYпеременную среды, заменитеYOUR_CONTENT_SAFETY_KEYодним из ключей ресурса. - Чтобы задать переменную среды, замените
CONTENT_SAFETY_ENDPOINTна конечную точку вашего ресурсаYOUR_CONTENT_SAFETY_ENDPOINT.
Внимание
Используйте ключи API с осторожностью. Не включайте ключ API непосредственно в код и никогда не публикуйте его. Если вы используете ключ API, сохраните его безопасно в Azure Key Vault. Дополнительные сведения об использовании ключей API безопасно в приложениях см. в разделе "Ключи API" с помощью Azure Key Vault.
Дополнительные сведения о безопасности служб ИИ см. в статье "Проверка подлинности запросов к службам ИИ Azure".
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'
После добавления переменных среды может потребоваться перезапустить все запущенные программы, которые будут считывать переменные среды, включая окно консоли.
Анализ текстового содержимого
Создайте файл в каталоге src с именем index.ts. Откройте его в предпочитаемом редакторе или интегрированной среде разработки и вставьте следующий код. Замените <your text sample> текстовым содержимым, который вы хотите проанализировать.
Совет
Размер текста и степень детализации
См . сведения о требованиях к входным данным для ограничений максимальной длины текста.
import ContentSafetyClient, {
isUnexpected,
AnalyzeTextParameters,
AnalyzeText200Response,
AnalyzeTextDefaultResponse,
AnalyzeTextOptions,
TextCategoriesAnalysisOutput
} from "@azure-rest/ai-content-safety";
import { AzureKeyCredential } from "@azure/core-auth";
// Get endpoint and key from environment variables
const endpoint = process.env.CONTENT_SAFETY_ENDPOINT;
const key = process.env.CONTENT_SAFETY_KEY;
if (!endpoint || !key) {
throw new Error("Missing required environment variables: CONTENT_SAFETY_ENDPOINT or CONTENT_SAFETY_KEY");
}
try {
// Create client with Azure Key Credential
const credential = new AzureKeyCredential(key);
const client = ContentSafetyClient(endpoint, credential);
// Replace with your own sample text string
const text = "Replace with your text sample";
const analyzeTextOption: AnalyzeTextOptions = { text };
const analyzeTextParameters: AnalyzeTextParameters = { body: analyzeTextOption };
// Call the Content Safety API to analyze the text
const result: AnalyzeText200Response | AnalyzeTextDefaultResponse = await client.path("/text:analyze").post(analyzeTextParameters);
if (isUnexpected(result)) {
throw result;
}
// Process and display the analysis results
console.log("Text analysis results:");
const categoriesAnalysis = result.body.categoriesAnalysis as TextCategoriesAnalysisOutput[];
for (const analysis of categoriesAnalysis) {
console.log(`${analysis.category} severity: ${analysis.severity}`);
}
} catch (error: any) {
console.error("The sample encountered an error:", error.message);
}
Создание и запуск приложения
- Создайте код TypeScript:
npm run build
- Запустите приложение:
npm start
Выходные данные
Text analysis results:
Hate severity: 0
SelfHarm severity: 0
Sexual severity: 0
Violence severity: 0
Очистка ресурсов
Если вы хотите очистить и удалить подписку на службы искусственного интеллекта Azure, можно удалить ресурс или группу ресурсов. При удалении группы ресурсов также удаляются все связанные с ней ресурсы.
Связанный контент
- Категории вреда
- Настройте фильтры для каждой категории и проверьте наборы данных с помощью Content Safety Studio, экспортируйте код и разверните его.