Aracılığıyla paylaş


Hızlı Başlangıç: Görüntü içeriğini analiz etme

Temel görüntü moderasyonu yapmak için Content Studio, REST API veya istemci SDK'larını kullanmaya başlayın. Azure AI content Kasa ty hizmeti, uygunsuz içeriği işaretlemek için size yapay zeka algoritmaları sağlar. Denemek için bu adımları izleyin.

Not

Örnek veriler ve kod rahatsız edici içerik içerebilir. Kullanıcının takdirine bağlı olması tavsiye edilir.

Önkoşullar

Resim içeriğini analiz etme

Aşağıdaki bölümde, cURL ile örnek görüntü denetleme isteğinde yol gösterilir.

Örnek görüntü hazırlama

Analiz etmek için örnek bir görüntü seçin ve cihazınıza indirin.

JPEG, PNG, GIF, BMP, TIFF veya WEBP görüntü biçimlerini destekliyoruz. Görüntü gönderimleri için boyut üst sınırı 4 MB'tır ve görüntü boyutları 50 x 50 piksel ile 2.048 x 2.048 piksel arasında olmalıdır. Biçiminiz animasyonluysa, algılamayı yapmak için ilk kareyi ayıklarız.

Görüntünüzü iki yöntemden biriyle girebilirsiniz: yerel dosya akışı veya blob depolama URL'si.

  • Yerel dosya akışı (önerilir): Görüntünüzü base64 olarak kodlayın. Kodlamayı yapmak için codebeautify gibi bir web sitesi kullanabilirsiniz. Ardından kodlanmış dizeyi geçici bir konuma kaydedin.

  • Blob depolama URL'si: Görüntünüzü bir Azure Blob Depolama hesabına yükleyin. Bunun nasıl yapılacağını öğrenmek için blob depolama hızlı başlangıcını izleyin. Ardından Azure Depolama Gezgini açın ve görüntünüzün URL'sini alın. Geçici bir konuma kaydedin.

    Ardından, İçerik Kasa ty kaynağınıza Azure Depolama kaynağından okuma erişimi vermeniz gerekir. Azure AI İçerik Kasa ty örneği için sistem tarafından atanan Yönetilen kimliği etkinleştirin ve kimliğe Depolama Blob Veri Katkıda Bulunanı/Sahibi/Okuyucusu rolünü atayın:

    1. Azure AI İçeriği Kasa ty örneği için yönetilen kimliği etkinleştirin.

      Yönetilen kimliği etkinleştiren Azure portalının ekran görüntüsü.

    2. Yönetilen kimliğe Depolama Blob Veri Katkıda Bulunanı/Sahip/Okuyucu rolünü atayın. Aşağıda vurgulanan tüm roller işe yaramalıdır.

      Azure portalında Rol ataması ekle ekranının ekran görüntüsü.

      Azure portalında atanan rollerin ekran görüntüsü.

      Yönetilen kimlik rolünün ekran görüntüsü.

Resim içeriğini analiz etme

