Share via


Rövid útmutató: Képtartalom elemzése

Ismerkedjen meg a Content Studio, a REST API vagy az ügyféloldali SDK-k alapszintű képmoderálásával. Az Azure AI Content Széf ty szolgáltatás AI-algoritmusokat biztosít a kifogásolható tartalmak megjelöléséhez. A kipróbálásához kövesse az alábbi lépéseket.

Feljegyzés

A mintaadatok és a kód sértő tartalmat tartalmazhatnak. A felhasználó belátása ajánlott.

Előfeltételek

  • Azure-előfizetés – Ingyenes létrehozás
  • Miután megkapta az Azure-előfizetését, hozzon létre egy Content Széf ty erőforrást az Azure Portalon a kulcs és a végpont lekéréséhez. Adja meg az erőforrás egyedi nevét, válassza ki az előfizetését, és válasszon ki egy erőforráscsoportot, egy támogatott régiót (az USA keleti régióját vagy Nyugat-Európát), valamint a támogatott tarifacsomagot. Válassza a Létrehozás parancsot.
    • Az erőforrás üzembe helyezése néhány percet vesz igénybe. A befejezés után válassza az Erőforrás megnyitása lehetőséget. A bal oldali panel Erőforrás-kezelés területén válassza az Előfizetési kulcsot és a Végpontot. A végpont és a kulcsok bármelyike az API-k meghívására szolgál.
  • telepített cURL

Képtartalmak elemzése

A következő szakasz végigvezet egy minta képmoderálási kérésen a cURL használatával.

Mintakép előkészítése

Válasszon ki egy elemezni kívánt mintaképet, és töltse le az eszközére.

Támogatjuk a JPEG, PNG, GIF, BMP, TIFF vagy WEBP képformátumokat. A képbeküldések maximális mérete 4 MB, a képméreteknek pedig 50 x 50 képpont és 2048 x 2048 képpont között kell lenniük. Ha a formátum animálva van, kinyerjük az első keretet az észleléshez.

A rendszerképet kétféle módszerrel adhatja meg: helyi fájlstream vagy blobtároló URL-címe.

  • Helyi fájlstream (ajánlott): Kódolja a rendszerképet a base64-be. A kódoláshoz használhat olyan webhelyet, mint a codebeautify . Ezután mentse a kódolt sztringet egy ideiglenes helyre.

  • Blob Storage URL-címe: Töltse fel a rendszerképet egy Azure Blob Storage-fiókba. Kövesse a blobtároló rövid útmutatót , amelyből megtudhatja, hogyan teheti ezt meg. Ezután nyissa meg az Azure Storage Explorert, és kérje le a rendszerkép URL-címét. Mentse ideiglenes helyre.

    Ezután hozzáférést kell adnia a Content Széf ty erőforrásnak az Azure Storage-erőforrásból való olvasáshoz. Engedélyezze a rendszer által hozzárendelt felügyelt identitást az Azure AI Content Széf ty-példányhoz, és rendelje hozzá a Storage Blob-adatszolgáltató/tulajdonos/olvasó szerepkört az identitáshoz:

    1. Engedélyezze a felügyelt identitást az Azure AI Content Széf ty-példányhoz.

      Képernyőkép a felügyelt identitást engedélyező Azure Portalról.

    2. Rendelje hozzá a Storage Blob-adatok közreműködője /tulajdonosa/olvasó szerepkörét a felügyelt identitáshoz. Az alább kiemelt szerepköröknek működnie kell.

      Képernyőkép a Szerepkör-hozzárendelés hozzáadása képernyőről az Azure Portalon.

      Képernyőkép a hozzárendelt szerepkörökről az Azure Portalon.

      Képernyőkép a felügyelt identitásszerepkörről.

Képtartalmak elemzése

