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:
- Integrasikan data tidak terstruktur yang disimpan di Cloud Storage sebagai kolom lain bersama data terstruktur dalam tabel BigQuery standar dengan merepresentasikan data tidak terstruktur sebagai nilai
ObjectRef. - Buat anotasi, embedding, dan nilai skalar dari data multimodal dengan menggunakan fungsi AI generatif BigQuery ML dengan model Gemini.
- Buat 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 konsol Google Cloud , lihat Menganalisis data multimodal dengan SQL dan Python.
Manfaat
Fitur data multimodal BigQuery menawarkan manfaat berikut:
- Kemampuan penyusunan: 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 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 nilaiObjectRefsebagai output tindakan transformasi pada objek. - Menambahkan beberapa data tidak terstruktur dalam perintah AI generatif:
menambahkan beberapa nilai
ObjectRefsebagai input ke fungsi AI generatif. Misalnya, Anda dapat membuat sematan 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 beberapa bagian, lalu menyimpan bagian-bagian tersebut
sebagai array nilai
ObjectRefdalam 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
skema 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.
Jika Anda menyetel pemberi otorisasi 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 diisi sebagian dengan nilaiuridanauthorizer.
Untuk mengetahui informasi selengkapnya, lihat Bekerja dengan nilai ObjectRef.
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 alur kerja analisis dan 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 menyimpan nilai ObjectRefRuntime di mana pun sebagai bagian dari alur kerja, Anda
harus memperbarui 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 yang mendasarinya di Cloud Storage diubah.
Buat nilai ObjectRefRuntime menggunakan
fungsi OBJ.GET_ACCESS_URL.
Fungsi AI generatif
Buat teks, embedding, dan nilai skalar berdasarkan input ObjectRef atau
ObjectRefRuntime dengan 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
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 read_gbq:
buat DataFrame multimodal dari tabel objek.
Untuk mencobanya, lihat tutorial Multimodal Dataframes di GitHub.
Metode AI generatif
Gunakan metode berikut untuk melakukan tugas AI generatif pada data multimodal:
- Metode
predictdari classGeminiTextGenerator: membuat teks berdasarkan data multimodal. predictmethod dariMultimodalEmbeddingGeneratorclass: membuat embedding berdasarkan data multimodal.
Tabel objek
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 Storage Insights adalah set data BigQuery tertaut yang dapat Anda kueri untuk menganalisis dan memvisualisasikan data Cloud Storage Anda. Kolom ref
berisi nilai ObjectRef 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, maka 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 tersebut. - Kueri yang dijalankan pada nilai
ObjectRefakan 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
ObjectRefdalam skema tabel. - Menganalisis data multimodal dengan SQL.
- Pelajari lebih lanjut AI Generatif di BigQuery ML.
- Pelajari DataFrame BigQuery lebih lanjut.