Dengan Visual Question Answering (VQA), Anda dapat memberikan gambar ke model dan mengajukan pertanyaan tentang konten gambar. Sebagai jawaban atas pertanyaan Anda, Anda akan mendapatkan satu atau lebih jawaban dengan bahasa yang wajar.
![Contoh gambar, pertanyaan, dan jawaban VQA di konsol](https://cloud.google.com/static/vertex-ai/generative-ai/docs/image/images/vqa-marbles.png?authuser=8&hl=id)
Pengajuan pertanyaan: Objek apa yang ada dalam gambar?
Jawaban 1: kelereng
Jawaban 2: kelereng kaca
Bahasa yang didukung
VQA tersedia dalam bahasa berikut:
- Inggris (en)
Performa dan batasan
Batas berikut berlaku saat Anda menggunakan model ini:
Batas | Nilai |
---|---|
Jumlah maksimum permintaan API (format pendek) per menit per project | 500 |
Jumlah maksimum token yang ditampilkan sebagai respons (format pendek) | 64 token |
Jumlah maksimum token yang diterima dalam permintaan (khusus video pendek VQA) | 80 token |
Jumlah maksimum token yang ditampilkan sebagai respons (format panjang) | 512 token |
Estimasi latensi layanan berikut berlaku saat Anda menggunakan model ini. Nilai ini dimaksudkan sebagai ilustrasi dan bukan merupakan jaminan layanan:
Latensi | Nilai |
---|---|
Permintaan API (format pendek) | 1,5 detik |
Permintaan API (berdurasi panjang) | 4,5 detik |
Lokasi
Lokasi adalah region yang dapat Anda tentukan dalam permintaan untuk mengontrol tempat data disimpan dalam penyimpanan. Untuk mengetahui daftar region yang tersedia, lihat AI Generatif di lokasi Vertex AI.
Menggunakan VQA pada gambar (respons bentuk pendek)
Gunakan contoh berikut untuk mengajukan pertanyaan dan mendapatkan jawaban tentang gambar.
Konsol
Di konsol Google Cloud, buka tab Vertex AI Studio > Vision di dasbor Vertex AI.
Di menu bawah, klik Tanya Jawab Visual.
Klik Upload gambar untuk memilih gambar lokal Anda untuk diberi teks.
Di panel Parameters, pilih Jumlah teks dan Language.
Pada kolom perintah, masukkan pertanyaan tentang gambar yang Anda upload.
Klik
Submit.
REST
Untuk mengetahui informasi selengkapnya tentang permintaan model imagetext
, lihat
referensi API model imagetext
.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: ID project Google Cloud Anda.
- LOCATION: Region project Anda. Misalnya,
us-central1
,europe-west2
, atauasia-northeast3
. Untuk mengetahui daftar region yang tersedia, lihat Generative AI di lokasi Vertex AI. - VQA_PROMPT: Pertanyaan tentang gambar yang jawabannya ingin Anda peroleh.
- Apa warna sepatu ini?
- Lengan jenis apa yang digunakan di kemeja ini?
- B64_IMAGE: Gambar yang akan diberi teks. Gambar harus ditentukan sebagai string byte berenkode Base64. Batas ukuran: 10 MB.
- RESPONSE_COUNT: Jumlah jawaban yang ingin Anda hasilkan. Nilai bilangan bulat yang diterima: 1-3.
Metode HTTP dan URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagetext:predict
Isi JSON permintaan:
{ "instances": [ { "prompt": "VQA_PROMPT", "image": { "bytesBase64Encoded": "B64_IMAGE" } } ], "parameters": { "sampleCount": RESPONSE_COUNT } }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
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
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
$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
dan "prompt": "What is this?"
. Tanggapannya akan menampilkan dua jawaban string prediksi.
{ "predictions": [ "cappuccino", "coffee" ] }
Python
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di panduan memulai Vertex AI menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Python Vertex AI.
Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Dalam contoh ini, Anda menggunakan metode load_from_file
untuk mereferensikan file lokal sebagai
Image
dasar untuk mendapatkan informasi. Setelah menentukan image
dasar, Anda dapat menggunakan metode ask_question
pada
ImageTextModel
dan mencetak jawabannya.
Menggunakan parameter untuk VQA
Saat mendapatkan respons VQA, ada beberapa parameter yang dapat Anda tetapkan, bergantung pada kasus penggunaan Anda.
Jumlah hasil
Gunakan parameter jumlah hasil untuk membatasi jumlah respons yang ditampilkan untuk setiap permintaan yang Anda kirim. Untuk mengetahui informasi selengkapnya, lihat referensi API model imagetext
(VQA).
Nomor seed
Angka yang Anda tambahkan ke permintaan untuk membuat respons yang dihasilkan menjadi deterministik. Menambahkan nomor seed dengan permintaan Anda adalah cara untuk memastikan bahwa Anda mendapatkan prediksi (respons) yang sama setiap kali. Namun, jawabannya tidak harus
dikembalikan dalam urutan yang sama. Untuk mengetahui informasi selengkapnya, lihat
referensi API model imagetext
(VQA).
Langkah selanjutnya
- Lihat video yang menjelaskan model dasar Vertex AI termasuk Imagen, model dasar teks ke gambar yang memungkinkan Anda membuat dan mengedit gambar:
- Baca postingan blog yang menjelaskan Imagen di Vertex AI dan Generative AI di Vertex AI: