Menganalisis data multimodal di BigQuery
Dokumen ini menjelaskan fitur BigQuery yang dapat Anda gunakan untuk menganalisis data multimodal. Beberapa fitur tersedia di Google 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 memungkinkan alur kerja analisis dan transformasi yang lebih mudah untuk data multimodal.
Fitur data multimodal BigQuery memungkinkan Anda melakukan tugas berikut:
- Mengintegrasikan data tidak terstruktur ke dalam tabel standar menggunakan
ObjectRefnilai. - Menggunakan data tidak terstruktur dalam alur kerja analisis dan transformasi menggunakan
ObjectRefRuntimenilai. - Membuat teks, embedding, dan nilai skalar dari data multimodal menggunakan BigQuery ML fungsi AI generatif dengan model Gemini.
- Membuat DataFrame multimodal di BigQuery DataFrames.
- Mengubah gambar dan membagi file PDF dengan
menggunakan metode
Series.BlobAccessorBigQuery DataFrames. - Membuat teks dan embedding dari data multimodal menggunakan BigQuery DataFrames metode AI generatif.
Untuk tutorial langkah demi langkah yang menggunakan Google Cloud konsol, 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
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. - Menggunakan data objek dalam perintah AI generatif: gunakan nilai
ObjectRefRuntimesebagai 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 gambar tersebut menampilkan jenis hewan yang sama. - Mempertahankan urutan bagian: Anda dapat membagi objek, lalu menyimpan bagian 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 dengan yang muncul di video asli.
Nilai ObjectRef
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 pengotorisasi mengidentifikasi
koneksi resource Cloud
yang digunakan BigQuery untuk mengakses objek Cloud Storage.
Gunakan nilai ObjectRef jika 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
Menentukan kolom ObjectRef dalam skema tabel.
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 input ObjectRefRuntime menggunakan fungsi AI generatif berikut dengan model Gemini:
AI.GENERATEAI.GENERATE_TEXTAI.GENERATE_TABLEAI.GENERATE_BOOLAI.GENERATE_DOUBLEAI.GENERATE_INTAI.GENERATE_EMBEDDINGAI.EMBEDAI.SIMILARITY
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
Session
metode berikut:
from_glob_pathmetode: membuat DataFrame multimodal dari bucket Cloud Storage.read_gbq_object_tablemetode: membuat DataFrame multimodal dari tabel objek.
Metode transformasi objek
Ubah data objek menggunakan metode
Series.BlobAccessor
berikut:
pdf_chunkmetode: membagi 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:
predictmetode classGeminiTextGeneratorclass: membuat teks berdasarkan data multimodal.predictmetode kelasMultimodalEmbeddingGenerator: membuat embedding berdasarkan data multimodal.
Tabel objek
Jika Anda berada dalam daftar yang diizinkan untuk pratinjau data multimodal, 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 di tabel standar.
Batasan
Batasan berikut berlaku untuk fitur data multimodal BigQuery:
- Anda harus menjalankan kueri apa pun yang mereferensikan nilai
ObjectRefdi 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
ObjectRefatauObjectRefRuntimenilai. Misalnya, jika Anda menjalankan kueri diasia-east1dimyproject, Anda tidak dapat memiliki lebih dari 20 koneksi diasia-east1dimyproject.
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 Vertex AI.
- 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.
- Menganalisis data multimodal di Python dengan BigQuery DataFrames.
- Pelajari AI Generatif lebih lanjut di BigQuery ML.
- Pelajari BigQuery DataFrames lebih lanjut.