Ringkasan AI generatif

Dokumen ini menjelaskan fungsi kecerdasan buatan (AI) generatif yang didukung BigQuery. Fungsi ini menerima input bahasa alami dan menggunakan model Vertex AI yang telah dilatih sebelumnya dan model BigQuery bawaan.

Ringkasan

BigQuery menawarkan berbagai fungsi AI untuk membantu tugas seperti berikut:

  • Buat konten kreatif.
  • Menganalisis, mendeteksi sentimen, dan menjawab pertanyaan tentang teks atau data tidak terstruktur, seperti gambar.
  • Meringkas ide atau kesan utama yang disampaikan oleh konten.
  • Mengekstrak data terstruktur dari teks.
  • Mengklasifikasikan teks atau data tidak terstruktur ke dalam kategori yang ditentukan pengguna.
  • Buat embedding untuk menelusuri teks, gambar, dan video yang serupa.
  • Beri peringkat input untuk mengurutkannya berdasarkan kualitas, kemiripan, atau kriteria lainnya.

Kategori fungsi AI berikut untuk membantu Anda menyelesaikan tugas ini:

  • Fungsi AI serbaguna: Fungsi ini memberi Anda kontrol dan transparansi penuh atas pilihan model, perintah, dan parameter yang akan digunakan.

    • Melakukan inferensi LLM, seperti untuk menjawab pertanyaan tentang data Anda

      • AI.GENERATE adalah fungsi inferensi yang paling fleksibel, yang memungkinkan Anda menganalisis data tidak terstruktur apa pun.
      • AI.GENERATE_TEXT adalah versi bernilai tabel dari AI.GENERATE yang juga mendukung model partner dan model terbuka.
    • Membuat output terstruktur, seperti mengekstrak nama, alamat, atau deskripsi objek dari teks, dokumen, atau gambar.

      • AI.GENERATE, saat Anda menentukan skema output.
      • AI.GENERATE_TABLE adalah versi bernilai tabel dari AI.GENERATE yang memanggil model jarak jauh dan memungkinkan Anda menentukan skema output kustom.
      • Jika skema output Anda memiliki satu kolom, Anda dapat menggunakan salah satu fungsi khusus: AI.GENERATE_BOOL, AI.GENERATE_DOUBLE, atau AI.GENERATE_INT.
    • Membuat embedding untuk penelusuran dan pengelompokan semantik

      • AI.EMBED: Buat embedding dari data teks atau gambar.
      • AI.GENERATE_EMBEDDING: Fungsi bernilai tabel yang menambahkan kolom data teks, gambar, audio, video, atau dokumen yang disematkan ke tabel Anda.
  • Fungsi AI terkelola: Fungsi ini memiliki sintaks yang disederhanakan dan dioptimalkan untuk biaya dan kualitas. BigQuery memilih model untuk Anda.

    • Memfilter data dengan kondisi bahasa alami

      • AI.IF
    • Input rating, seperti berdasarkan kualitas atau sentimen

      • AI.SCORE
    • Mengklasifikasikan input ke dalam kategori yang ditentukan pengguna

      • AI.CLASSIFY
  • Fungsi khusus tugas: Fungsi ini menggunakan Cloud AI API untuk membantu Anda melakukan tugas seperti pemrosesan bahasa alami, terjemahan mesin, pemrosesan dokumen, transkripsi audio, dan computer vision.

Fungsi AI serbaguna

Fungsi AI serbaguna memberi Anda kontrol dan transparansi penuh atas pilihan model, perintah, dan parameter yang akan digunakan. Outputnya mencakup informasi mendetail tentang panggilan ke model, termasuk status dan respons model lengkap, yang mungkin mencakup informasi tentang rating keamanan atau kutipan.

Melakukan inferensi LLM

Fungsi AI.GENERATE adalah fungsi inferensi fleksibel yang berfungsi dengan mengirimkan permintaan ke model Gemini Vertex AI dan menampilkan respons model tersebut. Anda dapat menggunakan fungsi ini untuk menganalisis data teks, gambar, audio, video, atau PDF. Misalnya, Anda dapat menganalisis gambar perlengkapan rumah untuk membuat teks untuk kolom design_type, sehingga SKU perlengkapan rumah memiliki deskripsi terkait, seperti mid-century modern atau farmhouse.