Aşağıdaki komutu bir metin düzenleyicisine yapıştırın ve aşağıdaki değişiklikleri yapın.

  1. yerine <endpoint> kaynak uç noktası URL'sini koyun.
  2. <your_subscription_key> yerine anahtarınızı yazın.
  3. Gövdedeki "image" alanı bir "content" alan veya "blobUrl" alanla doldurun. Örneğin: {"image": {"content": "<base_64_string>"} veya {"image": {"blobUrl": "<your_storage_url>"}.
curl --location --request POST '<endpoint>/contentsafety/image:analyze?api-version=2023-10-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"
}'

Not

Blob depolama URL'si kullanıyorsanız istek gövdesi şöyle görünür:

{
 "image": {
   "blobUrl": "<your_storage_url>"
 }
}

Bir komut istemi penceresi açın ve cURL komutunu çalıştırın.

Aşağıdaki alanlar URL'ye eklenmelidir:

Veri Akışı Adı Gerekli mi? Açıklama Tür
API Sürümü Zorunlu Bu, denetlenecek API sürümüdür. Geçerli sürüm: api-version=2023-10-01. Örnek: <endpoint>/contentsafety/image:analyze?api-version=2023-10-01 String

İstek gövdesindeki parametreler şu tabloda tanımlanmıştır:

Veri Akışı Adı Gerekli mi? Açıklama Tür
Içerik Zorunlu Görüntünün içeriği veya blob URL'si. Base64 ile kodlanmış bayt veya blob URL'si olabilirim. Her ikisi de verilirse istek reddedilir. Resmin izin verilen en büyük boyutu 2048 piksel x 2048 piksel ve dosya boyutu üst sınırı 4 MB'tır. Resmin en küçük boyutu 50 piksel x 50 pikseldir. String
Kategori İsteğe bağlı Bunun bir kategori adları dizisi olduğu varsayılır. Kullanılabilir kategori adlarının listesi için Bkz. Harm kategorileri kılavuzu . Hiçbir kategori belirtilmezse, dört kategori de kullanılır. Tek bir istekte puan almak için birden çok kategori kullanırız. String
outputType İsteğe bağlı Görüntü denetleme API'si yalnızca destekler "FourSeverityLevels". Dört düzeyde çıkış önem dereceleri. Değer şu şekilde olabilir: 0,2,4,6 String

Çıktı

Görüntü denetimi sonuçlarının konsolda JSON verileri olarak görüntülendiğini görmeniz gerekir. Örneğin:

{
    "categoriesAnalysis": [
        {
            "category": "Hate",
            "severity": 2
        },
        {
            "category": "SelfHarm",
            "severity": 0
        },
        {
            "category": "Sexual",
            "severity": 0
        },
        {
            "category": "Violence",
            "severity": 0
        }
    ]
}

Çıktıdaki JSON alanları burada tanımlanır:

Veri Akışı Adı Açıklama Tür
kategorilerAnalysis API'nin tahmin yaptığı her çıkış sınıfı. Sınıflandırma çok etiketli olabilir. Örneğin, görüntü denetim modeline bir görüntü yüklendiğinde, hem cinsel içerik hem de şiddet olarak sınıflandırılabilir. Zarar kategorileri String
Önem Derecesi Her zarar kategorisinde bayrağın önem düzeyi. Zarar kategorileri Tamsayı

Başvuru belgeleri | Kitaplık kaynak kodu | Paketi (NuGet)Örnekleri |

Önkoşullar

Uygulamayı ayarlama

Yeni bir C# uygulaması oluşturun.

Visual Studio'yu açın ve Başlarken'in altında Yeni proje oluştur'u seçin. Şablon filtrelerini C#/Tüm Platformlar/Konsol olarak ayarlayın. Konsol Uygulaması'nı (Windows, Linux ve macOS üzerinde .NET üzerinde çalıştırabilen komut satırı uygulaması) ve İleri'yi seçin. Proje adını Content Kasa tyQuickstart olarak güncelleştirin ve İleri'yi seçin. Projeyi oluşturmak için .NET 6.0 veya üzerini seçin ve Oluştur'u seçin.

İstemci SDK'sını yükleme

Yeni bir proje oluşturduktan sonra, Çözüm Gezgini proje çözümüne sağ tıklayıp NuGet Paketlerini Yönet'i seçerek istemci SDK'sını yükleyin. Açılan paket yöneticisinde Gözat'ı seçin ve öğesini arayınAzure.AI.ContentSafety. Yükle'yi seçin.

Ortam değişkenlerini oluşturma

Bu örnekte, kimlik bilgilerinizi uygulamayı çalıştıran yerel makinedeki ortam değişkenlerine yazacaksınız.

İpucu

Anahtarı doğrudan kodunuz içinde eklemeyin ve asla herkese açık olarak göndermeyin. Azure Key Vault gibi daha fazla kimlik doğrulama seçeneği için Azure AI hizmetleri güvenlik makalesine bakın.

Anahtarınızın ve uç noktanızın ortam değişkenini ayarlamak için bir konsol penceresi açın ve işletim sisteminiz ve geliştirme ortamınıza yönelik yönergeleri izleyin.

  1. Ortam değişkenini CONTENT_SAFETY_KEY ayarlamak için değerini kaynağınızın anahtarlarından biriyle değiştirin YOUR_CONTENT_SAFETY_KEY .
  2. Ortam değişkenini CONTENT_SAFETY_ENDPOINT ayarlamak için değerini kaynağınızın uç noktasıyla değiştirin YOUR_CONTENT_SAFETY_ENDPOINT .
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'

Ortam değişkenlerini ekledikten sonra, konsol penceresi de dahil olmak üzere ortam değişkenlerini okuyacak tüm çalışan programları yeniden başlatmanız gerekebilir.

Resim içeriğini analiz etme

Proje dizininden, daha önce oluşturulmuş Program.cs dosyasını açın. Aşağıdaki kodu yapıştırın.

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();
    }
  }
}

