Schnellstart: Analysieren multimodaler Inhalte (Vorschau)
Die multimodale API analysiert Material, das sowohl Bild- als auch Textinhalte enthält, um Anwendungen und Dienste vor schädlichen benutzer- oder KI-generierten Inhalten zu schützen. Die gleichzeitige Analyse eines Bilds und des zugehörigen Textinhalts kann den Kontext bewahren und ein umfassenderes Verständnis des Inhalts ermöglichen.
Weitere Informationen zur Inhaltsfilterung finden Sie auf der Seite Konzept der schädlichen Kategorien. Informationen zu API-Eingabegrenzwerten finden Sie im Abschnitt Eingabeanforderungen der Übersicht.
Wichtig
Dieses Feature ist nur in bestimmten Azure-Regionen verfügbar. Weitere Informationen finden Sie unter Regionale Verfügbarkeit.
Voraussetzungen
- Azure-Abonnement: Kostenloses Azure-Konto
- Sobald Sie über ein Azure-Abonnement verfügen, können Sie im Azure-Portal eine Content Safety-Ressource erstellen, um Ihren Schlüssel und Endpunkt abzurufen. Geben Sie für Ihre Ressource einen eindeutigen Namen ein. Wählen Sie Ihr Abonnement aus, und wählen Sie dann eine Ressourcengruppe, eine unterstützte Region und einen unterstützten Tarif. Klicken Sie anschließend auf Erstellen.
- Die Bereitstellung der Ressource dauert einige Minuten. Wählen Sie im Anschluss Zu Ressource wechseln aus. Wählen Sie im linken Bereich unter Ressourcenverwaltung die Option Abonnementschlüssel und Endpunkt aus. Kopieren Sie den Endpunkt und einen der Schlüsselwerte an einen temporären Speicherort für die spätere Verwendung.
- Installation einer der folgenden Optionen:
- cURL für REST-API-Aufrufe
- Installation von Python 3.x
Analysieren von Bildern mit Text
Der folgende Abschnitt führt durch ein Beispiel für eine multimodale Moderationsanforderung mit cURL.
Vorbereiten eines Beispielbilds
Wählen Sie ein zu analysierendes Beispielbild aus, und laden Sie es auf Ihr Gerät herunter.
Siehe Eingabeanforderungen für die Bildbeschränkungen. Wenn Ihr Format animiert ist, extrahiert der Dienst den ersten Frame, um die Analyse vorzunehmen.
Sie können Ihr Bild mit einer von zwei Methoden eingeben: lokaler Filestream oder Blob Storage-URL.
- Lokaler Filestream (empfohlen): Codieren Sie Ihr Image mit Base64. Zur Codierung eignet sich eine Website wie codebeautify. Speichern Sie dann die codierte Zeichenfolge an einem temporären Speicherort.
- Blob Storage-URL: Laden Sie Ihr Bild in ein Azure Blob Storage-Konto hoch. Befolgen Sie den Schnellstart für Blob Storage, um zu erfahren, was zu tun ist. Öffnen Sie dann Azure Storage-Explorer, und rufen Sie die URL zu Ihrem Bild ab. Speichern Sie sie an einem temporären Speicherort.
Analysieren von Bildern mit Text
Fügen Sie den nachstehenden Befehl in einen Text-Editor ein, und nehmen Sie folgende Änderungen vor:
- Ersetzen Sie
<endpoint>
durch Ihre Ressourcenendpunkt-URL. - Ersetzen Sie
<your_subscription_key>
durch Ihren Schlüssel. - Füllen Sie das Feld
"image"
im Textkörper entweder mit dem Feld des Typs"content"
oder"blobUrl"
auf. Beispiel:{"image": {"content": "<base_64_string>"}
oder{"image": {"blobUrl": "<your_storage_url>"}
. - Ersetzen Sie optional den Wert des Felds
"text"
durch Ihren eigenen Text für die Analyse.
curl --location '<endpoint>/contentsafety/imageWithText:analyze?api-version=2024-09-15-preview ' \
--header 'Ocp-Apim-Subscription-Key: <your_subscription_key>' \
--header 'Content-Type: application/json' \
--data '{
"image": {
"content": "<base_64_string>"
},
"categories": ["Hate","Sexual","Violence","SelfHarm"],
"enableOcr": true,
"text": "I want to kill you"
}'
Hinweis
Wenn Sie eine Blob Storage-URL verwenden, muss der Anforderungstext wie folgt aussehen:
{
"image": {
"blobUrl": "<your_storage_url>"
}
}
Folgende Felder müssen in der URL enthalten sein:
Name | Erforderlich? | Beschreibung | type |
---|---|---|---|
API-Version | Erforderlich | Die zu überprüfende API-Version. Die aktuelle Version lautet: api-version=2024-09-15 . Beispiel: <endpoint>/contentsafety/imageWithText:analyze?api-version=2024-09-15 |
String |
Die Parameter im Anforderungstext sind in der folgenden Tabelle definiert:
Name | Description | type |
---|---|---|
„content“ oder „blobUrl“ | (Erforderlich) Der Inhalt oder die Blob-URL des Bilds. Kann eine entweder Base64-codierte Bytezahl oder eine Blob-URL sein. Wenn beides angegeben ist, wird die Anforderung abgelehnt. Die maximal zulässige Bildgröße beträgt 7,200 × 7,200 Pixel, die maximale Dateigröße beträgt 4 MB. Die Mindestgröße des Bilds beträgt 50 × 50 Pixel. | String |
text | (Optional) Der an das Bild angefügte Text. Pro Textanforderung werden maximal 1.000 Zeichen (Unicode-Codepunkte) unterstützt. | String |
enableOcr | (Erforderlich) Bei Festlegung auf „true“ führt der Dienst eine optische Zeichenerkennung durch und analysiert den erkannten Text zusammen mit dem Eingabebild. Aus dem Eingabebild werden maximal 1.000 Zeichen (Unicode-Codepunkte) erkannt. Der Rest wird abgeschnitten. | Boolean |
categories | (Optional) Es wird davon ausgegangen, dass es sich hierbei um ein Array von Kategorienamen handelt. Eine Liste der verfügbaren Kategorienamen finden Sie im Leitfaden zu Schadenskategorien. Sind keine Kategorien angegeben, werden alle vier Kategorien verwendet. Es werden mehrere Kategorien verwendet, um Scores in einer einzelnen Anforderung zu erhalten. | Enum |
Öffnen Sie ein Eingabeaufforderungsfenster, und führen Sie den cURL-Befehl aus.
Output
Die Ergebnisse der Bild- und Textmoderation sollten als JSON-Daten in der Konsole angezeigt werden. Zum Beispiel:
{
"categoriesAnalysis": [
{
"category": "Hate",
"severity": 2
},
{
"category": "SelfHarm",
"severity": 0
},
{
"category": "Sexual",
"severity": 0
},
{
"category": "Violence",
"severity": 0
}
]
}
Die JSON-Felder in der Ausgabe werden hier definiert:
Name | Description | Typ |
---|---|---|
categoriesAnalysis | Jede Ausgabeklasse, die von der API vorhergesagt wird. Die Klassifizierung kann mit mehreren Bezeichnungen versehen werden. Wenn z. B. ein Bild in das Bildmoderationsmodell hochgeladen wird, könnte sein Inhalt sowohl als sexuell als auch als gewalttätig eingestuft werden. Schadenskategorien | String |
Severity | Der Schweregrad der Flag in jeder Schadenskategorie. Schadenskategorien | Ganzzahl |