Menganalisis data multimodal di BigQuery
Dokumen ini menjelaskan fitur BigQuery yang dapat Anda gunakan untuk menganalisis data multimodal. Beberapa fitur tersedia di konsolGoogle Cloud dan alat command line bq, dan fitur lainnya tersedia dengan menggunakan BigQuery DataFrames di Python. Anda dapat menggunakan banyak fitur ini secara bersamaan untuk mengaktifkan alur kerja analisis dan transformasi yang lebih mudah untuk data multimodal.
Fitur data multimodal BigQuery memungkinkan Anda melakukan tugas berikut:
- Integrasikan data tidak terstruktur ke dalam tabel standar menggunakan nilai
ObjectRef
. - Gunakan data tidak terstruktur dalam alur kerja analisis dan transformasi menggunakan nilai
ObjectRefRuntime
. - Buat teks, penyematan, dan nilai skalar dari data multimodal menggunakan fungsi AI generatif BigQuery ML dengan model Gemini.
- Membuat DataFrame multimodal di DataFrame BigQuery.
- Transformasikan gambar dan file PDF dalam bentuk bagian dengan menggunakan metode
Series.BlobAccessor
BigQuery DataFrames. - Buat teks dan penyematan dari data multimodal menggunakan metode AI generatif DataFrame BigQuery.
Untuk tutorial langkah demi langkah yang menggunakan konsol Google Cloud , lihat Menganalisis data multimodal dengan SQL. Untuk tutorial langkah demi langkah yang menggunakan BigQuery DataFrames di Python, lihat Menganalisis data multimodal di Python dengan BigQuery DataFrames.
Manfaat
Fitur data multimodal BigQuery menawarkan manfaat berikut:
- Komposisi: Anda dapat menyimpan dan mengelola data terstruktur dan tidak terstruktur
di baris tabel standar yang sama menggunakan nilai
ObjectRef
. Misalnya, Anda dapat menyimpan gambar untuk produk di baris yang sama dengan informasi produk lainnya. Anda dapat menggunakan fungsi SQL standar untuk membuat dan memperbarui kolom yang berisi nilaiObjectRef
, dan Anda dapat membuat nilaiObjectRef
sebagai output dari tindakan transformasi pada objek. - Menggunakan data objek dalam perintah AI generatif: gunakan nilai
ObjectRefRuntime
sebagai input ke fungsi AI generatif. Misalnya, Anda dapat membuat penyematan pada data gambar dan teks dari tabel yang sama. Untuk pembuatan nilai skalar dan teks, Anda juga dapat merujuk ke beberapa objek dalam perintah yang dikirim ke model. Misalnya, Anda dapat membuat perintah yang meminta model untuk membandingkan dua gambar hewan, lalu menampilkan teks yang menunjukkan apakah gambar tersebut menampilkan jenis hewan yang sama. - Mempertahankan pengurutan bagian: Anda dapat mengelompokkan objek, lalu menyimpan bagian tersebut
sebagai array nilai
ObjectRef
di kolom tabel standar, untuk mempertahankan urutannya. Misalnya, Anda dapat mengurai gambar dari video, lalu menyimpan gambar ini sebagai array nilaiObjectRef
, sehingga gambar tetap dalam urutan yang sama seperti yang muncul dalam video asli.
ObjectRef
nilai
Nilai ObjectRef
adalah nilai STRUCT
yang menggunakan
format ObjectRef
.
Anda dapat menyimpan metadata objek Cloud Storage dan
pemberi otorisasi terkait di
tabel standar BigQuery
dengan membuat kolom STRUCT
atau ARRAY<STRUCT>
yang menggunakan format ini.
Nilai authorizer mengidentifikasi
koneksi resource Cloud
yang digunakan BigQuery untuk mengakses objek Cloud Storage.
Gunakan nilai ObjectRef
saat Anda perlu mengintegrasikan data tidak terstruktur ke dalam
tabel standar. Misalnya, dalam tabel produk, Anda dapat menyimpan gambar produk
di baris yang sama dengan informasi produk lainnya dengan menambahkan kolom
yang berisi nilai ObjectRef
.
Buat dan perbarui nilai ObjectRef
menggunakan fungsi GoogleSQL berikut:
OBJ.MAKE_REF
: membuat nilaiObjectRef
yang berisi metadata untuk objek Cloud Storage.OBJ.FETCH_METADATA
: mengambil metadata Cloud Storage untuk nilaiObjectRef
yang sebagian diisi dengan nilaiuri
danauthorizer
.
Untuk mengetahui informasi selengkapnya, lihat
Menentukan kolom ObjectRef
dalam skema tabel.
ObjectRefRuntime
nilai
Nilai ObjectRefRuntime
adalah nilai JSON
yang menggunakan
skema ObjectRefRuntime
.
Nilai ObjectRefRuntime
berisi metadata objek Cloud Storage
dari nilai ObjectRef
yang digunakan untuk membuatnya, otorisasi terkait,
dan URL akses. Anda dapat menggunakan URL akses untuk membaca atau mengubah objek di
Cloud Storage.
Gunakan nilai ObjectRefRuntime
untuk menggunakan data objek dalam alur kerja analisis dan transformasi. Masa berlaku URL akses dalam nilai ObjectRefRuntime
berakhir
paling lama 6 jam, meskipun Anda dapat mengonfigurasi waktu habis masa berlaku yang lebih singkat. Jika
Anda mempertahankan nilai ObjectRefRuntime
di mana saja sebagai bagian dari alur kerja, Anda
harus memuat ulang data ini secara berkala. Untuk mempertahankan metadata objek, simpan
nilai ObjectRef
, lalu gunakan untuk menghasilkan nilai ObjectRefRuntime
saat Anda membutuhkannya. Nilai ObjectRef
tidak perlu dimuat ulang kecuali jika objek pokok di Cloud Storage diubah.
Buat nilai ObjectRefRuntime
menggunakan
fungsi OBJ.GET_ACCESS_URL
.
Fungsi AI generatif
Buat teks, penyematan, dan nilai skalar berdasarkan input ObjectRefRuntime
menggunakan fungsi AI generatif berikut dengan model Gemini:
ML.GENERATE_TEXT
AI.GENERATE_TABLE
AI.GENERATE
AI.GENERATE_BOOL
AI.GENERATE_DOUBLE
AI.GENERATE_INT
ML.GENERATE_EMBEDDING
Untuk semua fungsi kecuali ML.GENERATE_EMBEDDING
, Anda dapat
memberikan nilai ObjectRefRuntime
sebagai nilai tunggal atau dalam array.
ML.GENERATE_EMBEDDING
hanya menerima nilai tunggal.
Menggunakan data multimodal di Python
Anda dapat menganalisis data multimodal di Python menggunakan class dan metode BigQuery DataFrames.
DataFrame Multimodal
Buat DataFrame multimodal yang mengintegrasikan data terstruktur dan tidak terstruktur
dengan menggunakan metode
Session
berikut:
- Metode
from_glob_path
: membuat DataFrame multimodal dari bucket Cloud Storage. - Metode
read_gbq_object_table
: membuat DataFrame multimodal dari tabel objek.
Metode transformasi objek
Transformasikan data objek menggunakan metode
Series.BlobAccessor
berikut:
- Metode
pdf_chunk
: membuat bagian objek PDF dari DataFrame multimodal. Metode berikut untuk mengubah objek gambar dari DataFrame multimodal:
Metode AI generatif
Gunakan metode berikut untuk melakukan tugas AI generatif pada data multimodal:
- Metode
predict
dari classGeminiTextGenerator
: membuat teks berdasarkan data multimodal. - Metode
predict
dari classMultimodalEmbeddingGenerator
: membuat embedding berdasarkan data multimodal.
Tabel objek
Jika Anda tercantum dalam daftar yang diizinkan untuk pratinjau data multimodal, setiap
tabel objek baru yang
Anda buat memiliki kolom ref
yang berisi nilai ObjectRef
untuk
objek tertentu. Koneksi yang digunakan untuk membuat tabel objek digunakan
untuk mengisi nilai authorizer
di kolom ref
. Anda dapat menggunakan kolom ref
untuk mengisi dan memuat ulang nilai ObjectRef
dalam tabel standar.
Batasan
Batasan berikut berlaku untuk fitur data multimodal BigQuery:
- Anda harus menjalankan kueri yang mereferensikan nilai
ObjectRef
dalam project yang sama dengan tabel yang berisi nilaiObjectRef
. - Anda tidak dapat memiliki lebih dari 20 koneksi di project dan region tempat Anda menjalankan kueri yang mereferensikan nilai
ObjectRef
atauObjectRefRuntime
. Misalnya, jika Anda menjalankan kueri diasia-east1
dimyproject
, Anda tidak dapat memiliki lebih dari 20 koneksi diasia-east1
dimyproject
.
Biaya
Biaya berikut berlaku saat menggunakan data multimodal:
- Penyimpanan metadata objek sebagai nilai
ObjectRef
dalam tabel standar berkontribusi pada biaya penyimpanan BigQuery untuk tabel tersebut. - Kueri yang dijalankan pada nilai
ObjectRef
akan dikenai biaya komputasi BigQuery. - Objek baru yang Anda buat dari transformasi objek akan dikenai biaya Cloud Storage.
- Data baru yang Anda buat dan simpan di BigQuery akan dikenai biaya penyimpanan BigQuery.
- Penggunaan fungsi AI generatif akan menimbulkan biaya Vertex AI.
- Penggunaan UDF Python BigQuery, serta DataFrame multimodal dan metode transformasi objek di DataFrame BigQuery, akan menimbulkan biaya UDF Python.
Untuk mengetahui informasi selengkapnya, lihat halaman harga berikut:
Langkah berikutnya
- Menentukan kolom
ObjectRef
dalam skema tabel. - Menganalisis data multimodal dengan SQL.
- Menganalisis data multimodal di Python dengan BigQuery DataFrames.
- Pelajari AI Generatif di BigQuery ML lebih lanjut.
- Pelajari DataFrames BigQuery lebih lanjut.