la Visual Question Answering (VQA) consente di fornire un'immagine al modello e chiedere una domanda sui contenuti dell'immagine. In risposta alla tua domanda, riceverai uno o più risposte in linguaggio naturale.
Lingue supportate
VQA è disponibile nelle seguenti lingue:
- Inglese (en)
Prestazioni e limitazioni
Quando utilizzi questo modello, si applicano i seguenti limiti:
Limiti | Valore |
---|---|
Numero massimo di richieste API (formato breve) al minuto per progetto | 500 |
Numero massimo di token restituiti nella risposta (formato breve) | 64 token |
Numero massimo di token accettati nella richiesta (solo VQA nel formato breve) | 80 token |
Numero massimo di token restituiti nella risposta (formato lungo) | 512 token |
Quando utilizzi questo strumento, vengono applicate le seguenti stime di latenza del servizio un modello di machine learning. Questi valori hanno scopo puramente illustrativo e non costituiscono una promessa di servizio:
Latenza | Valore |
---|---|
Richieste API (formato breve) | 1,5 secondi |
Richieste API (formato lungo) | 4,5 secondi |
Località
Una località è una regione che puoi specificare in una richiesta controllare dove vengono archiviati i dati at-rest. Per un elenco delle aree geografiche disponibili, vedi IA generativa nelle località di Vertex AI.
Filtro sicurezza IA responsabile
Il modello di funzionalità per le didascalie delle immagini e la risposta alle domande visive (VQA) Supporta filtri di sicurezza configurabili dall'utente. Tuttavia, nel complesso Sicurezza Imagen filtro si verifica i seguenti dati:
- Input utente
- Output del modello
Di conseguenza, l'output può essere diverso da quello di esempio se Imagen applica questi filtri di sicurezza. Considera quanto segue. esempi.
Input filtrato
Se l'input viene filtrato, la risposta è simile alla seguente:
{
"error": {
"code": 400,
"message": "Media reasoning failed with the following error: The response is blocked, as it may violate our policies. If you believe this is an error, please send feedback to your account team. Error Code: 63429089, 72817394",
"status": "INVALID_ARGUMENT",
"details": [
{
"@type": "type.googleapis.com/google.rpc.DebugInfo",
"detail": "[ORIGINAL ERROR] generic::invalid_argument: Media reasoning failed with the following error: The response is blocked, as it may violate our policies. If you believe this is an error, please send feedback to your account team. Error Code: 63429089, 72817394 [google.rpc.error_details_ext] { message: \"Media reasoning failed with the following error: The response is blocked, as it may violate our policies. If you believe this is an error, please send feedback to your account team. Error Code: 63429089, 72817394\" }"
}
]
}
}
Output filtrato
Se il numero di risposte restituite è inferiore al numero di campioni specificato,
Ciò significa che le risposte mancanti vengono filtrate dall'AI responsabile. Ad esempio:
La seguente è una risposta a una richiesta con "sampleCount": 2
, ma uno dei
risposte vengono escluse:
{
"predictions": [
"cappuccino"
]
}
Se tutto l'output viene filtrato, la risposta è un oggetto vuoto simile al seguenti:
{}
Utilizzare VQA su un'immagine (risposte brevi)
Usa gli esempi riportati di seguito per porre una domanda e ottenere una risposta su un'immagine.
REST
Per ulteriori informazioni sulle richieste del modello imagetext
, consulta
Riferimento all'API del modello imagetext
.
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
- PROJECT_ID: il tuo ID progetto Google Cloud.
- LOCATION: la regione del tuo progetto. Ad esempio:
us-central1
,europe-west2
oasia-northeast3
. Per una lista delle regioni disponibili, vedi L'IA generativa nelle località di Vertex AI. - VQA_PROMPT: la domanda a cui vuoi ricevere una risposta sulla tua immagine.
- Di che colore sono queste scarpe?
- Che tipo di maniche ci sono sulla camicia?
- B64_IMAGE: l'immagine per la quale visualizzare i sottotitoli codificati. L'immagine deve essere specificato come stringa di byte con codifica base64. Dimensioni limite: 10 MB.
- RESPONSE_COUNT: il numero di risposte che vuoi generare. Numero intero accettato valori: 1-3.
Metodo HTTP e URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagetext:predict
Corpo JSON della richiesta:
{ "instances": [ { "prompt": "VQA_PROMPT", "image": { "bytesBase64Encoded": "B64_IMAGE" } } ], "parameters": { "sampleCount": RESPONSE_COUNT } }
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Salva il corpo della richiesta in un file denominato request.json
.
ed esegui questo comando:
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
Salva il corpo della richiesta in un file denominato request.json
.
ed esegui questo comando:
$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
"sampleCount": 2
e "prompt": "What is this?"
. La risposta restituisce
due risposte della stringa di previsione.
{ "predictions": [ "cappuccino", "coffee" ] }
Python
Prima di provare questo esempio, segui le istruzioni per la configurazione di Python nel Guida rapida di Vertex AI con librerie client. Per ulteriori informazioni, consulta API Python Vertex AI documentazione di riferimento.
Per eseguire l'autenticazione su Vertex AI, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
In questo esempio viene utilizzato il metodo load_from_file
per fare riferimento a un file locale come
la base Image
per ottenere informazioni. Dopo aver specificato
utilizza il metodo ask_question
nella
ImageTextModel
e stampa le risposte.
Utilizzare i parametri per VQA
Quando ricevi risposte VQA, esistono diversi parametri che puoi impostare a seconda del caso d'uso.
Numero risultati
Utilizza il parametro del numero di risultati per limitare il numero di risposte restituite
per ogni richiesta che invii. Per ulteriori informazioni, consulta la imagetext
(VQA)
di riferimento dell'API del modello.
Numero originale
Un numero che aggiungi a una richiesta per rendere deterministiche le risposte generate. Aggiunta in corso...
un numero seed con la tua richiesta è un modo per assicurarti di ottenere la stessa previsione
(risposte) ogni volta. Tuttavia, le risposte non sono
restituiti necessariamente nello stesso ordine. Per ulteriori informazioni, consulta
Riferimento API del modello imagetext
(VQA).
Passaggi successivi
- Guarda i video che descrivono i modelli di base di Vertex AI, tra cui Imagen, il modello di base da testo a immagine che consente di generare modifica immagini:
- Leggi il blog post che descrive Imagen su Vertex AI e IA generativa su Vertex AI: