ML.ANNOTATE_IMAGE
untuk mengekstrak insight dari data gambar tidak terstruktur. Saat bekerja dengan repositori gambar yang besar, Anda mungkin perlu mengategorikan file secara otomatis, mendeteksi objek tertentu, atau mengekstrak properti gambar untuk membuat set data dapat ditelusuri. Dengan membuat model jarak jauh BigQuery ML yang terhubung ke Cloud Vision API, Anda dapat melakukan tugas analisis gambar ini langsung di tabel objek BigQuery menggunakan SQL standar, sehingga tidak perlu memindahkan file atau membuat pipeline data yang kompleks.
Tujuan
- Buat set data dan koneksi resource.
- Buat tabel objek untuk file gambar yang disimpan di Cloud Storage.
- Buat model jarak jauh yang terhubung ke Cloud Vision API.
- Beri anotasi pada gambar menggunakan fungsi
ML.ANNOTATE_IMAGE.
Biaya
Dalam dokumen ini, Anda akan menggunakan komponen Google Cloudyang dapat ditagih berikut:
Untuk membuat perkiraan biaya berdasarkan proyeksi penggunaan Anda,
gunakan kalkulator harga.
Sebelum memulai
- Login ke akun Google Cloud Anda. Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the BigQuery, BigQuery Connection API, and Cloud Vision API APIs, if any are not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the BigQuery, BigQuery Connection API, and Cloud Vision API APIs, if any are not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.
Peran yang diperlukan
Untuk mendapatkan izin yang Anda perlukan untuk menyelesaikan tutorial ini, minta administrator Anda untuk memberi Anda peran IAM berikut di project:
-
Membuat dan menggunakan set data, tabel, dan model BigQuery:
BigQuery Data Editor (
roles/bigquery.dataEditor) -
Membuat, mendelegasikan, dan menggunakan koneksi BigQuery:
BigQuery Connection Admin (
roles/bigquery.connectionAdmin) -
Memberikan izin ke akun layanan koneksi:
Project IAM Admin (
roles/resourcemanager.projectIamAdmin) -
Membuat tugas BigQuery:
BigQuery Job User (
roles/bigquery.jobUser)
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Membuat set data
Untuk membuat set data BigQuery, pilih salah satu opsi berikut:
Konsol
Di konsol Google Cloud , buka halaman BigQuery.
Di panel kiri, klik Explorer:

Jika Anda tidak melihat panel kiri, klik Luaskan panel kiri untuk membuka panel.
Di Explorer, luaskan project Anda, lalu klik Datasets.
Di halaman Set Data, klik Buat set data.
Di panel Create dataset, lakukan hal berikut:
Untuk Dataset ID, masukkan
bqml_tutorial.Untuk Data location, pilih US.
Jangan ubah setelan default yang tersisa.
Klik Create dataset.
bq
Untuk membuat set data baru, gunakan
perintah bq mk --dataset.
Buat set data bernama
bqml_tutorialdengan lokasi data yang ditetapkan keUS:bq mk --dataset \ --location=US \ --description "BigQuery ML tutorial dataset." \ bqml_tutorial
Pastikan set data telah dibuat:
bq ls
API
Panggil metode datasets.insert
dengan resource set data yang ditentukan:
{ "datasetReference": { "datasetId": "bqml_tutorial" } }
Membuat tabel objek
Buat tabel objek bernama my_object_table
yang memiliki konten gambar. Tabel objek memungkinkan analisis gambar tanpa memindahkannya dari Cloud Storage.
Bucket Cloud Storage yang digunakan oleh tabel objek harus berada di
project yang sama tempat Anda berencana membuat model dan memanggil
fungsi ML.ANNOTATE_IMAGE. Jika Anda ingin memanggil fungsi
ML.ANNOTATE_IMAGE dalam project yang berbeda dengan project yang
berisi bucket Cloud Storage yang digunakan oleh tabel objek, Anda harus
memberi peran Storage Admin di tingkat bucket.
Membuat model
Buat model jarak jauh bernama my_model dengan
REMOTE_SERVICE_TYPE dari
CLOUD_AI_VISION_V1:
CREATE OR REPLACE MODEL `PROJECT_ID.bqml_tutorial.my_model` REMOTE WITH CONNECTION DEFAULT OPTIONS (REMOTE_SERVICE_TYPE = 'CLOUD_AI_VISION_V1');
Ganti PROJECT_ID dengan project ID Anda.
Menganotasi gambar
Gunakan fungsi ML.ANNOTATE_IMAGE dengan
fitur
pilihan Anda untuk menganotasi gambar dalam tabel objek.
Untuk memberi label pada item yang ditampilkan dalam gambar, gunakan fungsi
ML.ANNOTATE_IMAGEdengan fiturlabel_detection:SELECT * FROM ML.ANNOTATE_IMAGE( MODEL `PROJECT_ID.bqml_tutorial.my_model`, TABLE `PROJECT_ID.bqml_tutorial.my_object_table`, STRUCT(['label_detection'] AS vision_features) );
Ganti
PROJECT_IDdengan project ID Anda.Untuk mendeteksi wajah yang ditampilkan dalam gambar dan menampilkan atribut gambar, seperti warna dominan, gunakan fungsi
ML.ANNOTATE_IMAGEdengan fiturface_detectiondanimage_properties:SELECT * FROM ML.ANNOTATE_IMAGE( MODEL `PROJECT_ID.bqml_tutorial.my_model`, TABLE `PROJECT_ID.bqml_tutorial.my_object_table`, STRUCT(['face_detection', 'image_properties'] AS vision_features) );
Ganti
PROJECT_IDdengan project ID Anda.
Pembersihan
Agar tidak perlu membayar biaya pada akun Google Cloud Anda untuk resource yang digunakan dalam tutorial ini, hapus project yang berisi resource tersebut, atau simpan project dan hapus setiap resource.
Menghapus project
Konsol
- Di konsol Google Cloud , buka halaman Manage resources.
- Pada daftar project, pilih project yang ingin Anda hapus, lalu klik Delete.
- Pada dialog, ketik project ID, lalu klik Shut down untuk menghapus project.
gcloud
Menghapus Google Cloud project:
gcloud projects delete PROJECT_ID
Menghapus resource satu per satu
Jika Anda berencana untuk mempertahankan project yang Anda gunakan untuk tutorial ini, Anda dapat menghindari biaya lebih lanjut dengan menghapus setiap resource yang Anda buat:
Menghapus set data: menghapus set data juga akan menghapus model jarak jauh dan tabel objek yang Anda buat di dalamnya.
- Di konsol Google Cloud , buka BigQuery Studio.
- Di panel Explorer, luaskan project Anda dan pilih set data yang Anda buat.
- Klik Lihat tindakan, lalu klik Hapus.
- Pada dialog, ketik
delete, lalu klik Hapus.
Menghapus koneksi:
- Di panel Explorer, luaskan nama project Anda, lalu klik Koneksi.
- Klik ikon Lihat tindakan di samping koneksi yang Anda buat, lalu pilih Hapus.
- Dalam dialog, klik Hapus untuk mengonfirmasi.
Langkah berikutnya
- Untuk mengetahui informasi selengkapnya tentang inferensi model di BigQuery ML, lihat Ringkasan inferensi model.
- Untuk mengetahui informasi selengkapnya tentang penggunaan Cloud AI API untuk melakukan tugas AI, lihat Ringkasan aplikasi AI.
- Untuk mengetahui informasi tentang pernyataan dan fungsi SQL yang didukung untuk model AI generatif, lihat Perjalanan pengguna menyeluruh untuk model AI generatif.
- Coba notebook Analisis data tidak terstruktur dengan model terlatih BigQuery ML dan Gemini Enterprise Agent Platform.