Illessze be az alábbi parancsot egy szövegszerkesztőbe, és végezze el a következő módosításokat.

  1. Cserélje le az <endpoint> erőforrásvégpont URL-címét.
  2. Írja felül a <your_subscription_key> változót a saját kulcsával.
  3. Töltse ki a "image" törzsben lévő mezőt egy vagy egy "content""blobUrl" mezővel. Például: {"image": {"content": "<base_64_string>"} vagy {"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"
}'

Feljegyzés

Blobtároló URL-cím használata esetén a kérelem törzse a következőképpen fog kinézni:

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

Nyisson meg egy parancssori ablakot, és futtassa a cURL parancsot.

Az alábbi mezőknek szerepelnie kell az URL-címben:

Név Kötelező? Leírás Típus
API-verzió Kötelező Ezt az API-verziót kell ellenőrizni. Jelenlegi verzió: api-version=2023-10-01. Példa: <endpoint>/contentsafety/image:analyze?api-version=2023-10-01 Sztring

A kérelem törzsének paramétereit ebben a táblában definiáljuk:

Név Kötelező? Leírás Típus
Tartalom Kötelező A kép tartalma vagy blob URL-címe. Lehetek base64 kódolású bájt vagy blob URL-cím. Ha mindkettő meg van adva, a kérelem elutasításra kerül. A kép maximális megengedett mérete 2048 képpont x 2048 képpont, a maximális fájlméret pedig 4 MB. A kép minimális mérete 50 képpont x 50 képpont. Sztring
Kategóriák Választható A rendszer feltételezi, hogy ez a kategórianevek tömbje. Az elérhető kategórianevek listáját a Kárkategóriák útmutatóban találja. Ha nincs megadva kategória, a rendszer mind a négy kategóriát használja. Több kategóriát használunk a pontszámok egyetlen kérelemben való lekéréséhez. Sztring
outputType Választható A képmoderálási API csak a ."FourSeverityLevels" A kimenet súlyossága négy szinten. Az érték lehet 0,2,4,6 Sztring

Hozam

A képmoderálási eredményeknek JSON-adatokként kell megjelennie a konzolon. Példa:

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

A kimenet JSON-mezői itt vannak definiálva:

Név Leírás Típus
categoriesAnalysis Minden kimeneti osztály, amelyet az API előre jelez. A besorolás többcímkés is lehet. Ha például egy képet feltöltenek a képmoderálási modellbe, az szexuális tartalomként és erőszakként is besorolható. Kárkategóriák Sztring
Súlyosság A jelölő súlyossági szintje az egyes kárkategóriákban. Kárkategóriák Egész

Referenciadokumentáció Kódtár forráskódcsomagja | (NuGet) | -minták |

Előfeltételek

  • Azure-előfizetés – Ingyenes létrehozás
  • A Visual Studio IDE és a számítási feladat .NET asztali fejlesztése engedélyezve van. Vagy ha nem tervezi a Visual Studio IDE használatát, akkor a .NET Core aktuális verziójára van szüksége.
  • A .NET-futtatókörnyezet telepítve van.
  • Miután megkapta az Azure-előfizetését, hozzon létre egy Content Széf ty erőforrást az Azure Portalon a kulcs és a végpont lekéréséhez. Adja meg az erőforrás egyedi nevét, válassza ki az előfizetését, és válasszon ki egy erőforráscsoportot, egy támogatott régiót (az USA keleti régióját vagy Nyugat-Európát), valamint a támogatott tarifacsomagot. Válassza a Létrehozás parancsot.
    • Az erőforrás üzembe helyezése néhány percet vesz igénybe. A befejezés után válassza az Ugrás az erőforráshoz lehetőséget. A bal oldali panel Erőforrás-kezelés területén válassza az Előfizetési kulcsot és a Végpontot. A végpont és a kulcsok bármelyike az API-k meghívására szolgál.

Alkalmazás beállítása

Hozzon létre egy új C#-alkalmazást.

Nyissa meg a Visual Studiót, és az Első lépések csoportban válassza az Új projekt létrehozása lehetőséget. Állítsa be a sablonszűrőket A C#/Minden platform/konzol értékre. Válassza a Konzolalkalmazás (a .NET-en futtatható parancssori alkalmazás Windows, Linux és macOS rendszeren) lehetőséget, és válassza a Tovább gombot. Frissítse a projekt nevét a Content Széf tyQuickstart fájlra, és válassza a Tovább gombot. Válassza a .NET 6.0-s vagy újabb verzióját, és válassza a Létrehozás lehetőséget a projekt létrehozásához.

Az ügyféloldali SDK telepítése

Miután létrehozott egy új projektet, telepítse az ügyfél SDK-t a jobb gombbal a projektmegoldásra kattintva a Megoldáskezelő, majd válassza a NuGet-csomagok kezelése lehetőséget. A megnyíló csomagkezelőben válassza a Tallózás lehetőséget , és keressen rá Azure.AI.ContentSafety. Válassza a Telepítés lehetőséget.

Környezeti változók létrehozása

Ebben a példában a hitelesítő adatokat az alkalmazást futtató helyi gépen lévő környezeti változókba fogja írni.

Tipp.

Ne vegye fel közvetlenül a kulcsot a kódba, és soha ne tegye közzé nyilvánosan. Az Azure AI-szolgáltatások biztonsági cikkében további hitelesítési lehetőségeket talál, például az Azure Key Vaultot.

A kulcs és a végpont környezeti változójának beállításához nyisson meg egy konzolablakot, és kövesse az operációs rendszer és a fejlesztési környezet utasításait.

  1. A CONTENT_SAFETY_KEY környezeti változó beállításához cserélje le YOUR_CONTENT_SAFETY_KEY az erőforrás egyik kulcsára.
  2. A CONTENT_SAFETY_ENDPOINT környezeti változó beállításához cserélje le YOUR_CONTENT_SAFETY_ENDPOINT az erőforrás végpontját.
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'

A környezeti változók hozzáadása után előfordulhat, hogy újra kell indítania azokat a futó programokat, amelyek felolvassák a környezeti változókat, beleértve a konzolablakot is.

Képtartalmak elemzése

A projektkönyvtárban nyissa meg a korábban létrehozott Program.cs fájlt. Másolja be a következő kódot.

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

Hozzon létre egy sample_data mappát a projektkönyvtárban, és adjon hozzá egy image.png fájlt.

Az alkalmazás létrehozásához és futtatásához válassza a Hibakeresés indítása lehetőséget az IDE ablak tetején található Hibakeresés menüből (vagy nyomja le az F5 billentyűt).

Referenciadokumentáció Kódtár forráskódcsomagja | (PyPI)Minták | | |

Előfeltételek

  • Azure-előfizetés – Ingyenes létrehozás
  • Miután megkapta az Azure-előfizetését, hozzon létre egy Content Széf ty erőforrást az Azure Portalon a kulcs és a végpont lekéréséhez. Adja meg az erőforrás egyedi nevét, válassza ki az előfizetését, és válasszon ki egy erőforráscsoportot, egy támogatott régiót (az USA keleti régióját vagy Nyugat-Európát), valamint a támogatott tarifacsomagot. Válassza a Létrehozás parancsot.
    • Az erőforrás üzembe helyezése néhány percet vesz igénybe. A befejezés után válassza az Ugrás az erőforráshoz lehetőséget. A bal oldali panel Erőforrás-kezelés területén válassza az Előfizetési kulcsot és a Végpontot. A végpont és a kulcsok bármelyike az API-k meghívására szolgál.
  • Python 3.8 vagy újabb
    • A Python-telepítésnek tartalmaznia kell a pipet. A parancssorban való futtatással pip --version ellenőrizheti, hogy telepítve van-e a pip. Kérje le a pipet a Python legújabb verziójának telepítésével.

Környezeti változók létrehozása

Ebben a példában a hitelesítő adatokat az alkalmazást futtató helyi gépen lévő környezeti változókba fogja írni.

Tipp.

Ne vegye fel közvetlenül a kulcsot a kódba, és soha ne tegye közzé nyilvánosan. Az Azure AI-szolgáltatások biztonsági cikkében további hitelesítési lehetőségeket talál, például az Azure Key Vaultot.

A kulcs és a végpont környezeti változójának beállításához nyisson meg egy konzolablakot, és kövesse az operációs rendszer és a fejlesztési környezet utasításait.

  1. A CONTENT_SAFETY_KEY környezeti változó beállításához cserélje le YOUR_CONTENT_SAFETY_KEY az erőforrás egyik kulcsára.
  2. A CONTENT_SAFETY_ENDPOINT környezeti változó beállításához cserélje le YOUR_CONTENT_SAFETY_ENDPOINT az erőforrás végpontját.
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'

A környezeti változók hozzáadása után előfordulhat, hogy újra kell indítania azokat a futó programokat, amelyek felolvassák a környezeti változókat, beleértve a konzolablakot is.

Képtartalmak elemzése

A következő szakasz végigvezet egy mintakérésen a Python SDK-val.

  1. Nyisson meg egy parancssort, keresse meg a projektmappát, és hozzon létre egy quickstart.py nevű új fájlt.

  2. Futtassa ezt a parancsot az Azure AI Content Széf ty ügyfélkódtár telepítéséhez:

    python -m pip install azure-ai-contentsafety
    
  3. Másolja a következő kódot a 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()
    
  4. Cserélje le és "image.jpg" írja be "sample_data" a használni kívánt helyi fájl elérési útját és fájlnevét.

  5. Ezután futtassa az alkalmazást a python rövid útmutatófájl parancsával.

    python quickstart.py
    

Referenciadokumentáció Kódtár forráskód | összetevője (Maven)Minták | |

Előfeltételek

  • Azure-előfizetés – Ingyenes létrehozás
  • A Java Development Kit (JDK) aktuális verziója
  • A Gradle buildelési eszköz vagy egy másik függőségkezelő.
  • Miután megkapta az Azure-előfizetését, hozzon létre egy Content Széf ty erőforrást az Azure Portalon a kulcs és a végpont lekéréséhez. Adja meg az erőforrás egyedi nevét, válassza ki az előfizetését, és válasszon ki egy erőforráscsoportot, egy támogatott régiót (az USA keleti régióját vagy Nyugat-Európát), valamint a támogatott tarifacsomagot. Válassza a Létrehozás parancsot.
    • Az erőforrás üzembe helyezése néhány percet vesz igénybe. A befejezés után válassza az Ugrás az erőforráshoz lehetőséget. A bal oldali panel Erőforrás-kezelés területén válassza az Előfizetési kulcsot és a Végpontot. A végpont és a kulcsok bármelyike az API-k meghívására szolgál.

Alkalmazás beállítása

Hozzon létre egy új Gradle-projektet.

Egy konzolablakban (pl. cmd, PowerShell vagy Bash) hozzon létre egy új mappát az alkalmazásnak, majd navigáljon oda.

mkdir myapp && cd myapp

Futtassa a gradle init parancsot a munkakönyvtárból. Ez a parancs alapvető buildfájlokat hoz létre a Gradle-hez, beleértve a build.gradle.kts fájlt, amelyet futásidőben használnak az alkalmazás létrehozásához és konfigurálásához.

gradle init --type basic

Amikor a rendszer kéri, hogy válasszon egy DSL-t, válassza a Kotlin lehetőséget.

A munkakönyvtárban futtassa a következő parancsot a projekt forrásmappájának létrehozásához:

mkdir -p src/main/java

Lépjen az új mappára, és hozzon létre egy Content Széf tyQuickstart.java nevű fájlt.

Hozzon létre egy src/resources mappát a projekt gyökerénél, és adjon hozzá egy mintaképet.

Az ügyféloldali SDK telepítése

Ez a rövid útmutató a Gradle függőségkezelőt használja. A Maven Central-adattárban megtalálhatja a többi függőségkezelő ügyfélkódtárát és információit.

Keresse meg a build.gradle.kts fájlt, és nyissa meg a kívánt IDE- vagy szövegszerkesztővel. Ezután másolja a következő buildkonfigurációba. Ez a konfiguráció java-alkalmazásként definiálja a projektet, amelynek belépési pontja a Content Széf tyQuickstart osztály. Importálja az Azure AI Vision-kódtárat.

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

Környezeti változók létrehozása

Ebben a példában a hitelesítő adatokat az alkalmazást futtató helyi gépen lévő környezeti változókba fogja írni.

Tipp.

Ne vegye fel közvetlenül a kulcsot a kódba, és soha ne tegye közzé nyilvánosan. Az Azure AI-szolgáltatások biztonsági cikkében további hitelesítési lehetőségeket talál, például az Azure Key Vaultot.

A kulcs és a végpont környezeti változójának beállításához nyisson meg egy konzolablakot, és kövesse az operációs rendszer és a fejlesztési környezet utasításait.

  1. A CONTENT_SAFETY_KEY környezeti változó beállításához cserélje le YOUR_CONTENT_SAFETY_KEY az erőforrás egyik kulcsára.
  2. A CONTENT_SAFETY_ENDPOINT környezeti változó beállításához cserélje le YOUR_CONTENT_SAFETY_ENDPOINT az erőforrás végpontját.
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'

A környezeti változók hozzáadása után előfordulhat, hogy újra kell indítania azokat a futó programokat, amelyek felolvassák a környezeti változókat, beleértve a konzolablakot is.

Képtartalmak elemzése

Nyissa meg a Tartalmat Széf tyQuickstart.java az előnyben részesített szerkesztőben vagy IDE-ben, és illessze be a következő kódba. Cserélje le a változót source a mintakép elérési útjára.

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

Lépjen vissza a projekt gyökérmappájához, és hozza létre az alkalmazást a következőkkel:

gradle build

Ezután futtassa a gradle run következő paranccsal:

gradle run

Hozam

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

Referenciadokumentáció Kódtár forráskódcsomagja | (npm)Minták | | |

Előfeltételek

  • Azure-előfizetés – Ingyenes létrehozás
  • A Node.js aktuális verziója
  • Miután megkapta az Azure-előfizetését, hozzon létre egy Content Széf ty erőforrást az Azure Portalon a kulcs és a végpont lekéréséhez. Adja meg az erőforrás egyedi nevét, válassza ki az előfizetését, és válasszon ki egy erőforráscsoportot, egy támogatott régiót (az USA keleti régióját vagy Nyugat-Európát), valamint a támogatott tarifacsomagot. Válassza a Létrehozás parancsot.
    • Az erőforrás üzembe helyezése néhány percet vesz igénybe. A befejezés után válassza az Ugrás az erőforráshoz lehetőséget. A bal oldali panel Erőforrás-kezelés területén válassza az Előfizetési kulcsot és a Végpontot. A végpont és a kulcsok bármelyike az API-k meghívására szolgál.

Alkalmazás beállítása

Hozzon létre egy új Node.js alkalmazást. Egy konzolablakban (pl. cmd, PowerShell vagy Bash) hozzon létre egy új mappát az alkalmazásnak, majd navigáljon oda.

mkdir myapp && cd myapp

Futtassa az npm init parancsot egy Node-alkalmazás package.json fájllal való létrehozásához.

npm init

Hozzon létre egy /resources mappát a projekt gyökerénél, és adjon hozzá egy mintaképet.

Az ügyféloldali SDK telepítése

Telepítse az @azure-rest/ai-content-safety npm-csomagot:

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

Telepítse a modult környezeti dotenv változók használatára is:

npm install dotenv

Az alkalmazás package.json fájlja frissül a függőségekkel.

Környezeti változók létrehozása

Ebben a példában a hitelesítő adatokat az alkalmazást futtató helyi gépen lévő környezeti változókba fogja írni.

Tipp.

Ne vegye fel közvetlenül a kulcsot a kódba, és soha ne tegye közzé nyilvánosan. Az Azure AI-szolgáltatások biztonsági cikkében további hitelesítési lehetőségeket talál, például az Azure Key Vaultot.

A kulcs és a végpont környezeti változójának beállításához nyisson meg egy konzolablakot, és kövesse az operációs rendszer és a fejlesztési környezet utasításait.

  1. A CONTENT_SAFETY_KEY környezeti változó beállításához cserélje le YOUR_CONTENT_SAFETY_KEY az erőforrás egyik kulcsára.
  2. A CONTENT_SAFETY_ENDPOINT környezeti változó beállításához cserélje le YOUR_CONTENT_SAFETY_ENDPOINT az erőforrás végpontját.
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'

A környezeti változók hozzáadása után előfordulhat, hogy újra kell indítania azokat a futó programokat, amelyek felolvassák a környezeti változókat, beleértve a konzolablakot is.

Képtartalmak elemzése

Hozzon létre egy új fájlt a címtárban, index.js. Nyissa meg a kívánt szerkesztőben vagy IDE-ben, és illessze be a következő kódba. Cserélje le a változót image_path a mintakép elérési útjára.

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

Futtassa az alkalmazást a node paranccsal a gyorsútmutatós fájlon.

node index.js

Hozam

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

Az erőforrások eltávolítása

Ha törölni és eltávolítani szeretne egy Azure AI-szolgáltatási előfizetést, törölheti az erőforrást vagy az erőforráscsoportot. Az erőforráscsoport törlése a hozzá társított egyéb erőforrásokat is törli.

Következő lépések

Konfigurálja az egyes kategóriák szűrőit, és tesztelje az adathalmazokat a Content Széf ty Studióval, exportálja a kódot, és telepítse őket.