Visual Question Answering (VQA)

Imagen for Captioning & VQA (imagetext) ist der Name des Modells, das Bildfragen und Antworten unterstützt. Imagen for Captioning & VQA beantwortet eine Frage zu einem bestimmten Bild, auch wenn es vom Modell noch nicht gesehen wurde.

Weitere Informationen zu diesem Modell in der Console finden Sie auf der Modellkarte „Imagen für Untertitelung und visuelles Fragen-Antwort-Spiel“ im Modell Garden.

Zum Model Garden

Anwendungsfälle

Hier einige häufige Anwendungsfälle für das Stellen und Beantworten von Bildfragen:

  • Mit Fragen und Antworten Nutzern ermöglichen, mit visuellen Inhalten zu interagieren
  • Ermöglichen, dass Kunden können mit Produktbildern interagieren, die in Einzelhandels-Apps und -Websites angezeigt werden.
  • Bedienungshilfen für sehbehinderte Nutzer bereitstellen

HTTP-Anfrage

POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/imagetext:predict

Anfragetext

{
  "instances": [
    {
      "prompt": string,
      "image": {
        // Union field can be only one of the following:
        "bytesBase64Encoded": string,
        "gcsUri": string,
        // End of list of possible types for union field.
        "mimeType": string
      }
    }
  ],
  "parameters": {
    "sampleCount": integer,
    "seed": integer
  }
}

Verwenden Sie für das VQA-Modell imagetext die folgenden Parameter. Weitere Informationen finden Sie unter Visual Question Answering (VQA) verwenden.

Parameter Beschreibung Zulässige Werte
instances Ein Array, das das Objekt mit Prompt und Bilddetails enthält, über das Informationen abgerufen werden sollen. Array (1 Bildobjekt zulässig)
prompt : Die Frage, die Sie zu Ihrem Bild beantworten lassen möchten. String (max. 80 Tokens)
bytesBase64Encoded Das Bild, zu dem Informationen abgerufen werden sollen. Base64-codierter Bildstring (PNG oder JPEG, maximal 20 MB)
gcsUri Der Cloud Storage-URI des Bildes, für das Informationen abgerufen werden sollen. String-URI der Bilddatei in Cloud Storage (PNG oder JPEG, maximal 20 MB)
mimeType Optional. Der MIME-Typ des angegebenen Bilds. String (image/jpeg oder image/png)
sampleCount Anzahl der generierten Textstrings. Ganzzahl-Wert: 1–3
seed Optional. Quelle für Zufallszahlengenerator (Random Number Generator, RNG). Wenn die RNG-Quelle für Anfragen mit den Eingaben identisch ist, sind die Vorhersageergebnisse identisch. integer

Beispielanfrage

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • PROJECT_ID: Ihre Google Cloud-Projekt-ID.
  • LOCATION: Die Region Ihres Projekts. Beispiel: us-central1, europe-west2 oder asia-northeast3. Eine Liste der verfügbaren Regionen finden Sie unter Generative AI an Vertex AI-Standorten.
  • VQA_PROMPT: Die Frage, die Sie zu Ihrem Bild beantworten lassen möchten.
    • Welche Farbe hat dieser Schuh?
    • Welche Art von Ärmeln hat das Hemd?
  • B64_IMAGE: Das Bild, dem Text hinzugefügt werden soll. Das Bild muss als base64-codierter Bytestring angegeben werden. Größenbeschränkung: 100 MB.
  • RESPONSE_COUNT: Die Anzahl der Antworten, die Sie generieren möchten. Zulässige Ganzzahlwerte: 1–3.

HTTP-Methode und URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagetext:predict

JSON-Text der Anfrage:

{
  "instances": [
    {
      "prompt": "VQA_PROMPT",
      "image": {
          "bytesBase64Encoded": "B64_IMAGE"
      }
    }
  ],
  "parameters": {
    "sampleCount": RESPONSE_COUNT
  }
}

Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:

curl

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagetext:predict"

PowerShell

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagetext:predict" | Select-Object -Expand Content
Die folgenden Beispielantworten beziehen sich auf eine Anfrage mit "sampleCount": 2 und "prompt": "What is this?". Die Antwort gibt zwei Vorhersagestringantworten zurück.
{
  "predictions": [
    "cappuccino",
    "coffee"
  ]
}

Antworttext


{
  "predictions": [
    string
  ]
}
Antwortelement Beschreibung
predictions Liste von Textstrings, die die VQA-Antwort darstellen, sortiert nach Konfidenz.

Beispielantwort

Die folgenden Beispielantworten beziehen sich auf eine Anfrage mit "sampleCount": 2 und "prompt": "What is this?". Die Antwort gibt zwei Vorhersagestringantworten zurück.

{
  "predictions": [
    "cappuccino",
    "coffee"
  ],
  "deployedModelId": "DEPLOYED_MODEL_ID",
  "model": "projects/PROJECT_ID/locations/us-central1/models/MODEL_ID",
  "modelDisplayName": "MODEL_DISPLAYNAME",
  "modelVersionId": "1"
}