Menganalisis data multimodal di BigQuery
Dokumen ini menjelaskan fitur BigQuery yang dapat Anda gunakan untuk menganalisis data multimodal. Beberapa fitur tersedia di Trusted Cloud konsol dan alat command line bq, dan fitur lainnya tersedia dengan menggunakan BigQuery DataFrames di Python. Anda dapat menggunakan banyak fitur ini bersama-sama untuk mempermudah alur kerja analisis dan transformasi data multimodal.
Fitur data multimodal BigQuery memungkinkan Anda melakukan tugas berikut:
- Mengintegrasikan data tidak terstruktur ke dalam tabel standar menggunakan nilai
ObjectRef
. - Bekerja dengan data tidak terstruktur dalam alur kerja analisis dan transformasi menggunakan nilai
ObjectRefRuntime
. - Buat teks, embedding, dan nilai skalar dari data multimodal menggunakan BigQuery ML fungsi AI generatif dengan model Gemini.
- Buat DataFrame multimodal di DataFrame BigQuery.
- Transformasikan gambar dan bagi file PDF menjadi beberapa bagian menggunakan metode
Series.BlobAccessor
BigQuery DataFrames. - Buat teks dan embedding dari data multimodal menggunakan DataFrame BigQuery metode AI generatif.
Untuk tutorial langkah demi langkah yang menggunakan konsol Trusted Cloud , lihat Menganalisis data multimodal dengan SQL. Untuk tutorial langkah demi langkah yang menggunakan DataFrame BigQuery di Python, lihat Menganalisis data multimodal di Python dengan DataFrame BigQuery.
Manfaat
Fitur data multimodal BigQuery menawarkan manfaat berikut:
- Komposisi: Anda dapat menyimpan dan mengelola data terstruktur dan tidak terstruktur
dalam baris tabel standar yang sama dengan menggunakan nilai
ObjectRef
. Misalnya, Anda dapat menyimpan gambar untuk suatu produk dalam 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 tindakan transformasi pada objek. - Menggunakan data objek dalam perintah AI generatif: gunakan nilai
ObjectRefRuntime
sebagai input ke fungsi AI generatif. Misalnya, Anda dapat membuat embedding pada data gambar dan teks dari tabel yang sama. Untuk pembuatan teks dan nilai skalar, Anda juga dapat merujuk ke beberapa objek dalam perintah yang Anda kirim ke model. Misalnya, Anda dapat membuat perintah yang meminta model untuk membandingkan dua gambar hewan, lalu menampilkan teks yang menunjukkan apakah keduanya menampilkan jenis hewan yang sama. - Mempertahankan urutan potongan: Anda dapat membagi objek menjadi beberapa bagian, lalu menyimpan bagian-bagian tersebut
sebagai array nilai
ObjectRef
dalam 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 pengotorisasi terkait dalam tabel standar BigQuery dengan membuat kolom STRUCT
atau ARRAY<STRUCT>
yang menggunakan format ini.
Nilai pemberi otorisasi 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
dalam 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 diisi sebagian 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, pemberi otorisasi terkait,
dan URL akses. Anda dapat menggunakan URL akses untuk membaca atau mengubah objek di
Cloud Storage.
Gunakan nilai ObjectRefRuntime
untuk bekerja dengan data objek dalam analisis dan alur kerja transformasi. URL akses dalam nilai ObjectRefRuntime
akan habis masa berlakunya
paling lama setelah 6 jam, meskipun Anda dapat mengonfigurasi waktu habis masa berlaku yang lebih singkat. Jika
Anda mempertahankan nilai ObjectRefRuntime
di mana pun sebagai bagian dari alur kerja, Anda
harus memuat ulang data ini secara rutin. Untuk mempertahankan metadata objek, simpan nilai ObjectRef
, lalu gunakan untuk membuat nilai ObjectRefRuntime
saat Anda membutuhkannya. Nilai ObjectRef
tidak perlu diperbarui kecuali jika objek pokok di Cloud Storage diubah.
Buat nilai ObjectRefRuntime
menggunakan
fungsi OBJ.GET_ACCESS_URL
.
Fungsi AI generatif
Buat teks, embedding, dan nilai skalar berdasarkan input ObjectRefRuntime
dengan 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.
Bekerja dengan 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
Ubah data objek menggunakan metode
Series.BlobAccessor
berikut:
- Metode
pdf_chunk
: mengelompokkan 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
: menghasilkan embedding berdasarkan data multimodal.
Tabel objek
Jika Anda berada dalam daftar yang diizinkan untuk pratinjau data multimodal, setiap
tabel objek baru yang
Anda buat akan 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 memperbarui nilai ObjectRef
dalam tabel standar.
Batasan
Batasan berikut berlaku untuk fitur data multimodal BigQuery:
- Anda harus menjalankan kueri apa pun 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
dalammyproject
, maka Anda tidak boleh memiliki lebih dari 20 koneksi diasia-east1
dalammyproject
.
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 menimbulkan biaya komputasi BigQuery. - Objek baru yang Anda buat dari transformasi objek akan dikenai biaya Cloud Storage.
- Data baru yang Anda buat dan pertahankan di BigQuery akan dikenai biaya penyimpanan BigQuery.
- Penggunaan fungsi AI generatif menimbulkan biaya Vertex AI.
- Penggunaan UDF Python BigQuery, serta metode transformasi objek dan DataFrame multimodal 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 lebih lanjut AI Generatif di BigQuery ML.
- Pelajari lebih lanjut DataFrame BigQuery.