Proje dizininizde bir sample_data klasörü oluşturun ve içine bir image.png dosyası ekleyin.

IDE penceresinin üst kısmındaki Hata Ayıkla menüsünden Hata Ayıklamayı Başlat'ı seçerek uygulamayı derleyin ve çalıştırın (veya F5 tuşuna basın).

Başvuru belgeleri | Kitaplık kaynak kodu | Paketi (PyPI)Örnekleri | |

Önkoşullar

  • Azure aboneliği - Ücretsiz bir abonelik oluşturun
  • Azure aboneliğinizi aldıktan sonra anahtarınızı ve uç noktanızı almak için Azure portalında bir content Kasa ty kaynağı oluşturun. Kaynağınız için benzersiz bir ad girin, aboneliğinizi seçin ve bir kaynak grubu, desteklenen bölge (bkz . Bölge kullanılabilirliği) ve desteklenen fiyatlandırma katmanı. Daha sonra, Oluştur'u seçin.
    • Kaynağın dağıtılması birkaç dakika sürer. Tamamlandıktan sonra Kaynağa git'i seçin. Sol bölmedeki Kaynak Yönetimi'nin altında Abonelik Anahtarı ve Uç Nokta'yı seçin. Uç nokta ve anahtarlardan biri API'leri çağırmak için kullanılır.
  • Python 3.8 veya üzeri
    • Python yüklemeniz pip içermelidir. Pip'in yüklü olup olmadığını denetlemek için komut satırında komutunu çalıştırabilirsiniz pip --version . Python'ın en son sürümünü yükleyerek pip alın.

Ortam değişkenlerini oluşturma

Bu örnekte, kimlik bilgilerinizi uygulamayı çalıştıran yerel makinedeki ortam değişkenlerine yazacaksınız.

İpucu

Anahtarı doğrudan kodunuz içinde eklemeyin ve asla herkese açık olarak göndermeyin. Azure Key Vault gibi daha fazla kimlik doğrulama seçeneği için Azure AI hizmetleri güvenlik makalesine bakın.

Anahtarınızın ve uç noktanızın ortam değişkenini ayarlamak için bir konsol penceresi açın ve işletim sisteminiz ve geliştirme ortamınıza yönelik yönergeleri izleyin.

  1. Ortam değişkenini CONTENT_SAFETY_KEY ayarlamak için değerini kaynağınızın anahtarlarından biriyle değiştirin YOUR_CONTENT_SAFETY_KEY .
  2. Ortam değişkenini CONTENT_SAFETY_ENDPOINT ayarlamak için değerini kaynağınızın uç noktasıyla değiştirin YOUR_CONTENT_SAFETY_ENDPOINT .
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'

Ortam değişkenlerini ekledikten sonra, konsol penceresi de dahil olmak üzere ortam değişkenlerini okuyacak tüm çalışan programları yeniden başlatmanız gerekebilir.

Resim içeriğini analiz etme