Anda dapat melakukan tugas AI generatif dengan menggunakan model jarak jauh di BigQuery ML untuk merujuk model yang di-deploy ke atau dihosting di Vertex AI dengan fungsi bernilai tabel AI.GENERATE_TEXT. Anda dapat menggunakan jenis model jarak jauh berikut:

Gunakan topik berikut untuk mencoba pembuatan teks di BigQuery ML:

Untuk beberapa model, Anda dapat memilih untuk mengonfigurasi tuning terawasi, yang memungkinkan Anda melatih model pada data Anda sendiri agar lebih sesuai untuk kasus penggunaan Anda. Semua inferensi terjadi di Vertex AI. Hasilnya disimpan di BigQuery.

Membuat data terstruktur

Pembuatan data terstruktur sangat mirip dengan pembuatan teks, kecuali Anda dapat memformat respons dari model dengan menentukan skema SQL. Misalnya, Anda dapat membuat tabel yang berisi nama, nomor telepon, alamat, permintaan, dan penawaran harga pelanggan dari transkrip panggilan telepon.

Anda dapat membuat data terstruktur dengan cara berikut:

Membuat embedding

Embedding adalah vektor numerik berdimensi tinggi yang merepresentasikan entity tertentu, seperti potongan teks atau file audio. Membuat embedding memungkinkan Anda mencatat semantik data dengan cara yang mempermudah penalaran dan perbandingan data.

Beberapa kasus penggunaan umum untuk pembuatan embedding adalah sebagai berikut:

  • Menggunakan retrieval-augmented generation (RAG) untuk meningkatkan respons model terhadap kueri pengguna dengan merujuk data tambahan dari sumber tepercaya. RAG memberikan akurasi faktual dan konsistensi respons yang lebih baik, serta memberikan akses ke data yang lebih baru daripada data pelatihan model.
  • Melakukan penelusuran multimodal. Misalnya, menggunakan input teks untuk menelusuri gambar.
  • Melakukan penelusuran semantik untuk menemukan item serupa untuk rekomendasi, penggantian, dan penghapusan duplikat data.
  • Membuat embedding untuk digunakan dengan model k-means untuk pengelompokan.

Untuk mengetahui informasi selengkapnya tentang cara membuat embedding dan menggunakannya untuk melakukan tugas ini, lihat Pengantar embedding dan penelusuran vektor.

Fungsi AI terkelola

Fungsi AI terkelola dibuat khusus untuk mengotomatiskan tugas rutin, seperti klasifikasi, pengurutan, atau pemfilteran. Fungsi ini menggunakan Gemini dan tidak memerlukan penyesuaian. BigQuery menggunakan rekayasa perintah dan memilih model serta parameter yang sesuai untuk digunakan dalam tugas tertentu guna mengoptimalkan kualitas dan konsistensi hasil Anda. Setiap fungsi menampilkan nilai skalar, seperti BOOL, FLOAT64, atau STRING, dan tidak menyertakan informasi status tambahan dari model. Fungsi AI terkelola berikut tersedia:

  • AI.IF: Memfilter data tekstual atau multi-modal, seperti dalam klausa WHERE atau JOIN, berdasarkan perintah. Misalnya, Anda dapat memfilter deskripsi produk berdasarkan deskripsi item yang cocok untuk hadiah.
  • AI.SCORE: Beri peringkat input berdasarkan perintah untuk memberi peringkat baris menurut kualitas, kemiripan, atau kriteria lainnya. Anda dapat menggunakan fungsi ini dalam klausa ORDER BY untuk mengekstrak K item teratas menurut skor. Misalnya, Anda dapat menemukan 10 ulasan pengguna yang paling positif atau negatif untuk suatu produk.
  • AI.CLASSIFY: Mengklasifikasikan teks ke dalam kategori yang ditentukan pengguna. Anda dapat menggunakan fungsi ini dalam klausa GROUP BY untuk mengelompokkan input menurut kategori yang Anda tentukan. Misalnya, Anda dapat mengklasifikasikan tiket dukungan berdasarkan apakah tiket tersebut terkait dengan penagihan, pengiriman, kualitas produk, atau hal lainnya.

