Démarrage rapide : Analyser le contenu d’une image
Commencez à utiliser Content Studio, l’API REST ou les SDK client pour effectuer une modération d’image de base. Le service Azure AI Sécurité du Contenu vous fournit des algorithmes d’IA pour signaler le contenu répréhensible. Suivez ces étapes pour le tester.
Pour plus d’informations sur la modération de l’image, consultez la page concept des catégories Harm. Pour connaître les limites d’entrée d’API, consultez la section Configuration requise pour les entrées de la vue d’ensemble.
Remarque
Les exemples de données et de code peuvent présenter du contenu choquant. Ils s’adressent à des utilisateurs avertis.
Prérequis
- Un abonnement Azure - En créer un gratuitement
- Une fois que vous avez votre abonnement Azure, créez une ressource Content Safety dans le portail Azure pour obtenir votre clé et votre point de terminaison. Entrez un nom unique pour votre ressource, sélectionnez votre abonnement, puis sélectionnez un groupe de ressources, une région prise en charge (voir disponibilité région) et le niveau tarifaire pris en charge. Sélectionnez ensuite Créer.
- Le déploiement de la ressource prend quelques minutes. Une fois qu’il est terminé, sélectionnez Accéder à la ressource. Dans le volet gauche, sous Gestion des ressources, sélectionnez Clé et point de terminaison de l’abonnement. Le point de terminaison et l’une des clés sont utilisés pour appeler les API.
- Installation de cURL
Analyser le contenu d’une image
La section suivante décrit en détail un exemple de requête de modération d’image avec cURL.
Préparez un exemple d’image
Choisissez un exemple d’image à analyser et téléchargez-le sur votre appareil.
Consultez les Exigences d’entrée pour les limitations de l’image. Si votre format est animé, le service extrait le premier frame pour effectuer l’analyse.
Vous pouvez entrer votre image par l’une des deux méthodes suivantes : flux de fichiers local ou URL de stockage d’objets blob.
Flux de fichiers local (recommandé) : encodezvotre image en base64. Vous pouvez utiliser un site web comme codebeautify pour effectuer l’encodage. Enregistrez ensuite la chaîne encodée dans un emplacement temporaire.
URL de stockage d’objets blob : chargez votre image sur un compte Stockage Blob Azure. Suivez le démarrage rapide stockage d’objets blob pour savoir comment procéder. Ouvrez ensuite Explorateur Stockage Azure et obtenez l’URL de votre image. Enregistrez-la dans un emplacement temporaire.
Ensuite, vous devez accorder à votre ressource Content Safety l’accès à la lecture à partir de la ressource Stockage Azure. Activez l’identité managée affectée par le système pour l’instance d’Azure AI Sécurité du Contenu, puis attribuez le rôle Contributeur aux données Blob du stockage/Propriétaire des données Blob du stockage à l’identité :
Important
Les rôles Contributeur aux données Blob du stockage ou Propriétaire des données Blob du stockage sont les seuls rôles valides pour continuer.
Activez une identité managée pour l’instance Azure AI Content Safety.
Attribuez le rôle Contributeur/Propriétaire de données Blob de stockage à l’identité managée. Tous les rôles mis en évidence ci-dessous doivent fonctionner.
Analyser le contenu d’une image
Collez la commande ci-dessous dans un éditeur de texte et apportez les modifications suivantes.
- Remplacez
<endpoint>
par l’URL de votre point de terminaison de ressource. - Remplacez
<your_subscription_key>
par votre clé. - Renseignez le champ
"image"
dans le corps avec un champ"content"
ou un champ"blobUrl"
. Par exemple,{"image": {"content": "<base_64_string>"}
ou{"image": {"blobUrl": "<your_storage_url>"}
.
curl --location --request POST '<endpoint>/contentsafety/image:analyze?api-version=2024-09-01' \
--header 'Ocp-Apim-Subscription-Key: <your_subscription_key>' \
--header 'Content-Type: application/json' \
--data-raw '{
"image": {
"content": "<base_64_string>"
},
"categories": ["Hate", "SelfHarm", "Sexual", "Violence"],
"outputType": "FourSeverityLevels"
}'
Remarque
Si vous utilisez une URL de stockage blob, le corps de la demande se présente comme suit:
{
"image": {
"blobUrl": "<your_storage_url>"
}
}
Les champs ci-dessous doivent être inclus dans l’URL :
Nom | Requis ? | Description | Type |
---|---|---|---|
API Version | Obligatoire | Il s’agit de la version de l’API à vérifier. La version actuelle est : api-version=2024-09-01 . Exemple : <endpoint>/contentsafety/image:analyze?api-version=2024-09-01 |
String |
Les paramètres dans le corps de la requête sont définis dans ce tableau :
Nom | Requis ? | Description | Type |
---|---|---|---|
content | Requis | URL du contenu ou de l’objet blob de l’image. Je peux être des octets encodés en base64 ou une URL d’objet blob. Si les deux sont donnés, la requête est refusée. La taille maximale autorisée de l’image est de 7 200 x 7 200 pixels, et la taille maximale du fichier est de 4 Mo. La taille minimale de l’image est de 50 x 50 pixels. | String |
categories | Facultatif | C’est supposé être un tableau de noms de catégorie. Consultez le guide des catégories préjudiciables pour obtenir la liste des noms de catégorie disponibles. Si aucune catégorie n’est spécifiée, les quatre catégories sont utilisées. Nous utilisons plusieurs catégories pour obtenir des scores dans une seule requête. | String |
outputType | Facultatif | L’API de modération d’image prend uniquement en charge "FourSeverityLevels" . Gravités de sortie dans quatre niveaux. La valeur peut être 0,2,4,6 |
Chaîne |
Ouvrez une fenêtre d’invite de commandes et exécutez la commande cURL.
Sortie
Les résultats de la modération des images doivent s’afficher sous la forme de données JSON dans la console. Par exemple :
{
"categoriesAnalysis": [
{
"category": "Hate",
"severity": 2
},
{
"category": "SelfHarm",
"severity": 0
},
{
"category": "Sexual",
"severity": 0
},
{
"category": "Violence",
"severity": 0
}
]
}
Les champs JSON dans la sortie sont définis ici :
Nom | Description | Type |
---|---|---|
categoriesAnalysis | Chaque classe de sortie prédite par l’API. La classification peut avoir plusieurs intitulés. Par exemple, lorsqu’une image est chargée dans le modèle de modération de l’image, elle peut être classifiée à la fois comme contenu sexuel et comme violence. Catégories préjudiciables | String |
Niveau de gravité | Niveau de gravité de l’indicateur dans chaque catégorie de préjudice. Catégories préjudiciables | Entier |
Documentation de référence | Code source de la bibliothèque | Package (NuGet) | Exemples
Prérequis
- Un abonnement Azure - En créer un gratuitement
- L’IDE Visual Studio avec la charge de travail Développement de bureau .NET activée. Ou, si vous n’envisagez pas d’utiliser l’IDE Visual Studio, vous avez besoin de la version actuelle de .NET Core.
- .NET Runtime installé.
- Une fois que vous avez votre abonnement Azure, créez une ressource Content Safety dans le portail Azure pour obtenir votre clé et votre point de terminaison. Entrez un nom unique pour votre ressource, sélectionnez votre abonnement, puis sélectionnez un groupe de ressources, une région prise en charge (voir disponibilité région) et le niveau tarifaire pris en charge. Sélectionnez ensuite Créer.
- Le déploiement de la ressource prend quelques minutes. Une fois qu’il est terminé, sélectionnez Accéder à la ressource. Dans le volet gauche, sous Gestion des ressources, sélectionnez Clé et point de terminaison de l’abonnement. Le point de terminaison et l’une des clés sont utilisés pour appeler les API.
Configurer l’application
Créez une application C#.
Ouvrez Visual Studio et, dans Démarrage, sélectionnez Créer un projet. Définissez les filtres de modèle sur C#/Toutes les plateformes/console. Sélectionnez Application console (application en ligne de commande qui peut s’exécuter sur .NET sur Windows, Linux et macOS), puis choisissez Suivant. Mettez à jour le nom du projet sur ContentSafetyQuickstart et choisissez Suivant. Sélectionnez .NET 6.0 ou version ultérieure, puis choisissez Créer pour créer le projet.
Installer le client du Kit de développement logiciel (SDK)
Une fois que vous avez créé un projet, installez le SDK de client en cliquant avec le bouton droit sur la solution de projet dans l’Explorateur de solutions et en sélectionnant Gérer les packages NuGet. Dans le gestionnaire de package qui s’ouvre, sélectionnez Parcourir et recherchez Azure.AI.ContentSafety
. Sélectionnez Installer.
Créer des variables d’environnement
Dans cet exemple, vous allez écrire vos informations d’identification dans des variables d’environnement sur l’ordinateur local exécutant l’application.
Pour définir la variable d’environnement de votre clé et point de terminaison, ouvrez une fenêtre de console et suivez les instructions relatives à votre système d’exploitation et à votre environnement de développement.
- Pour définir la variable d’environnement
CONTENT_SAFETY_KEY
, remplacezYOUR_CONTENT_SAFETY_KEY
par l’une des clés de votre ressource. - Pour définir la
CONTENT_SAFETY_ENDPOINT
variable d’environnement, remplacezYOUR_CONTENT_SAFETY_ENDPOINT
par le point de terminaison de votre ressource.
Important
Si vous utilisez une clé API, stockez-la en toute sécurité dans un autre emplacement, par exemple dans Azure Key Vault. N'incluez pas la clé API directement dans votre code et ne la diffusez jamais publiquement.
Pour plus d’informations sur la sécurité des services IA, consultez Authentifier les demandes auprès d’Azure AI services.
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'
Après avoir ajouté les variables d'environnement, il se put que vous deviez redémarrer tous les programmes en cours d'exécution qui liront les variables d'environnement, y compris la fenêtre de console.
Analyser le contenu d’une image
Dans le répertoire du projet, ouvrez le fichier Program.cs créé précédemment. Collez le code suivant.
using System;
using Azure.AI.ContentSafety;
namespace Azure.AI.ContentSafety.Dotnet.Sample
{
class ContentSafetySampleAnalyzeImage
{
public static void AnalyzeImage()
{
// 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));
// Example: analyze image
string imagePath = @"sample_data\image.png";
ContentSafetyImageData image = new ContentSafetyImageData(BinaryData.FromBytes(File.ReadAllBytes(imagePath)));
var request = new AnalyzeImageOptions(image);
Response<AnalyzeImageResult> response;
try
{
response = client.AnalyzeImage(request);
}
catch (RequestFailedException ex)
{
Console.WriteLine("Analyze image failed.\nStatus code: {0}, Error code: {1}, Error message: {2}", ex.Status, ex.ErrorCode, ex.Message);
throw;
}
Console.WriteLine("Hate severity: {0}", response.Value.CategoriesAnalysis.FirstOrDefault(a => a.Category == ImageCategory.Hate)?.Severity ?? 0);
Console.WriteLine("SelfHarm severity: {0}", response.Value.CategoriesAnalysis.FirstOrDefault(a => a.Category == ImageCategory.SelfHarm)?.Severity ?? 0);
Console.WriteLine("Sexual severity: {0}", response.Value.CategoriesAnalysis.FirstOrDefault(a => a.Category == ImageCategory.Sexual)?.Severity ?? 0);
Console.WriteLine("Violence severity: {0}", response.Value.CategoriesAnalysis.FirstOrDefault(a => a.Category == ImageCategory.Violence)?.Severity ?? 0);
}
static void Main()
{
AnalyzeImage();
}
}
}
Créez un dossier sample_data dans votre répertoire de projet et ajoutez-y un fichier image.png.
Générez et exécutez l’application en sélectionnant Démarrer le débogage dans le menu Déboguer en haut de la fenêtre IDE (ou appuyez sur F5).
Documentation de référence | Code source de la bibliothèque | Package (PyPI) | Exemples |
Prérequis
- Un abonnement Azure - En créer un gratuitement
- Une fois que vous avez votre abonnement Azure, créez une ressource Content Safety dans le portail Azure pour obtenir votre clé et votre point de terminaison. Entrez un nom unique pour votre ressource, sélectionnez votre abonnement, puis sélectionnez un groupe de ressources, une région prise en charge (voir disponibilité région) et le niveau tarifaire pris en charge. Sélectionnez ensuite Créer.
- Le déploiement de la ressource prend quelques minutes. Une fois qu’il est terminé, sélectionnez Accéder à la ressource. Dans le volet gauche, sous Gestion des ressources, sélectionnez Clé et point de terminaison de l’abonnement. Le point de terminaison et l’une des clés sont utilisés pour appeler les API.
- Python 3.8 ou version ultérieure
- Votre installation Python doit inclure pip. Vous pouvez vérifier si pip est installé en exécutant
pip --version
sur la ligne de commande. Procurez-vous pip en installant la dernière version de Python.
- Votre installation Python doit inclure pip. Vous pouvez vérifier si pip est installé en exécutant
Créer des variables d’environnement
Dans cet exemple, vous allez écrire vos informations d’identification dans des variables d’environnement sur l’ordinateur local exécutant l’application.
Pour définir la variable d’environnement de votre clé et point de terminaison, ouvrez une fenêtre de console et suivez les instructions relatives à votre système d’exploitation et à votre environnement de développement.
- Pour définir la variable d’environnement
CONTENT_SAFETY_KEY
, remplacezYOUR_CONTENT_SAFETY_KEY
par l’une des clés de votre ressource. - Pour définir la
CONTENT_SAFETY_ENDPOINT
variable d’environnement, remplacezYOUR_CONTENT_SAFETY_ENDPOINT
par le point de terminaison de votre ressource.
Important
Si vous utilisez une clé API, stockez-la en toute sécurité dans un autre emplacement, par exemple dans Azure Key Vault. N'incluez pas la clé API directement dans votre code et ne la diffusez jamais publiquement.
Pour plus d’informations sur la sécurité des services IA, consultez Authentifier les demandes auprès d’Azure AI services.
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'
Après avoir ajouté les variables d'environnement, il se put que vous deviez redémarrer tous les programmes en cours d'exécution qui liront les variables d'environnement, y compris la fenêtre de console.
Analyser le contenu d’une image
La section suivante décrit en détail un exemple de requête avec le SDK Python.
Ouvrez une invite de commandes, accédez à votre dossier de projet et créez un fichier nommé quickstart.py.
Exécutez cette commande pour installer la bibliothèque de client Azure AI Content Safety :
python -m pip install azure-ai-contentsafety
Copiez le code ci-après dans quickstart.py :
import os from azure.ai.contentsafety import ContentSafetyClient from azure.ai.contentsafety.models import AnalyzeImageOptions, ImageData, ImageCategory from azure.core.credentials import AzureKeyCredential from azure.core.exceptions import HttpResponseError def analyze_image(): endpoint = os.environ.get('CONTENT_SAFETY_ENDPOINT') key = os.environ.get('CONTENT_SAFETY_KEY') image_path = os.path.join("sample_data", "image.jpg") # Create an Azure AI Content Safety client client = ContentSafetyClient(endpoint, AzureKeyCredential(key)) # Build request with open(image_path, "rb") as file: request = AnalyzeImageOptions(image=ImageData(content=file.read())) # Analyze image try: response = client.analyze_image(request) except HttpResponseError as e: print("Analyze image 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 == ImageCategory.HATE) self_harm_result = next(item for item in response.categories_analysis if item.category == ImageCategory.SELF_HARM) sexual_result = next(item for item in response.categories_analysis if item.category == ImageCategory.SEXUAL) violence_result = next(item for item in response.categories_analysis if item.category == ImageCategory.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_image()
Remplacez
"sample_data"
et"image.jpg"
par le chemin d’accès et le nom du fichier local que vous souhaitez utiliser.Exécutez ensuite l’application avec la commande
python
de votre fichier de démarrage rapide.python quickstart.py
Documentation de référence | Code source de la bibliothèque | Artefact (Maven) | Exemples
Prérequis
- Un abonnement Azure - En créer un gratuitement
- La version actuelle du JDK (Java Development Kit)
- L’outil de génération Gradle ou un autre gestionnaire de dépendances.
- Une fois que vous avez votre abonnement Azure, créez une ressource Content Safety dans le portail Azure pour obtenir votre clé et votre point de terminaison. Entrez un nom unique pour votre ressource, sélectionnez votre abonnement, puis sélectionnez un groupe de ressources, une région prise en charge (voir disponibilité région) et le niveau tarifaire pris en charge. Sélectionnez ensuite Créer.
- Le déploiement de la ressource prend quelques minutes. Une fois qu’il est terminé, sélectionnez Accéder à la ressource. Dans le volet gauche, sous Gestion des ressources, sélectionnez Clé et point de terminaison de l’abonnement. Le point de terminaison et l’une des clés sont utilisés pour appeler les API.
Configurer l’application
Créez un projet Gradle.
Dans une fenêtre de console (telle que cmd, PowerShell ou bash), créez un répertoire pour votre application et accédez-y.
mkdir myapp && cd myapp
Exécutez la commande gradle init
à partir de votre répertoire de travail. Cette commande crée des fichiers de build essentiels pour Gradle, notamment build.gradle.kts, qui est utilisé au moment de l’exécution pour créer et configurer votre application.
gradle init --type basic
Quand vous êtes invité à choisir un DSL, sélectionnez Kotlin.
Dans votre répertoire de travail, exécutez la commande suivante pour créer un dossier de projet source :
mkdir -p src/main/java
Accédez au nouveau dossier et créez un fichier nommé ContentSafetyQuickstart.java.
Créez également un dossier src/resources
à la racine de votre projet et ajoutez-y un exemple d’image.
Installer le client du Kit de développement logiciel (SDK)
Ce guide de démarrage rapide utilise le gestionnaire de dépendances Gradle. Vous trouverez la bibliothèque de client et des informations concernant d’autres gestionnaires de dépendances sur le référentiel central Maven.
Recherchez build.gradle.kts et ouvrez-le avec votre IDE ou votre éditeur de texte habituel. Copiez-y ensuite la configuration de build suivante. Cette configuration définit le projet en tant qu’application Java dont le point d’entrée est la classe ContentSafetyQuickstart. Cela importe la bibliothèque Azure AI Vision.
plugins {
java
application
}
application {
mainClass.set("ContentSafetyQuickstart")
}
repositories {
mavenCentral()
}
dependencies {
implementation(group = "com.azure", name = "azure-ai-contentsafety", version = "1.0.0")
}
Créer des variables d’environnement
Dans cet exemple, vous allez écrire vos informations d’identification dans des variables d’environnement sur l’ordinateur local exécutant l’application.
Pour définir la variable d’environnement de votre clé et point de terminaison, ouvrez une fenêtre de console et suivez les instructions relatives à votre système d’exploitation et à votre environnement de développement.
- Pour définir la variable d’environnement
CONTENT_SAFETY_KEY
, remplacezYOUR_CONTENT_SAFETY_KEY
par l’une des clés de votre ressource. - Pour définir la
CONTENT_SAFETY_ENDPOINT
variable d’environnement, remplacezYOUR_CONTENT_SAFETY_ENDPOINT
par le point de terminaison de votre ressource.
Important
Si vous utilisez une clé API, stockez-la en toute sécurité dans un autre emplacement, par exemple dans Azure Key Vault. N'incluez pas la clé API directement dans votre code et ne la diffusez jamais publiquement.
Pour plus d’informations sur la sécurité des services IA, consultez Authentifier les demandes auprès d’Azure AI services.
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'
Après avoir ajouté les variables d'environnement, il se put que vous deviez redémarrer tous les programmes en cours d'exécution qui liront les variables d'environnement, y compris la fenêtre de console.
Analyser le contenu d’une image
Ouvrez OpenSafetyQuickstart.java dans votre éditeur ou IDE préféré, puis collez le code suivant. Remplacez la variable source
par le chemin d’accès à votre exemple d’image.
import com.azure.ai.contentsafety.ContentSafetyClient;
import com.azure.ai.contentsafety.ContentSafetyClientBuilder;
import com.azure.ai.contentsafety.models.AnalyzeImageOptions;
import com.azure.ai.contentsafety.models.AnalyzeImageResult;
import com.azure.ai.contentsafety.models.ContentSafetyImageData;
import com.azure.ai.contentsafety.models.ImageCategoriesAnalysis;
import com.azure.core.credential.KeyCredential;
import com.azure.core.util.BinaryData;
import com.azure.core.util.Configuration;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
public class ContentSafetyQuickstart {
public static void main(String[] args) throws IOException {
// 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();
ContentSafetyImageData image = new ContentSafetyImageData();
String cwd = System.getProperty("user.dir");
String source = "/src/samples/resources/image.png";
image.setContent(BinaryData.fromBytes(Files.readAllBytes(Paths.get(cwd, source))));
AnalyzeImageResult response =
contentSafetyClient.analyzeImage(new AnalyzeImageOptions(image));
for (ImageCategoriesAnalysis result : response.getCategoriesAnalysis()) {
System.out.println(result.getCategory() + " severity: " + result.getSeverity());
}
}
}
Revenez au dossier racine du projet et générez l’application avec :
gradle build
Ensuite, exécutez-la avec la commande gradle run
:
gradle run
Sortie
Hate severity: 0
SelfHarm severity: 0
Sexual severity: 0
Violence severity: 0
Documentation de référence | Code source de la bibliothèque | Package (npm) | Exemples |
Prérequis
- Un abonnement Azure - En créer un gratuitement
- Version actuelle de Node.js
- Une fois que vous avez votre abonnement Azure, créez une ressource Content Safety dans le portail Azure pour obtenir votre clé et votre point de terminaison. Entrez un nom unique pour votre ressource, sélectionnez votre abonnement, puis sélectionnez un groupe de ressources, une région prise en charge (voir disponibilité région) et le niveau tarifaire pris en charge. Sélectionnez ensuite Créer.
- Le déploiement de la ressource prend quelques minutes. Une fois qu’il est terminé, sélectionnez Accéder à la ressource. Dans le volet gauche, sous Gestion des ressources, sélectionnez Clé et point de terminaison de l’abonnement. Le point de terminaison et l’une des clés sont utilisés pour appeler les API.
Configurer l’application
Créez une application Node.js. Dans une fenêtre de console (telle que cmd, PowerShell ou bash), créez un répertoire pour votre application et accédez-y.
mkdir myapp && cd myapp
Exécutez la commande npm init
pour créer une application de nœud avec un fichier package.json
.
npm init
Créez également un dossier /resources
à la racine de votre projet et ajoutez-y un exemple d’image.
Installer le client du Kit de développement logiciel (SDK)
Installez le package NPM @azure-rest/ai-content-safety
:
npm install @azure-rest/ai-content-safety
Installez également le module dotenv
pour utiliser des variables d’environnement :
npm install dotenv
Le fichier package.json
de votre application sera mis à jour avec les dépendances.
Créer des variables d’environnement
Dans cet exemple, vous allez écrire vos informations d’identification dans des variables d’environnement sur l’ordinateur local exécutant l’application.
Pour définir la variable d’environnement de votre clé et point de terminaison, ouvrez une fenêtre de console et suivez les instructions relatives à votre système d’exploitation et à votre environnement de développement.
- Pour définir la variable d’environnement
CONTENT_SAFETY_KEY
, remplacezYOUR_CONTENT_SAFETY_KEY
par l’une des clés de votre ressource. - Pour définir la
CONTENT_SAFETY_ENDPOINT
variable d’environnement, remplacezYOUR_CONTENT_SAFETY_ENDPOINT
par le point de terminaison de votre ressource.
Important
Si vous utilisez une clé API, stockez-la en toute sécurité dans un autre emplacement, par exemple dans Azure Key Vault. N'incluez pas la clé API directement dans votre code et ne la diffusez jamais publiquement.
Pour plus d’informations sur la sécurité des services IA, consultez Authentifier les demandes auprès d’Azure AI services.
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'
Après avoir ajouté les variables d'environnement, il se put que vous deviez redémarrer tous les programmes en cours d'exécution qui liront les variables d'environnement, y compris la fenêtre de console.
Analyser le contenu d’une image
Créez un fichier dans votre répertoire, index.js. Ouvrez-le dans votre éditeur ou IDE préféré et collez dans le code suivant. Remplacez la variable image_path
par le chemin d’accès à votre exemple d’image.
const ContentSafetyClient = require("@azure-rest/ai-content-safety").default,
{ isUnexpected } = require("@azure-rest/ai-content-safety");
const { AzureKeyCredential } = require("@azure/core-auth");
const fs = require("fs");
const path = require("path");
// 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 image file path
const image_path = path.resolve(__dirname, "./resources/image.jpg");
const imageBuffer = fs.readFileSync(image_path);
const base64Image = imageBuffer.toString("base64");
const analyzeImageOption = { image: { content: base64Image } };
const analyzeImageParameters = { body: analyzeImageOption };
const result = await client.path("/image:analyze").post(analyzeImageParameters);
if (isUnexpected(result)) {
throw result;
}
for (let i = 0; i < result.body.categoriesAnalysis.length; i++) {
const imageCategoriesAnalysisOutput = result.body.categoriesAnalysis[i];
console.log(
imageCategoriesAnalysisOutput.category,
" severity: ",
imageCategoriesAnalysisOutput.severity
);
}
}
main().catch((err) => {
console.error("The sample encountered an error:", err);
});
Exécutez l’application avec la commande node
de votre fichier de démarrage rapide.
node index.js
Output
Hate severity: 0
SelfHarm severity: 0
Sexual severity: 0
Violence severity: 0
Nettoyer les ressources
Si vous souhaitez nettoyer et supprimer un abonnement Azure AI services, vous pouvez supprimer la ressource ou le groupe de ressources. La suppression du groupe de ressources efface également les autres ressources qui y sont associées.
Contenu connexe
- Catégories préjudiciables
- Configurez des filtres pour chaque catégorie et testez des jeux de données en utilisant Content Safety Studio, puis exportez le code et déployez-le.