Aşağıdaki bölümde Python SDK'sı ile örnek bir istekte yol gösterir.

  1. Bir komut istemi açın, proje klasörünüze gidin ve quickstart.py adlı yeni bir dosya oluşturun.

  2. Azure AI İçeriği Kasa ty istemci kitaplığını yüklemek için şu komutu çalıştırın:

    python -m pip install azure-ai-contentsafety
    
  3. Aşağıdaki kodu quickstart.py kopyalayın:

    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()
    
  4. ve "image.jpg" değerini, kullanmak istediğiniz yerel dosyanın yolu ve dosya adıyla değiştirin"sample_data".

  5. Ardından hızlı başlangıç dosyanızdaki komutuyla python uygulamayı çalıştırın.

    python quickstart.py
    

Başvuru belgeleri | Kitaplık kaynak kodu | Yapıtı (Maven)Örnekler |

Önkoşullar

Uygulamayı ayarlama

Yeni bir Gradle projesi oluşturun.

Konsol penceresinde (cmd, PowerShell veya Bash gibi), uygulamanız için yeni bir dizin oluşturun ve bu dizine gidin.

mkdir myapp && cd myapp

gradle init Komutunu çalışma dizininizden çalıştırın. Bu komut, uygulamanızı oluşturmak ve yapılandırmak için çalışma zamanında kullanılan build.gradle.kts de dahil olmak üzere Gradle için temel derleme dosyaları oluşturur.

gradle init --type basic

DSL seçmeniz istendiğinde Kotlin'i seçin.

Çalışma dizininizden aşağıdaki komutu çalıştırarak bir proje kaynak klasörü oluşturun:

mkdir -p src/main/java

Yeni klasöre gidin ve content Kasa tyQuickstart.java adlı bir dosya oluşturun.

Ayrıca projenizin kökünde bir src/resources klasör oluşturun ve buna örnek bir görüntü ekleyin.

İstemci SDK'sını yükleme

Bu hızlı başlangıçta Gradle bağımlılık yöneticisi kullanılır. Maven Central Repository'de diğer bağımlılık yöneticilerinin istemci kitaplığını ve bilgilerini bulabilirsiniz.

build.gradle.kts dosyasını bulun ve tercih ettiğiniz IDE veya metin düzenleyici ile açın. Ardından aşağıdaki derleme yapılandırmasını kopyalayın. Bu yapılandırma, projeyi giriş noktası Content Kasa tyQuickstart sınıfı olan bir Java uygulaması olarak tanımlar. Azure AI Vision kitaplığını içeri aktarır.

plugins {
    java
    application
}
application { 
    mainClass.set("ContentSafetyQuickstart")
}
repositories {
    mavenCentral()
}
dependencies {
    implementation(group = "com.azure", name = "azure-ai-contentsafety", version = "1.0.0")
}

Ortam değişkenlerini oluşturma

Bu örnekte, kimlik bilgilerinizi uygulamayı çalıştıran yerel makinedeki ortam değişkenlerine yazacaksınız.

İpucu

Anahtarı doğrudan kodunuz içinde eklemeyin ve asla herkese açık olarak göndermeyin. Azure Key Vault gibi daha fazla kimlik doğrulama seçeneği için Azure AI hizmetleri güvenlik makalesine bakın.

Anahtarınızın ve uç noktanızın ortam değişkenini ayarlamak için bir konsol penceresi açın ve işletim sisteminiz ve geliştirme ortamınıza yönelik yönergeleri izleyin.

  1. Ortam değişkenini CONTENT_SAFETY_KEY ayarlamak için değerini kaynağınızın anahtarlarından biriyle değiştirin YOUR_CONTENT_SAFETY_KEY .
  2. Ortam değişkenini CONTENT_SAFETY_ENDPOINT ayarlamak için değerini kaynağınızın uç noktasıyla değiştirin YOUR_CONTENT_SAFETY_ENDPOINT .
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'