Untuk melihat tutorial yang menunjukkan contoh cara menggunakan fungsi ini, lihat Melakukan analisis semantik dengan fungsi AI terkelola.

Untuk tutorial notebook yang menunjukkan cara menggunakan fungsi AI yang dikelola dan serbaguna, lihat Analisis semantik dengan fungsi AI.

Fungsi khusus tugas

Selain fungsi yang lebih umum yang dijelaskan di bagian sebelumnya, Anda dapat mengembangkan solusi khusus tugas di BigQuery ML dengan menggunakan Cloud AI API. Tugas yang didukung meliputi:

Untuk mengetahui informasi selengkapnya, lihat Ringkasan solusi khusus tugas.

Lokasi

Lokasi yang didukung untuk model pembuatan teks dan penyematan bervariasi berdasarkan jenis dan versi model yang Anda gunakan. Untuk mengetahui informasi selengkapnya, lihat Lokasi.

Harga

Anda akan dikenai biaya untuk resource komputasi yang Anda gunakan untuk menjalankan kueri terhadap model. Model jarak jauh melakukan panggilan ke model Vertex AI, sehingga kueri terhadap model jarak jauh juga dikenai biaya dari Vertex AI.

Untuk mengetahui informasi selengkapnya, lihat Harga BigQuery ML.

Melacak biaya

Fungsi AI generatif di BigQuery berfungsi dengan mengirim permintaan ke Vertex AI, yang dapat menimbulkan biaya. Untuk melacak biaya Vertex AI yang dikeluarkan oleh tugas yang Anda jalankan di BigQuery, ikuti langkah-langkah berikut:

  1. Melihat laporan penagihan di Penagihan Cloud.
  2. Gunakan filter untuk menyaring hasil.

    Untuk layanan, pilih Vertex AI.

  3. Untuk melihat biaya tugas tertentu, filter menurut label.

    Tetapkan kunci ke bigquery_job_id_prefix dan nilai ke ID tugas tugas Anda. Jika ID tugas Anda lebih panjang dari 63 karakter, gunakan hanya 63 karakter pertama. Jika ID tugas Anda berisi karakter huruf besar, ubah menjadi huruf kecil. Atau, Anda dapat mengaitkan tugas dengan label kustom untuk membantu Anda mencarinya nanti.

Diperlukan waktu hingga 24 jam agar beberapa biaya muncul di Penagihan Cloud.

Pemantauan

Untuk lebih memahami perilaku fungsi AI yang Anda panggil di BigQuery, Anda dapat mengaktifkan logging permintaan dan respons. Untuk mencatat seluruh permintaan dan respons yang dikirim ke dan diterima dari Vertex AI, ikuti langkah-langkah berikut:

  1. Aktifkan log respons permintaan di Vertex AI. Log disimpan di BigQuery. Anda harus mengaktifkan logging secara terpisah untuk setiap model dasar dan region yang berbeda. Untuk mencatat kueri yang berjalan di region us, tentukan region us-central1 dalam permintaan Anda. Untuk mencatat kueri yang berjalan di region eu, tentukan region europe-west4 dalam permintaan Anda.

  2. Jalankan kueri menggunakan fungsi AI yang melakukan panggilan ke Vertex AI menggunakan model yang Anda aktifkan logging-nya pada langkah sebelumnya.

  3. Untuk melihat permintaan dan respons Vertex AI lengkap, kueri tabel logging Anda untuk baris dengan kolom labels.bigquery_job_id_prefix dari kolom full_request yang cocok dengan 63 karakter pertama dari ID tugas Anda. Secara opsional, Anda dapat menggunakan label kueri kustom untuk membantu Anda mencari kueri di log.

    Misalnya, Anda dapat menggunakan kueri yang mirip dengan berikut:

    SELECT *
    FROM `my_project.my_dataset.request_response_logging`
    WHERE JSON_VALUE(full_request, '$.labels.bigquery_job_id_prefix') = 'bquxjob_123456...';
    

Langkah berikutnya