Menganalisis data multimodal di BigQuery
Dokumen ini menjelaskan fitur BigQuery yang dapat Anda gunakan untuk membuat dan menganalisis data multimodal. Fitur ini dapat digunakan di BigQuery dengan GoogleSQL dan dengan Python menggunakan BigQuery DataFrames.
Fitur data multimodal BigQuery memungkinkan Anda melakukan tugas berikut:
- Mengintegrasikan data tidak terstruktur yang disimpan di Cloud Storage sebagai kolom lain
bersama data terstruktur dalam tabel BigQuery standar dengan
merepresentasikan data tidak terstruktur sebagai
ObjectRefnilai. - Membuat anotasi, embedding, dan nilai skalar dari data multimodal dengan menggunakan fungsi AI generatif BigQuery ML dengan model Gemini.
- Membuat anotasi, embedding, dan nilai skalar dari data multimodal dengan membuat DataFrame multimodal di BigQuery DataFrames dan menggunakan library Python.
Untuk tutorial langkah demi langkah yang menggunakan Google Cloud konsol, lihat Menganalisis data multimodal dengan SQL dan Python.
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 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 nilaiObjectRefsebagai output tindakan transformasi pada objek. - Menambahkan beberapa bagian data tidak terstruktur dalam perintah AI generatif:
menambahkan beberapa
ObjectRefnilai sebagai input ke fungsi AI generatif. Misalnya, Anda dapat membuat embedding 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 membuat deskripsi produk berdasarkan gambar dan atribut produk. - Mempertahankan pengurutan potongan: Anda dapat membagi objek menjadi potongan, lalu menyimpan potongan tersebut
sebagai array nilai
ObjectRefdi 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.
Nilai ObjectRef
Nilai ObjectRef adalah nilai STRUCT yang menggunakan skema
ObjectRef.
Anda dapat menyimpan metadata objek Cloud Storage dan pengotorisasi terkait dalam tabel BigQuery standar dengan membuat kolom STRUCT atau ARRAY<STRUCT> yang menggunakan format ini.
Nilai pengotorisasi mengidentifikasi
koneksi resource Cloud
yang digunakan BigQuery untuk mengakses objek Cloud Storage.
Jika Anda menetapkan pengotorisasi ke NULL, BigQuery akan menggunakan kredensial pengguna akhir Anda.
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 nilaiObjectRefyang berisi metadata untuk objek Cloud Storage.OBJ.FETCH_METADATA: mengambil metadata Cloud Storage untuk nilaiObjectRefyang sebagian diisi dengan nilaiuridanauthorizer.
Untuk mengetahui informasi selengkapnya, lihat Bekerja dengan nilai ObjectRef.
Nilai ObjectRefRuntime
Nilai ObjectRefRuntime adalah nilai JSON yang menggunakan skema
ObjectRefRuntime.
Nilai ObjectRefRuntime berisi metadata objek Cloud Storage
dari nilai ObjectRef yang digunakan untuk membuatnya, pengotorisasi 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. URL akses dalam nilai ObjectRefRuntime akan berakhir masa berlakunya setelah maksimal 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 memperbarui data ini secara rutin. Untuk mempertahankan metadata objek, simpan
ObjectRef nilai sebagai gantinya, lalu gunakan untuk membuat ObjectRefRuntime
nilai saat Anda membutbutuhkannya. Nilai ObjectRef tidak perlu diperbarui kecuali jika objek yang mendasarinya di Cloud Storage diubah.
Buat ObjectRefRuntime nilai menggunakan
OBJ.GET_ACCESS_URL fungsi.
Fungsi AI generatif
Buat teks, embedding, dan nilai skalar berdasarkan ObjectRef atau
ObjectRefRuntime input menggunakan fungsi AI generatif berikut dengan
model Gemini:
AI.GENERATEAI.GENERATE_TEXTAI.GENERATE_TABLEAI.GENERATE_BOOLAI.GENERATE_DOUBLEAI.GENERATE_INTAI.GENERATE_EMBEDDINGAI.EMBEDAI.SIMILARITYAI.CLASSIFYAI.IFAI.SCORE
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
menggunakan
read_gbq metode:
buat DataFrame multimodal dari tabel objek.
Untuk mencobanya, lihat tutorial DataFrame Multimodal di GitHub.
Metode AI generatif
Gunakan metode berikut untuk melakukan tugas AI generatif pada data multimodal:
predictmetode dariGeminiTextGeneratorclass: membuat teks berdasarkan data multimodal.predictmetode dariMultimodalEmbeddingGeneratorclass: membuat embedding berdasarkan data multimodal.
Tabel objek
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 memperbarui nilai ObjectRef dalam tabel standar.
Set data Insight Penyimpanan
Set data Insight Penyimpanan adalah set data BigQuery tertaut yang dapat Anda kueri untuk menganalisis dan memvisualisasikan data Cloud Storage. Kolom
ref berisi ObjectRef nilai yang dapat Anda gunakan untuk
menganalisis data dan metadata objek.
Batasan
Batasan berikut berlaku untuk fitur data multimodal BigQuery:
- Jika Anda tidak secara eksplisit menentukan nama project yang berisi koneksi di kolom
authorizerdari nilaiObjectRef, koneksi harus ada di project yang berisi tabel objek yang menyimpannya, atau di project tempat kueri yang mereferensikan nilaiObjectRefdijalankan. - Anda tidak dapat memiliki lebih dari 20 koneksi resource Cloud di project dan region tempat kueri Anda mengakses data objek sebagai nilai
ObjectRef. - Anda dapat mereferensikan nilai
ObjectRefdari maksimal lima project selain project tempat Anda menjalankan kueri.
Biaya
Biaya berikut berlaku saat menggunakan data multimodal:
- Penyimpanan metadata objek sebagai nilai
ObjectRefdalam tabel standar berkontribusi pada biaya penyimpanan BigQuery untuk tabel. - Kueri yang dijalankan pada nilai
ObjectRefakan dikenai 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 akan dikenai biaya Platform Agen Gemini Enterprise.
- Penggunaan UDF Python BigQuery, serta metode transformasi objek dan DataFrame multimodal di BigQuery DataFrames, akan dikenai biaya UDF Python.
Untuk mengetahui informasi selengkapnya, lihat halaman harga berikut:
Langkah berikutnya
- Menentukan kolom
ObjectRefdalam skema tabel. - Menganalisis data multimodal dengan SQL.
- Pelajari AI Generatif lebih lanjut di BigQuery ML.
- Pelajari BigQuery DataFrames lebih lanjut.