Ortam değişkenlerini ekledikten sonra, konsol penceresi de dahil olmak üzere ortam değişkenlerini okuyacak tüm çalışan programları yeniden başlatmanız gerekebilir.

Resim içeriğini analiz etme

İçerik Kasa tyQuickstart.java tercih ettiğiniz düzenleyicide veya IDE'de açın ve aşağıdaki kodu yapıştırın. değişkenini source örnek görüntünüzün yoluyla değiştirin.

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());
        }
    }
}

Proje kök klasörüne geri dönün ve aşağıdakilerle uygulamayı derleyin:

gradle build

Ardından komutuyla gradle run çalıştırın:

gradle run

Çıktı

Hate severity: 0
SelfHarm severity: 0
Sexual severity: 0
Violence severity: 0

Başvuru belgeleri | Kitaplık kaynak kodu | Paketi (npm)Örnekler | |

Önkoşullar

Uygulamayı ayarlama

Yeni bir Node.js uygulaması oluşturun. Konsol penceresinde (cmd, PowerShell veya Bash gibi), uygulamanız için yeni bir dizin oluşturun ve bu dizine gidin.

mkdir myapp && cd myapp

Bir package.json dosyası ile bir düğüm uygulaması oluşturmak için npm init komutunu çalıştırın.

npm init

Ayrıca projenizin kökünde bir /resources klasör oluşturun ve buna örnek bir görüntü ekleyin.

İstemci SDK'sını yükleme

@azure-rest/ai-content-safety npm paketini yükleyin:

npm install @azure-rest/ai-content-safety

Ayrıca ortam değişkenlerini kullanmak için modülü yükleyin dotenv :

npm install dotenv

Uygulamanızın package.json dosyası bağımlılıklarla güncelleştirilecek.

Ortam değişkenlerini oluşturma

Bu örnekte, kimlik bilgilerinizi uygulamayı çalıştıran yerel makinedeki ortam değişkenlerine yazacaksınız.

İpucu

Anahtarı doğrudan kodunuz içinde eklemeyin ve asla herkese açık olarak göndermeyin. Azure Key Vault gibi daha fazla kimlik doğrulama seçeneği için Azure AI hizmetleri güvenlik makalesine bakın.

Anahtarınızın ve uç noktanızın ortam değişkenini ayarlamak için bir konsol penceresi açın ve işletim sisteminiz ve geliştirme ortamınıza yönelik yönergeleri izleyin.

  1. Ortam değişkenini CONTENT_SAFETY_KEY ayarlamak için değerini kaynağınızın anahtarlarından biriyle değiştirin YOUR_CONTENT_SAFETY_KEY .
  2. Ortam değişkenini CONTENT_SAFETY_ENDPOINT ayarlamak için değerini kaynağınızın uç noktasıyla değiştirin YOUR_CONTENT_SAFETY_ENDPOINT .
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'

Ortam değişkenlerini ekledikten sonra, konsol penceresi de dahil olmak üzere ortam değişkenlerini okuyacak tüm çalışan programları yeniden başlatmanız gerekebilir.

Resim içeriğini analiz etme

dizininizde yeni bir dosya oluşturun index.js. Bunu tercih ettiğiniz düzenleyicide veya IDE'de açın ve aşağıdaki kodu yapıştırın. değişkenini image_path örnek görüntünüzün yoluyla değiştirin.

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);
});

Uygulamayı hızlı başlangıç dosyanızdaki node komutuyla çalıştırın.

node index.js

Çıktı

Hate severity:  0
SelfHarm severity:  0
Sexual severity:  0
Violence severity:  0

Kaynakları temizleme

Azure AI hizmetleri aboneliğini temizlemek ve kaldırmak istiyorsanız, kaynağı veya kaynak grubunu silebilirsiniz. Kaynak grubunun silinmesi, kaynak grubuyla ilişkili diğer tüm kaynakları da siler.

Sonraki adımlar

Content Kasa ty Studio kullanarak her kategori için filtreleri yapılandırın ve veri kümelerinde test edin, kodu dışarı aktarın ve dağıtın.