Système visuel de questions-réponses (VQA)

Imagen pour le sous-titrage et VQA (imagetext) est le nom du modèle qui fonctionne avec les questions et les réponses d'images. Il répond à une question fournie pour une image donnée, même si elle n'a pas encore été vue par le modèle.

Pour explorer ce modèle dans la console, consultez la fiche de modèle "Imagen pour le sous-titrage et VQA" dans Model Garden.

Afficher la fiche de modèle "Imagen pour le sous-titrage et VQA"

Cas d'utilisation

Voici quelques cas d'utilisation courants des questions et des réponses d'images :

  • Encourager les utilisateurs à interagir avec du contenu visuel à l'aide de questions/réponses
  • Permettre aux clients d'interagir avec des images produit affichées dans des applications et sur des sites Web de commerce
  • Fournir des options d'accessibilité pour les utilisateurs malvoyants

Requête HTTP

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

Corps de la requête

{
  "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
  }
}

Utilisez les paramètres suivants pour le modèle visuel de génération de questions-réponses imagetext. Pour en savoir plus, consultez Utiliser Visual Question Answering (VQA).

Paramètre Description Valeurs acceptables
instances Tableau qui contient l'objet comprenant des détails sur une requête et une image pour lequel vous souhaitez obtenir des informations. Tableau (1 objet autorisé par image)
prompt La question pour laquelle vous souhaitez obtenir une réponse concernant votre image. Chaîne (80 jetons au maximum)
bytesBase64Encoded Image pour laquelle vous souhaitez obtenir des informations. Chaîne d'image encodée en base64 (PNG ou JPEG, 20 Mo au maximum)
gcsUri URI Cloud Storage de l'image pour laquelle vous souhaitez obtenir des informations. URI de chaîne du fichier image dans Cloud Storage (PNG ou JPEG, 20 Mo au maximum)
mimeType Facultatif. Type MIME de l'image que vous spécifiez. Chaîne (image/jpeg ou image/png)
sampleCount Nombre de chaînes de texte générées. Valeur entière : 1 à 3
seed Facultatif. Graine du générateur de nombres aléatoires (GNA). Si la graine du GNA est identique pour les requêtes contenant les entrées, les résultats de prédiction seront similaires. Entier

Exemple de requête

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • PROJECT_ID : ID de votre projet Google Cloud .
  • LOCATION : région de votre projet (us-central1, europe-west2 ou asia-northeast3, par exemple). Pour obtenir la liste des régions disponibles, consultez IA générative sur les emplacements Vertex AI.
  • VQA_PROMPT : question pour laquelle vous souhaitez obtenir une réponse concernant votre image.
    • De quelle couleur est cette chaussure ?
    • Quel est le type de manches de la chemise ?
  • B64_IMAGE : image pour laquelle vous souhaitez obtenir une légende. L'image doit être spécifiée en tant que chaîne d'octets encodés en base64. La taille maximale est de 10 Mo.
  • RESPONSE_COUNT : nombre de réponses que vous souhaitez générer. Valeurs entières acceptées : 1 à 3.

Méthode HTTP et URL :

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

Corps JSON de la requête :

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

Pour envoyer votre requête, choisissez l'une des options suivantes :

curl

Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :

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

Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :

$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
Les exemples de réponses suivants concernent une requête avec "sampleCount": 2 et "prompt": "What is this?". La réponse renvoie deux réponses de chaînes de prédiction.
{
  "predictions": [
    "cappuccino",
    "coffee"
  ]
}

Corps de la réponse


{
  "predictions": [
    string
  ]
}
Élément de réponse Description
predictions Liste de chaînes de texte représentant les réponses VQA, triées par confiance.

Exemple de réponse

Les exemples de réponses suivants concernent une requête avec "sampleCount": 2 et "prompt": "What is this?". La réponse renvoie deux réponses de chaînes de prédiction.

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