Membuat teks menggunakan fungsi AI.GENERATE_TEXT
Dokumen ini menunjukkan cara membuat model jarak jauh BigQuery ML yang merepresentasikan model Gemini Enterprise Agent Platform, lalu menggunakan model jarak jauh tersebut dengan fungsi AI.GENERATE_TEXT untuk membuat teks.
Jenis model jarak jauh berikut didukung:
- Model jarak jauh di salah satu model Gemini yang tersedia secara umum atau pratinjau.
- Model jarak jauh melalui model Claude Anthropic.
- Model jarak jauh melalui model Llama
- Model jarak jauh melalui model Mistral AI
- Model jarak jauh melalui model terbuka yang didukung.
Bergantung pada model Agent Platform yang Anda pilih, Anda dapat membuat teks berdasarkan input data tidak terstruktur dari tabel objek atau input teks dari tabel standar.
Peran yang diperlukan
Untuk membuat model jarak jauh dan membuat teks yang dihasilkan, Anda memerlukan peran Identity and Access Management (IAM) berikut:
- Membuat dan menggunakan set data, tabel, dan model BigQuery:
BigQuery Data Editor (
roles/bigquery.dataEditor) di project Anda. Membuat, mendelegasikan, dan menggunakan koneksi BigQuery: BigQuery Connections Admin (
roles/bigquery.connectionsAdmin) di project Anda.Jika Anda belum mengonfigurasi koneksi default, Anda dapat membuat dan menetapkannya sebagai bagian dari menjalankan pernyataan
CREATE MODEL. Untuk melakukannya, Anda harus memiliki BigQuery Admin (roles/bigquery.admin) di project Anda. Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi koneksi default.Berikan izin ke akun layanan koneksi: Project IAM Admin (
roles/resourcemanager.projectIamAdmin) pada project yang berisi endpoint Gemini Enterprise Agent Platform. Ini adalah project saat ini untuk model jarak jauh yang Anda buat dengan menentukan nama model sebagai endpoint. Ini adalah project yang diidentifikasi dalam URL untuk model jarak jauh yang Anda buat dengan menentukan URL sebagai endpoint.Jika Anda menggunakan model jarak jauh untuk menganalisis data tidak terstruktur dari tabel objek, dan bucket Cloud Storage yang Anda gunakan dalam tabel objek berada dalam project yang berbeda dengan endpoint Agent Platform, Anda juga harus memiliki Storage Admin (
roles/storage.admin) di bucket Cloud Storage yang digunakan oleh tabel objek.Membuat tugas BigQuery: BigQuery Job User (
roles/bigquery.jobUser) di project Anda.
Peran yang telah ditetapkan ini berisi izin yang diperlukan untuk melakukan tugas dalam dokumen ini. Untuk melihat izin yang benar-benar diperlukan, luaskan bagian Izin yang diperlukan:
Izin yang diperlukan
- Membuat set data:
bigquery.datasets.create - Membuat, mendelegasikan, dan menggunakan koneksi:
bigquery.connections.* - Menetapkan izin akun layanan:
resourcemanager.projects.getIamPolicydanresourcemanager.projects.setIamPolicy - Buat model dan jalankan inferensi:
bigquery.jobs.createbigquery.models.createbigquery.models.getDatabigquery.models.updateDatabigquery.models.updateMetadata
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Sebelum memulai
-
Di konsol Google Cloud , pada halaman pemilih project, pilih atau buat project Google Cloud .
Peran yang diperlukan untuk memilih atau membuat project
- Memilih project: Memilih project tidak memerlukan peran IAM tertentu—Anda dapat memilih project apa pun yang perannya telah diberikan kepada Anda.
-
Membuat project: Untuk membuat project, Anda memerlukan peran Project Creator
(
roles/resourcemanager.projectCreator), yang berisi izinresourcemanager.projects.create. Pelajari cara memberikan peran.
-
Pastikan penagihan diaktifkan untuk project Google Cloud Anda.
-
Aktifkan BigQuery API, BigQuery Connection API, dan Agent Platform API, jika belum diaktifkan.
Peran yang diperlukan untuk mengaktifkan API
Untuk mengaktifkan API, Anda memerlukan izin
serviceusage.services.enable. Jika Anda membuat project, kemungkinan Anda sudah memiliki izin ini melalui peran Pemilik (roles/owner). Jika tidak, Anda bisa mendapatkan izin ini melalui peran Service Usage Admin (roles/serviceusage.serviceUsageAdmin). Pelajari cara memberikan peran.
Membuat set data
Buat set data BigQuery untuk menampung resource Anda:
Konsol
Di konsol Google Cloud , buka halaman BigQuery.
Di panel kiri, klik Explorer:

Jika Anda tidak melihat panel kiri, klik Luaskan panel kiri untuk membuka panel.
Di panel Explorer, klik nama project Anda.
Klik View actions > Create dataset.
Di halaman Create dataset, lakukan hal berikut:
Untuk Dataset ID, ketik nama untuk set data.
Untuk Location type, pilih Region atau Multi-region.
- Jika Anda memilih Region, pilih lokasi dari daftar Region.
- Jika Anda memilih Multi-region, pilih US atau Europe dari daftar Multi-region.
Klik Create dataset.
bq
Membuat koneksi
Buat koneksi resource Cloud untuk digunakan oleh model jarak jauh, dan dapatkan akun layanan koneksi. Buat koneksi di lokasi yang sama dengan set data yang Anda buat di langkah sebelumnya.
Anda dapat melewati langkah ini jika telah mengonfigurasi koneksi default, atau memiliki peran BigQuery Admin.
Pilih salah satu opsi berikut:Konsol
Buka halaman BigQuery.
Di panel kiri, klik Explorer:

Jika Anda tidak melihat panel kiri, klik Luaskan panel kiri untuk membuka panel.
Di panel Explorer, luaskan nama project Anda, lalu klik Connections.
Di halaman Connections, klik Create connection.
Untuk Connection type, pilih Vertex AI remote models, remote functions, BigLake and Spanner (Cloud Resource).
Di kolom Connection ID, masukkan nama untuk koneksi Anda.
Untuk Location type, pilih lokasi untuk koneksi Anda. Koneksi harus ditempatkan bersama resource Anda yang lain, seperti set data.
Klik Create connection.
Klik Go to connection.
Di panel Connection info, salin ID akun layanan untuk digunakan di langkah berikutnya.
SQL
Gunakan pernyataan CREATE CONNECTION:
Di konsol Google Cloud , buka halaman BigQuery.
Di editor kueri, masukkan pernyataan berikut:
CREATE CONNECTION [IF NOT EXISTS] `CONNECTION_NAME` OPTIONS ( connection_type = "CLOUD_RESOURCE", friendly_name = "FRIENDLY_NAME", description = "DESCRIPTION" );
Ganti kode berikut:
-
CONNECTION_NAME: nama koneksi dalam formatPROJECT_ID.LOCATION.CONNECTION_ID,LOCATION.CONNECTION_ID, atauCONNECTION_ID. Jika project atau lokasi dihilangkan, keduanya akan disimpulkan dari project dan lokasi tempat pernyataan dijalankan. -
FRIENDLY_NAME(opsional): nama deskriptif untuk koneksi. -
DESCRIPTION(opsional): deskripsi koneksi.
-
Klik Run.
Untuk mengetahui informasi selengkapnya tentang cara menjalankan kueri, lihat Menjalankan kueri interaktif.
bq
Di lingkungan command line, buat koneksi:
bq mk --connection --location=REGION --project_id=PROJECT_ID \ --connection_type=CLOUD_RESOURCE CONNECTION_ID
Parameter
--project_idakan mengganti project default.Ganti kode berikut:
REGION: region koneksi AndaPROJECT_ID: Project ID Google Cloud AndaCONNECTION_ID: ID untuk koneksi Anda
Saat Anda membuat resource koneksi, BigQuery akan membuat akun layanan sistem unik dan mengaitkannya dengan koneksi.
Pemecahan masalah: Jika Anda mendapatkan error koneksi berikut, update Google Cloud SDK:
Flags parsing error: flag --connection_type=CLOUD_RESOURCE: value should be one of...
Ambil dan salin ID akun layanan untuk digunakan pada langkah berikutnya:
bq show --connection PROJECT_ID.REGION.CONNECTION_ID
Outputnya mirip dengan hal berikut ini:
name properties 1234.REGION.CONNECTION_ID {"serviceAccountId": "connection-1234-9u56h9@gcp-sa-bigquery-condel.iam.gserviceaccount.com"}
Python
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di Panduan memulai BigQuery menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi BigQuery Python API.
Untuk melakukan autentikasi ke BigQuery, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Node.js
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di Panduan memulai BigQuery menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi BigQuery Node.js API.
Untuk melakukan autentikasi ke BigQuery, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Java
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Java di Panduan memulai BigQuery menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi BigQuery Java API.
Untuk melakukan autentikasi ke BigQuery, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Terraform
Gunakan resource google_bigquery_connection.
Untuk melakukan autentikasi ke BigQuery, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Contoh berikut membuat koneksi resource Cloud bernama
my_cloud_resource_connection di region US:
Untuk menerapkan konfigurasi Terraform di project Google Cloud , selesaikan langkah-langkah di bagian berikut.
Menyiapkan Cloud Shell
- Luncurkan Cloud Shell.
-
Tetapkan project Google Cloud default tempat Anda ingin menerapkan konfigurasi Terraform.
Anda hanya perlu menjalankan perintah ini sekali per project, dan dapat dijalankan di direktori mana pun.
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
Variabel lingkungan akan diganti jika Anda menetapkan nilai eksplisit dalam file konfigurasi Terraform.
Menyiapkan direktori
Setiap file konfigurasi Terraform harus memiliki direktorinya sendiri (juga disebut modul root).
-
Di Cloud Shell, buat direktori dan file baru di dalam direktori tersebut. Nama file harus memiliki
ekstensi
.tf—misalnyamain.tf. Dalam tutorial ini, file ini disebut sebagaimain.tf.mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
Jika mengikuti tutorial, Anda dapat menyalin kode contoh di setiap bagian atau langkah.
Salin kode contoh ke dalam
main.tfyang baru dibuat.Atau, salin kode dari GitHub. Tindakan ini direkomendasikan jika cuplikan Terraform adalah bagian dari solusi menyeluruh.
- Tinjau dan ubah contoh parameter untuk diterapkan pada lingkungan Anda.
- Simpan perubahan Anda.
-
Lakukan inisialisasi Terraform. Anda hanya perlu melakukan ini sekali per direktori.
terraform init
Secara opsional, untuk menggunakan versi penyedia Google terbaru, sertakan opsi
-upgrade:terraform init -upgrade
Menerapkan perubahan
-
Tinjau konfigurasi dan pastikan resource yang akan dibuat atau
diupdate oleh Terraform sesuai yang Anda inginkan:
terraform plan
Koreksi konfigurasi jika diperlukan.
-
Terapkan konfigurasi Terraform dengan menjalankan perintah berikut dan memasukkan
yespada prompt:terraform apply
Tunggu hingga Terraform menampilkan pesan "Apply complete!".
- Buka project Google Cloud Anda untuk melihat hasilnya. Di konsol Google Cloud , buka resource Anda di UI untuk memastikan bahwa Terraform telah membuat atau mengupdatenya.
Memberikan peran ke akun layanan koneksi model jarak jauh
Anda harus memberikan peran Agent Platform User ke akun layanan koneksi yang digunakan model jarak jauh.
Jika Anda berencana menentukan endpoint model jarak jauh sebagai URL,
misalnya endpoint = 'https://us-central1-aiplatform.googleapis.com/v1/projects/myproject/locations/us-central1/publishers/google/models/gemini-2.0-flash',
berikan peran ini dalam project yang sama dengan yang Anda tentukan di URL.
Jika Anda berencana menentukan endpoint model jarak jauh menggunakan nama model,
misalnya endpoint = 'gemini-2.0-flash', berikan peran ini
dalam project yang sama tempat Anda berencana membuat model jarak jauh.
Memberikan peran dalam project yang berbeda akan menghasilkan error
bqcx-1234567890-wxyz@gcp-sa-bigquery-condel.iam.gserviceaccount.com does not have the permission to access resource.
Untuk memberikan peran Agent Platform User, ikuti langkah-langkah berikut:
Konsol
Buka halaman IAM & Admin.
Klik Add.
Dialog Add principals akan terbuka.
Di kolom New principals, masukkan ID akun layanan yang Anda salin sebelumnya.
Di kolom Select a role, telusuri Agent Platform User.
Klik Simpan.
gcloud
Gunakan
perintah gcloud projects add-iam-policy-binding.
gcloud projects add-iam-policy-binding 'PROJECT_NUMBER' --member='serviceAccount:MEMBER' --role='roles/aiplatform.user' --condition=None
Ganti kode berikut:
PROJECT_NUMBER: nomor project AndaMEMBER: ID akun layanan yang Anda salin sebelumnya
Memberikan peran ke akun layanan koneksi tabel objek
Jika Anda menggunakan model jarak jauh untuk membuat teks dari data tabel objek, berikan peran Agent Platform User ke akun layanan koneksi tabel objek dalam project yang sama tempat Anda berencana membuat model jarak jauh. Jika tidak, Anda dapat melewati langkah ini.
Untuk menemukan akun layanan untuk koneksi tabel objek, ikuti langkah-langkah berikut:
Buka halaman BigQuery.
Di panel kiri, klik Explorer:

Jika Anda tidak melihat panel kiri, klik Luaskan panel kiri untuk membuka panel.
Di panel Explorer, klik Datasets, lalu pilih set data yang berisi tabel objek.
Klik Overview > Tables, lalu pilih tabel objek.
Di panel editor, klik tab Details.
Catat nama koneksi di kolom Connection ID.
Di panel Explorer, klik Connections.
Pilih koneksi yang cocok dengan koneksi dari kolom Connection ID tabel objek.
Salin nilai di kolom ID akun layanan.
Untuk memberikan peran, ikuti langkah-langkah berikut:
Konsol
Buka halaman IAM & Admin.
Klik Add.
Dialog Add principals akan terbuka.
Di kolom New principals, masukkan ID akun layanan yang Anda salin sebelumnya.
Di kolom Select a role, telusuri Agent Platform User.
Klik Simpan.
gcloud
Gunakan
perintah gcloud projects add-iam-policy-binding.
gcloud projects add-iam-policy-binding 'PROJECT_NUMBER' --member='serviceAccount:MEMBER' --role='roles/aiplatform.user' --condition=None
Ganti kode berikut:
PROJECT_NUMBER: nomor project AndaMEMBER: ID akun layanan yang Anda salin sebelumnya
Mengaktifkan model partner
Langkah ini hanya diperlukan jika Anda ingin menggunakan model Anthropic Claude, Llama, atau Mistral AI.
Di konsol Google Cloud , buka halaman Model Garden Agent Platform.
Telusuri atau cari model partner yang ingin Anda gunakan.
Klik kartu model.
Di halaman model, klik Enable.
Isi informasi pengaktifan yang diminta, lalu klik Berikutnya.
Di bagian Terms and conditions, centang kotak.
Klik Agree untuk menyetujui persyaratan dan ketentuan serta mengaktifkan model.
Memilih metode deployment model terbuka
Jika Anda membuat model jarak jauh melalui
model terbuka yang didukung,
Anda dapat otomatis men-deploy model terbuka tersebut pada saat yang sama dengan
saat Anda membuat model jarak jauh dengan menentukan ID model Hugging Face atau Model Garden Agent Platform
dalam pernyataan CREATE MODEL.
Atau, Anda dapat men-deploy model terbuka secara manual terlebih dahulu, lalu menggunakan model terbuka tersebut dengan model jarak jauh dengan menentukan endpoint model dalam pernyataan CREATE MODEL. Untuk mengetahui informasi selengkapnya, lihat
Men-deploy model terbuka.
Membuat model jarak jauh BigQuery ML
Buat model jarak jauh:
Model Agent Platform
Di konsol Google Cloud , buka halaman BigQuery.
Dengan menggunakan editor SQL, buat model jarak jauh:
CREATE OR REPLACE MODEL `PROJECT_ID.DATASET_ID.MODEL_NAME` REMOTE WITH CONNECTION {DEFAULT | `PROJECT_ID.REGION.CONNECTION_ID`} OPTIONS (ENDPOINT = 'ENDPOINT');
Ganti kode berikut:
PROJECT_ID: project ID Anda.DATASET_ID: ID set data yang akan berisi model. Set data ini harus berada di lokasi yang sama dengan koneksi yang Anda gunakan.MODEL_NAME: nama model.REGION: region yang digunakan oleh koneksi.CONNECTION_ID: ID koneksi BigQuery Anda.Anda bisa mendapatkan nilai ini dengan melihat detail koneksi di konsol Google Cloud dan menyalin nilai di bagian terakhir ID koneksi yang sepenuhnya memenuhi syarat yang ditampilkan di Connection ID. Misalnya,
projects/myproject/locations/connection_location/connections/myconnection.ENDPOINT: endpoint model Agent Platform yang akan digunakan.Untuk model Agent Platform terlatih, model Claude, dan model Mistral AI, tentukan nama model. Untuk beberapa model ini, Anda dapat menentukan versi tertentu dari model sebagai bagian dari nama. Untuk model Gemini yang didukung, Anda dapat menentukan endpoint global untuk meningkatkan ketersediaan.
Untuk model Llama, tentukan endpoint OpenAI API dalam format
openapi/<publisher_name>/<model_name>. Misalnya,openapi/meta/llama-3.1-405b-instruct-maas.Untuk mengetahui informasi tentang nama dan versi model yang didukung, lihat
ENDPOINT.Model Agent Platform yang Anda tentukan harus tersedia di lokasi tempat Anda membuat model jarak jauh. Untuk mengetahui informasi selengkapnya, lihat Lokasi.
Model terbuka baru
Di konsol Google Cloud , buka halaman BigQuery.
Dengan menggunakan editor SQL, buat model jarak jauh:
CREATE OR REPLACE MODEL `PROJECT_ID.DATASET_ID.MODEL_NAME` REMOTE WITH CONNECTION {DEFAULT | `PROJECT_ID.REGION.CONNECTION_ID`} OPTIONS ( {HUGGING_FACE_MODEL_ID = 'HUGGING_FACE_MODEL_ID' | MODEL_GARDEN_MODEL_NAME = 'MODEL_GARDEN_MODEL_NAME'} [, HUGGING_FACE_TOKEN = 'HUGGING_FACE_TOKEN' ] [, MACHINE_TYPE = 'MACHINE_TYPE' ] [, MIN_REPLICA_COUNT = MIN_REPLICA_COUNT ] [, MAX_REPLICA_COUNT = MAX_REPLICA_COUNT ] [, RESERVATION_AFFINITY_TYPE = {'NO_RESERVATION' | 'ANY_RESERVATION' | 'SPECIFIC_RESERVATION'} ] [, RESERVATION_AFFINITY_KEY = 'compute.googleapis.com/reservation-name' ] [, RESERVATION_AFFINITY_VALUES = RESERVATION_AFFINITY_VALUES ] [, ENDPOINT_IDLE_TTL = ENDPOINT_IDLE_TTL ] );
Ganti kode berikut:
PROJECT_ID: project ID Anda.DATASET_ID: ID set data yang akan berisi model. Set data ini harus berada di lokasi yang sama dengan koneksi yang Anda gunakan.MODEL_NAME: nama model.REGION: region yang digunakan oleh koneksi.CONNECTION_ID: ID koneksi BigQuery Anda.Anda bisa mendapatkan nilai ini dengan melihat detail koneksi di konsol Google Cloud dan menyalin nilai di bagian terakhir ID koneksi yang sepenuhnya memenuhi syarat yang ditampilkan di Connection ID. Misalnya,
projects/myproject/locations/connection_location/connections/myconnection.HUGGING_FACE_MODEL_ID: nilaiSTRINGyang menentukan ID model untuk model Hugging Face yang didukung, dalam formatprovider_name/model_name. Misalnya,deepseek-ai/DeepSeek-R1. Anda bisa mendapatkan ID model dengan mengklik nama model di Hugging Face Model Hub, lalu menyalin ID model dari bagian atas kartu model.MODEL_GARDEN_MODEL_NAME: nilaiSTRINGyang menentukan ID model dan versi model dari model Model Garden Gemini Enterprise Agent Platform yang didukung, dalam formatpublishers/publisher/models/model_name@model_version. Misalnya,publishers/openai/models/gpt-oss@gpt-oss-120b. Anda bisa mendapatkan ID model dengan mengklik kartu model di Agent Platform Model Garden, lalu menyalin ID model dari kolom Model ID. Anda bisa mendapatkan versi model default dengan menyalinnya dari kolom Version di kartu model. Untuk melihat versi model lain yang dapat Anda gunakan, klik Deploy model, lalu klik kolom Resource ID.HUGGING_FACE_TOKEN: nilaiSTRINGyang menentukan Token Akses Pengguna Hugging Face yang akan digunakan. Anda hanya dapat menentukan nilai untuk opsi ini jika Anda juga menentukan nilai untuk opsiHUGGING_FACE_MODEL_ID.Token harus memiliki peran
readminimal, tetapi token dengan cakupan yang lebih luas juga dapat diterima. Opsi ini diperlukan jika model yang diidentifikasi oleh nilaiHUGGING_FACE_MODEL_IDadalah model Hugging Face gated atau pribadi.Beberapa model yang dibatasi memerlukan persetujuan eksplisit terhadap persyaratan layanan sebelum akses diberikan. Untuk menyetujui persyaratan ini, ikuti langkah-langkah berikut:
- Buka halaman model di situs Hugging Face.
- Temukan dan tinjau persyaratan layanan model. Link ke perjanjian layanan biasanya dapat ditemukan di kartu model.
- Setujui persyaratan seperti yang diminta di halaman.
MACHINE_TYPE: nilaiSTRINGyang menentukan jenis mesin yang akan digunakan saat men-deploy model ke Agent Platform. Untuk mengetahui informasi tentang jenis mesin yang didukung, lihat Jenis mesin. Jika Anda tidak menentukan nilai untuk opsiMACHINE_TYPE, jenis mesin default Agent Platform Model Garden untuk model akan digunakan.MIN_REPLICA_COUNT: nilaiINT64yang menentukan jumlah minimum replika mesin yang digunakan saat men-deploy model di endpoint Agent Platform. Layanan ini menambah atau mengurangi jumlah replika sesuai kebutuhan beban inferensi pada endpoint. Jumlah replika yang digunakan tidak pernah lebih rendah dari nilaiMIN_REPLICA_COUNTdan tidak pernah lebih tinggi dari nilaiMAX_REPLICA_COUNT. NilaiMIN_REPLICA_COUNTharus dalam rentang[1, 4096]. Nilai defaultnya adalah1.MAX_REPLICA_COUNT: nilaiINT64yang menentukan jumlah maksimum replika mesin yang digunakan saat men-deploy model di endpoint Agent Platform. Layanan ini menambah atau mengurangi jumlah replika sesuai kebutuhan beban inferensi pada endpoint. Jumlah replika yang digunakan tidak pernah lebih rendah dari nilaiMIN_REPLICA_COUNTdan tidak pernah lebih tinggi dari nilaiMAX_REPLICA_COUNT. NilaiMAX_REPLICA_COUNTharus berada dalam rentang[1, 4096]. Nilai defaultnya adalah nilaiMIN_REPLICA_COUNT.RESERVATION_AFFINITY_TYPE: menentukan apakah model yang di-deploy menggunakan pemesanan Compute Engine untuk memberikan ketersediaan virtual machine (VM) yang terjamin saat menyajikan prediksi, dan menentukan apakah model menggunakan VM dari semua pemesanan yang tersedia atau hanya satu pemesanan tertentu. Untuk mengetahui informasi selengkapnya, lihat Afinitas pemesanan Compute Engine.Anda hanya dapat menggunakan reservasi Compute Engine yang dibagikan ke Agent Platform. Untuk mengetahui informasi selengkapnya, lihat Mengizinkan pemesanan digunakan.
Nilai yang didukung adalah sebagai berikut:
NO_RESERVATION: tidak ada reservasi yang digunakan saat model Anda di-deploy ke endpoint Agent Platform. MenentukanNO_RESERVATIONmemiliki efek yang sama dengan tidak menentukan afinitas pemesanan.ANY_RESERVATION: deployment model Agent Platform menggunakan virtual machine (VM) dari pemesanan Compute Engine yang ada dalam project saat ini atau yang dibagikan dengan project, dan yang dikonfigurasi untuk penggunaan otomatis. Hanya VM yang memenuhi kualifikasi berikut yang digunakan:- Node menggunakan jenis mesin yang ditentukan oleh nilai
MACHINE_TYPE. - Jika set data BigQuery tempat Anda membuat model jarak jauh adalah satu region, pemesanan harus berada di region yang sama. Jika set data berada di multiregion
US, pemesanan harus berada di regionus-central1. Jika set data berada di multiregionEU, pemesanan harus berada di regioneurope-west4.
Jika kapasitas dalam pemesanan yang tersedia tidak mencukupi, atau jika tidak ditemukan pemesanan yang sesuai, sistem akan menyediakan VM Compute Engine on-demand untuk memenuhi persyaratan resource.
- Node menggunakan jenis mesin yang ditentukan oleh nilai
SPECIFIC_RESERVATION: deployment model Agent Platform hanya menggunakan VM dari pemesanan yang Anda tentukan dalam nilaiRESERVATION_AFFINITY_VALUES. Pemesanan ini harus dikonfigurasi untuk konsumsi yang ditargetkan secara khusus. Deployment akan gagal jika pemesanan yang ditentukan tidak memiliki kapasitas yang memadai.
RESERVATION_AFFINITY_KEY: stringcompute.googleapis.com/reservation-name. Anda harus menentukan opsi ini saat nilaiRESERVATION_AFFINITY_TYPEadalahSPECIFIC_RESERVATION.RESERVATION_AFFINITY_VALUES: nilaiARRAY<STRING>yang menentukan nama resource lengkap pemesanan Compute Engine, dalam format berikut:
projects/myproject/zones/reservation_zone/reservations/reservation_nameContoh,
RESERVATION_AFFINITY_values = ['projects/myProject/zones/us-central1-a/reservations/myReservationName'].Anda bisa mendapatkan nama dan zona pemesanan dari halaman Reservations di konsol Google Cloud . Untuk mengetahui informasi selengkapnya, lihat Melihat pemesanan.
Anda harus menentukan opsi ini jika nilai
RESERVATION_AFFINITY_TYPEadalahSPECIFIC_RESERVATION.ENDPOINT_IDLE_TTL: nilaiINTERVALyang menentukan durasi tidak aktif setelah model terbuka otomatis dibatalkan deployment-nya dari endpoint Agent Platform.Untuk mengaktifkan pembatalan deployment otomatis, tentukan nilai literal interval antara 390 menit (6,5 jam) dan 7 hari. Misalnya, tentukan
INTERVAL 8 HOURagar model dicabut deployment-nya setelah 8 jam tidak ada aktivitas. Nilai defaultnya adalah 390 menit (6,5 jam).Tidak aktifnya model didefinisikan sebagai jumlah waktu yang telah berlalu sejak salah satu operasi berikut dilakukan pada model:
- Menjalankan
pernyataan
CREATE MODEL. - Menjalankan
pernyataan
ALTER MODELdengan argumenDEPLOY_MODELditetapkan keTRUE. - Mengirim permintaan inferensi ke endpoint model. Misalnya, dengan
menjalankan
fungsi
AI.GENERATE_EMBEDDINGatauAI.GENERATE_TEXT.
Setiap operasi ini akan mereset timer tidak aktif ke nol. Reset dipicu pada awal tugas BigQuery yang menjalankan operasi.
Setelah model dibatalkan deployment-nya, permintaan inferensi yang dikirim ke model akan menampilkan error. Objek model BigQuery tetap tidak berubah, termasuk metadata model. Untuk menggunakan model untuk inferensi lagi, Anda harus men-deploy ulang model dengan menjalankan pernyataan
ALTER MODELpada model dan menetapkan opsiDEPLOY_MODELkeTRUE.- Menjalankan
pernyataan
Model terbuka yang di-deploy
Di konsol Google Cloud , buka halaman BigQuery.
Dengan menggunakan editor SQL, buat model jarak jauh:
CREATE OR REPLACE MODEL `PROJECT_ID.DATASET_ID.MODEL_NAME` REMOTE WITH CONNECTION {DEFAULT | `PROJECT_ID.REGION.CONNECTION_ID`} OPTIONS ( ENDPOINT = 'https://ENDPOINT_REGION-aiplatform.googleapis.com/v1/projects/ENDPOINT_PROJECT_ID/locations/ENDPOINT_REGION/endpoints/ENDPOINT_ID' );
Ganti kode berikut:
PROJECT_ID: project ID Anda.DATASET_ID: ID set data yang akan berisi model. Set data ini harus berada di lokasi yang sama dengan koneksi yang Anda gunakan.MODEL_NAME: nama model.REGION: region yang digunakan oleh koneksi.CONNECTION_ID: ID koneksi BigQuery Anda.Anda bisa mendapatkan nilai ini dengan melihat detail koneksi di konsol Google Cloud dan menyalin nilai di bagian terakhir ID koneksi yang sepenuhnya memenuhi syarat yang ditampilkan di ID Koneksi. Misalnya,
projects/myproject/locations/connection_location/connections/myconnection.ENDPOINT_REGION: region tempat model terbuka di-deploy.ENDPOINT_PROJECT_ID: project tempat model terbuka di-deploy.ENDPOINT_ID: ID endpoint HTTPS yang digunakan oleh model terbuka. Anda bisa mendapatkan ID endpoint dengan menemukan model terbuka di halaman Online prediction dan menyalin nilai di kolom ID.
Membuat teks dari data tabel standar
Buat teks menggunakan
fungsi AI.GENERATE_TEXT
dengan data perintah dari tabel standar:
Gemini
SELECT * FROM AI.GENERATE_TEXT( MODEL `PROJECT_ID.DATASET_ID.MODEL_NAME`, {TABLE PROJECT_ID.DATASET_ID.TABLE_NAME | (PROMPT_QUERY)}, STRUCT( { { [MAX_OUTPUT_TOKENS AS max_output_tokens] [, TOP_P AS top_p] [, TEMPERATURE AS temperature] [, STOP_SEQUENCES AS stop_sequences] [, GROUND_WITH_GOOGLE_SEARCH AS ground_with_google_search] [, SAFETY_SETTINGS AS safety_settings] } | [, MODEL_PARAMS AS model_params] } [, REQUEST_TYPE AS request_type]) );
Ganti kode berikut:
PROJECT_ID: project ID Anda.DATASET_ID: ID set data yang berisi model.MODEL_NAME: nama model.TABLE_NAME: nama tabel yang berisi prompt. Tabel ini harus memiliki kolom yang bernamaprompt, atau Anda dapat menggunakan alias untuk menggunakan kolom dengan nama yang berbeda.PROMPT_QUERY: kueri yang menyediakan data prompt. Kueri ini harus menghasilkan kolom bernamaprompt.TOKENS: nilaiINT64yang menetapkan jumlah maksimum token yang dapat dibuat dalam respons. Nilai ini harus dalam rentang[1,8192]. Tentukan nilai yang lebih rendah untuk respons yang lebih singkat dan nilai yang lebih tinggi untuk respons yang lebih panjang. Defaultnya adalah128.TEMPERATURE: nilaiFLOAT64dalam rentang[0.0,1.0]yang mengontrol tingkat keacakan dalam pemilihan token. Defaultnya adalah0.Nilai yang lebih rendah untuk
temperaturecocok untuk prompt yang memerlukan respons yang lebih deterministik dan kurang terbuka atau kreatif, sedangkan nilai yang lebih tinggi untuktemperaturedapat memberikan hasil yang lebih beragam atau kreatif. Nilai0untuktemperaturebersifat deterministik, yang berarti bahwa respons probabilitas tertinggi selalu dipilih.TOP_P: nilaiFLOAT64dalam rentang[0.0,1.0]membantu menentukan probabilitas token yang dipilih. Tentukan nilai yang lebih rendah untuk respons dengan tingkat keacakan yang lebih rendah dan nilai yang lebih tinggi untuk respons dengan tingkat keacakan yang lebih tinggi. Defaultnya adalah0.95.STOP_SEQUENCES: nilaiARRAY<STRING>yang menghapus string yang ditentukan jika disertakan dalam respons dari model. String dicocokkan persis, termasuk kapitalisasi. Defaultnya adalah array kosong.GROUND_WITH_GOOGLE_SEARCH: nilaiBOOLyang menentukan apakah model Gemini Enterprise Agent Platform menggunakan [Grounding dengan Google Penelusuran](/vertex-ai/generative-ai/docs/grounding/overview#ground-public) saat menghasilkan respons. Grounding memungkinkan model menggunakan informasi tambahan dari internet saat menghasilkan respons, agar respons model lebih spesifik dan faktual. Jika kolom ini ditetapkan keTrue, kolomgrounding_resulttambahan akan disertakan dalam hasil, yang memberikan sumber yang digunakan model untuk mengumpulkan informasi tambahan. Defaultnya adalahFALSE.SAFETY_SETTINGS: nilaiARRAY<STRUCT<STRING AS category, STRING AS threshold>>yang mengonfigurasi nilai minimum keamanan konten untuk memfilter respons. Elemen pertama dalam struct menentukan kategori bahaya, dan elemen kedua dalam struct menentukan nilai minimum pemblokiran yang sesuai. Model akan memfilter konten yang melanggar setelan ini. Anda hanya dapat menentukan setiap kategori satu kali. Misalnya, Anda tidak dapat menentukanSTRUCT('HARM_CATEGORY_DANGEROUS_CONTENT' AS category, 'BLOCK_MEDIUM_AND_ABOVE' AS threshold)danSTRUCT('HARM_CATEGORY_DANGEROUS_CONTENT' AS category, 'BLOCK_ONLY_HIGH' AS threshold)sekaligus. Jika tidak ada setelan keamanan untuk kategori tertentu, setelan keamananBLOCK_MEDIUM_AND_ABOVEakan digunakan. Kategori yang didukung adalah sebagai berikut:HARM_CATEGORY_HATE_SPEECHHARM_CATEGORY_DANGEROUS_CONTENTHARM_CATEGORY_HARASSMENTHARM_CATEGORY_SEXUALLY_EXPLICIT
BLOCK_NONE(Dibatasi)BLOCK_LOW_AND_ABOVEBLOCK_MEDIUM_AND_ABOVE(Default)BLOCK_ONLY_HIGHHARM_BLOCK_THRESHOLD_UNSPECIFIED
REQUEST_TYPE: nilaiSTRINGyang menentukan jenis permintaan inferensi yang akan dikirim ke model Gemini. Jenis permintaan menentukan kuota yang digunakan permintaan. Nilai yang valid adalah sebagai berikut:DEDICATED: FungsiAI.GENERATE_TEXThanya menggunakan kuota Throughput yang Disediakan. FungsiAI.GENERATE_TEXTmenampilkan errorProvisioned throughput is not purchased or is not activejika kuota Throughput yang Disediakan tidak tersedia.SHARED: FungsiAI.GENERATE_TEXThanya menggunakan kuota bersama dinamis (DSQ), meskipun Anda telah membeli kuota Throughput yang Disediakan.UNSPECIFIED: FungsiAI.GENERATE_TEXTmenggunakan kuota sebagai berikut:- Jika Anda belum membeli kuota Throughput yang Disediakan, fungsi
AI.GENERATE_TEXTakan menggunakan kuota DSQ. - Jika Anda telah membeli kuota Throughput yang Disediakan, fungsi
AI.GENERATE_TEXTakan menggunakan kuota Throughput yang Disediakan terlebih dahulu. Jika permintaan melebihi kuota Throughput yang Disediakan, traffic tambahan akan menggunakan kuota DSQ.
- Jika Anda belum membeli kuota Throughput yang Disediakan, fungsi
Nilai defaultnya adalah
UNSPECIFIED.Untuk mengetahui informasi selengkapnya, lihat Menggunakan Throughput yang Disediakan Agent Platform.
MODEL_PARAMS: literal string berformat JSON yang menyediakan parameter ke model. Nilai harus sesuai dengan format isi permintaangenerateContent. Anda dapat memberikan nilai untuk kolom apa pun dalam isi permintaan, kecuali untuk kolomcontents[]. Jika Anda menetapkan kolom ini, Anda juga tidak dapat menentukan parameter model apa pun dalam argumen struct level teratas untuk fungsiAI.GENERATE_TEXT. Anda harus menentukan setiap parameter model di kolomMODEL_PARAMS, atau menghapus kolom ini dan menentukan setiap parameter secara terpisah.
Contoh 1
Contoh berikut menunjukkan permintaan dengan karakteristik berikut:
- Meminta ringkasan teks di kolom
bodypada tabelarticles.
SELECT * FROM AI.GENERATE_TEXT( MODEL `mydataset.text_model`, ( SELECT CONCAT('Summarize this text', body) AS prompt FROM mydataset.articles ));
Contoh 2
Contoh berikut menunjukkan permintaan dengan karakteristik berikut:
- Menggunakan kueri untuk membuat data prompt dengan menyambungkan string yang memberikan awalan prompt dengan kolom tabel.
- Menampilkan respons singkat.
SELECT * FROM AI.GENERATE_TEXT( MODEL `mydataset.text_model`, ( SELECT CONCAT(question, 'Text:', description, 'Category') AS prompt FROM mydataset.input_table ), STRUCT( 100 AS max_output_tokens));
Contoh 3
Contoh berikut menunjukkan permintaan dengan karakteristik berikut:
- Menggunakan kolom
promptdari tabelpromptsuntuk prompt.
SELECT * FROM AI.GENERATE_TEXT( MODEL `mydataset.text_model`, TABLE mydataset.prompts);
Contoh 4
Contoh berikut menunjukkan permintaan dengan karakteristik berikut:
- Menggunakan kolom
promptdari tabelpromptsuntuk prompt. - Menampilkan respons singkat.
- Mengambil dan menampilkan data web publik untuk grounding respons.
- Memfilter respons yang tidak aman menggunakan dua setelan keamanan.
SELECT * FROM AI.GENERATE_TEXT( MODEL `mydataset.text_model`, TABLE mydataset.prompts, STRUCT( 100 AS max_output_tokens, 0.5 AS top_p, TRUE AS ground_with_google_search, [STRUCT('HARM_CATEGORY_HATE_SPEECH' AS category, 'BLOCK_LOW_AND_ABOVE' AS threshold), STRUCT('HARM_CATEGORY_DANGEROUS_CONTENT' AS category, 'BLOCK_MEDIUM_AND_ABOVE' AS threshold)] AS safety_settings));
Contoh 5
Contoh berikut menunjukkan permintaan dengan karakteristik berikut:
- Menggunakan kolom
promptdari tabelpromptsuntuk prompt. - Menampilkan respons yang lebih panjang.
SELECT * FROM AI.GENERATE_TEXT( MODEL `mydataset.flash_2_model`, TABLE mydataset.prompts, STRUCT( 0.4 AS temperature, 8192 AS max_output_tokens));
Contoh 6
Contoh berikut menunjukkan permintaan dengan karakteristik berikut:
- Meminta ringkasan teks di kolom
bodypada tabelarticles. - Mengambil dan menampilkan data web publik untuk grounding respons.
- Memfilter respons yang tidak aman menggunakan dua setelan keamanan.
SELECT * FROM AI.GENERATE_TEXT( MODEL `mydataset.text_model`, ( SELECT CONCAT('Summarize this text', body) AS prompt FROM mydataset.articles ), STRUCT( .1 AS TEMPERATURE, TRUE AS ground_with_google_search, [STRUCT('HARM_CATEGORY_HATE_SPEECH' AS category, 'BLOCK_LOW_AND_ABOVE' AS threshold), STRUCT('HARM_CATEGORY_DANGEROUS_CONTENT' AS category, 'BLOCK_MEDIUM_AND_ABOVE' AS threshold)] AS safety_settings));
Claude
SELECT * FROM AI.GENERATE_TEXT( MODEL `PROJECT_ID.DATASET_ID.MODEL_NAME`, {TABLE PROJECT_ID.DATASET_ID.TABLE_NAME | (PROMPT_QUERY)}, STRUCT( { { [MAX_OUTPUT_TOKENS AS max_output_tokens] [, TOP_K AS top_k] [, TOP_P AS top_p] } | [, MODEL_PARAMS AS model_params] }) );
Ganti kode berikut:
PROJECT_ID: project ID Anda.DATASET_ID: ID set data yang berisi model.MODEL_NAME: nama model.TABLE_NAME: nama tabel yang berisi prompt. Tabel ini harus memiliki kolom yang bernamaprompt, atau Anda dapat menggunakan alias untuk menggunakan kolom dengan nama yang berbeda.PROMPT_QUERY: kueri yang menyediakan data prompt. Kueri ini harus menghasilkan kolom bernamaprompt.TOKENS: nilaiINT64yang menetapkan jumlah maksimum token yang dapat dibuat dalam respons. Nilai ini harus dalam rentang[1,4096]. Tentukan nilai yang lebih rendah untuk respons yang lebih singkat dan nilai yang lebih tinggi untuk respons yang lebih panjang. Defaultnya adalah128.TOP_K: nilaiINT64dalam rentang[1,40]yang menentukan kumpulan awal token yang dipertimbangkan model untuk dipilih. Tentukan nilai yang lebih rendah untuk respons dengan tingkat keacakan lebih rendah, dan nilai yang lebih tinggi untuk respons dengan tingkat keacakan lebih tinggi. Jika Anda tidak menentukan nilai, model akan menentukan nilai yang sesuai.TOP_P: nilaiFLOAT64dalam rentang[0.0,1.0]membantu menentukan probabilitas token yang dipilih. Tentukan nilai yang lebih rendah untuk respons dengan tingkat keacakan yang lebih rendah dan nilai yang lebih tinggi untuk respons dengan tingkat keacakan yang lebih tinggi. Jika Anda tidak menentukan nilai, model akan menentukan nilai yang sesuai.MODEL_PARAMS: literal string berformat JSON yang menyediakan parameter ke model. Nilai harus sesuai dengan format isi permintaangenerateContent. Anda dapat memberikan nilai untuk kolom apa pun dalam isi permintaan, kecuali untuk kolomcontents[]. Jika Anda menetapkan kolom ini, Anda juga tidak dapat menentukan parameter model apa pun dalam argumen struct level teratas untuk fungsiAI.GENERATE_TEXT. Anda harus menentukan setiap parameter model di kolomMODEL_PARAMS, atau menghapus kolom ini dan menentukan setiap parameter secara terpisah.
Contoh 1
Contoh berikut menunjukkan permintaan dengan karakteristik berikut:
- Meminta ringkasan teks di kolom
bodypada tabelarticles.
SELECT * FROM AI.GENERATE_TEXT( MODEL `mydataset.text_model`, ( SELECT CONCAT('Summarize this text', body) AS prompt FROM mydataset.articles ));
Contoh 2
Contoh berikut menunjukkan permintaan dengan karakteristik berikut:
- Menggunakan kueri untuk membuat data prompt dengan menyambungkan string yang memberikan awalan prompt dengan kolom tabel.
- Menampilkan respons singkat.
SELECT * FROM AI.GENERATE_TEXT( MODEL `mydataset.text_model`, ( SELECT CONCAT(question, 'Text:', description, 'Category') AS prompt FROM mydataset.input_table ), STRUCT( 100 AS max_output_tokens));
Contoh 3
Contoh berikut menunjukkan permintaan dengan karakteristik berikut:
- Menggunakan kolom
promptdari tabelpromptsuntuk prompt.
SELECT * FROM AI.GENERATE_TEXT( MODEL `mydataset.text_model`, TABLE mydataset.prompts);
Llama
SELECT * FROM AI.GENERATE_TEXT( MODEL `PROJECT_ID.DATASET_ID.MODEL_NAME`, {TABLE PROJECT_ID.DATASET_ID.TABLE_NAME | (PROMPT_QUERY)}, STRUCT( { { [MAX_OUTPUT_TOKENS AS max_output_tokens] [, TOP_P AS top_p] [, TEMPERATURE AS temperature] [, STOP_SEQUENCES AS stop_sequences] | } [, MODEL_PARAMS AS model_params] }) );
Ganti kode berikut:
PROJECT_ID: project ID Anda.DATASET_ID: ID set data yang berisi model.MODEL_NAME: nama model.TABLE_NAME: nama tabel yang berisi prompt. Tabel ini harus memiliki kolom yang bernamaprompt, atau Anda dapat menggunakan alias untuk menggunakan kolom dengan nama yang berbeda.PROMPT_QUERY: kueri yang menyediakan data prompt. Kueri ini harus menghasilkan kolom bernamaprompt.TOKENS: nilaiINT64yang menetapkan jumlah maksimum token yang dapat dibuat dalam respons. Nilai ini harus berada dalam rentang[1,4096]. Tentukan nilai yang lebih rendah untuk respons yang lebih singkat dan nilai yang lebih tinggi untuk respons yang lebih panjang. Defaultnya adalah128.TEMPERATURE: nilaiFLOAT64dalam rentang[0.0,1.0]yang mengontrol tingkat keacakan dalam pemilihan token. Defaultnya adalah0.Nilai yang lebih rendah untuk
temperaturecocok untuk prompt yang memerlukan respons yang lebih deterministik dan kurang terbuka atau kreatif, sedangkan nilai yang lebih tinggi untuktemperaturedapat memberikan hasil yang lebih beragam atau kreatif. Nilai0untuktemperaturebersifat deterministik, yang berarti bahwa respons probabilitas tertinggi selalu dipilih.TOP_P: nilaiFLOAT64dalam rentang[0.0,1.0]membantu menentukan probabilitas token yang dipilih. Tentukan nilai yang lebih rendah untuk respons dengan tingkat keacakan yang lebih rendah dan nilai yang lebih tinggi untuk respons dengan tingkat keacakan yang lebih tinggi. Defaultnya adalah0.95.STOP_SEQUENCES: nilaiARRAY<STRING>yang menghapus string yang ditentukan jika disertakan dalam respons dari model. String dicocokkan persis, termasuk kapitalisasi. Defaultnya adalah array kosong.MODEL_PARAMS: literal string berformat JSON yang menyediakan parameter ke model. Nilai harus sesuai dengan format isi permintaangenerateContent. Anda dapat memberikan nilai untuk kolom apa pun dalam isi permintaan, kecuali untuk kolomcontents[]. Jika Anda menetapkan kolom ini, Anda juga tidak dapat menentukan parameter model apa pun dalam argumen struct level teratas untuk fungsiAI.GENERATE_TEXT. Anda harus menentukan setiap parameter model di kolomMODEL_PARAMS, atau menghapus kolom ini dan menentukan setiap parameter secara terpisah.
Contoh 1
Contoh berikut menunjukkan permintaan dengan karakteristik berikut:
- Meminta ringkasan teks di kolom
bodypada tabelarticles.
SELECT * FROM AI.GENERATE_TEXT( MODEL `mydataset.text_model`, ( SELECT CONCAT('Summarize this text', body) AS prompt FROM mydataset.articles ));
Contoh 2
Contoh berikut menunjukkan permintaan dengan karakteristik berikut:
- Menggunakan kueri untuk membuat data prompt dengan menyambungkan string yang memberikan awalan prompt dengan kolom tabel.
- Menampilkan respons singkat.
SELECT * FROM AI.GENERATE_TEXT( MODEL `mydataset.text_model`, ( SELECT CONCAT(question, 'Text:', description, 'Category') AS prompt FROM mydataset.input_table ), STRUCT( 100 AS max_output_tokens));
Contoh 3
Contoh berikut menunjukkan permintaan dengan karakteristik berikut:
- Menggunakan kolom
promptdari tabelpromptsuntuk prompt.
SELECT * FROM AI.GENERATE_TEXT( MODEL `mydataset.text_model`, TABLE mydataset.prompts);
Mistral AI
SELECT * FROM AI.GENERATE_TEXT( MODEL `PROJECT_ID.DATASET_ID.MODEL_NAME`, {TABLE PROJECT_ID.DATASET_ID.TABLE_NAME | (PROMPT_QUERY)}, STRUCT( { { [MAX_OUTPUT_TOKENS AS max_output_tokens] [, TOP_P AS top_p] [, TEMPERATURE AS temperature] [, STOP_SEQUENCES AS stop_sequences] | } [, MODEL_PARAMS AS model_params] }) );
Ganti kode berikut:
PROJECT_ID: project ID Anda.DATASET_ID: ID set data yang berisi model.MODEL_NAME: nama model.TABLE_NAME: nama tabel yang berisi prompt. Tabel ini harus memiliki kolom yang bernamaprompt, atau Anda dapat menggunakan alias untuk menggunakan kolom dengan nama yang berbeda.PROMPT_QUERY: kueri yang menyediakan data prompt. Kueri ini harus menghasilkan kolom bernamaprompt.TOKENS: nilaiINT64yang menetapkan jumlah maksimum token yang dapat dibuat dalam respons. Nilai ini harus berada dalam rentang[1,4096]. Tentukan nilai yang lebih rendah untuk respons yang lebih singkat dan nilai yang lebih tinggi untuk respons yang lebih panjang. Defaultnya adalah128.TEMPERATURE: nilaiFLOAT64dalam rentang[0.0,1.0]yang mengontrol tingkat keacakan dalam pemilihan token. Defaultnya adalah0.Nilai yang lebih rendah untuk
temperaturecocok untuk prompt yang memerlukan respons yang lebih deterministik dan kurang terbuka atau kreatif, sedangkan nilai yang lebih tinggi untuktemperaturedapat memberikan hasil yang lebih beragam atau kreatif. Nilai0untuktemperaturebersifat deterministik, yang berarti bahwa respons probabilitas tertinggi selalu dipilih.TOP_P: nilaiFLOAT64dalam rentang[0.0,1.0]membantu menentukan probabilitas token yang dipilih. Tentukan nilai yang lebih rendah untuk respons dengan tingkat keacakan yang lebih rendah dan nilai yang lebih tinggi untuk respons dengan tingkat keacakan yang lebih tinggi. Defaultnya adalah0.95.STOP_SEQUENCES: nilaiARRAY<STRING>yang menghapus string yang ditentukan jika disertakan dalam respons dari model. String dicocokkan persis, termasuk kapitalisasi. Defaultnya adalah array kosong.MODEL_PARAMS: literal string berformat JSON yang menyediakan parameter ke model. Nilai harus sesuai dengan format isi permintaangenerateContent. Anda dapat memberikan nilai untuk kolom apa pun dalam isi permintaan, kecuali untuk kolomcontents[]. Jika Anda menetapkan kolom ini, Anda juga tidak dapat menentukan parameter model apa pun dalam argumen struct level teratas untuk fungsiAI.GENERATE_TEXT. Anda harus menentukan setiap parameter model di kolomMODEL_PARAMS, atau menghapus kolom ini dan menentukan setiap parameter secara terpisah.
Contoh 1
Contoh berikut menunjukkan permintaan dengan karakteristik berikut:
- Meminta ringkasan teks di kolom
bodypada tabelarticles.
SELECT * FROM AI.GENERATE_TEXT( MODEL `mydataset.text_model`, ( SELECT CONCAT('Summarize this text', body) AS prompt FROM mydataset.articles ));
Contoh 2
Contoh berikut menunjukkan permintaan dengan karakteristik berikut:
- Menggunakan kueri untuk membuat data prompt dengan menyambungkan string yang memberikan awalan prompt dengan kolom tabel.
- Menampilkan respons singkat.
SELECT * FROM AI.GENERATE_TEXT( MODEL `mydataset.text_model`, ( SELECT CONCAT(question, 'Text:', description, 'Category') AS prompt FROM mydataset.input_table ), STRUCT( 100 AS max_output_tokens));
Contoh 3
Contoh berikut menunjukkan permintaan dengan karakteristik berikut:
- Menggunakan kolom
promptdari tabelpromptsuntuk prompt.
SELECT * FROM AI.GENERATE_TEXT( MODEL `mydataset.text_model`, TABLE mydataset.prompts);
Model terbuka
SELECT * FROM AI.GENERATE_TEXT( MODEL `PROJECT_ID.DATASET_ID.MODEL_NAME`, {TABLE PROJECT_ID.DATASET_ID.TABLE_NAME | (PROMPT_QUERY)}, STRUCT( { { [MAX_OUTPUT_TOKENS AS max_output_tokens] [, TOP_K AS top_k] [, TOP_P AS top_p] [, TEMPERATURE AS temperature] } | [, MODEL_PARAMS AS model_params] }) );
Ganti kode berikut:
PROJECT_ID: project ID Anda.DATASET_ID: ID set data yang berisi model.MODEL_NAME: nama model.TABLE_NAME: nama tabel yang berisi prompt. Tabel ini harus memiliki kolom yang bernamaprompt, atau Anda dapat menggunakan alias untuk menggunakan kolom dengan nama yang berbeda.PROMPT_QUERY: kueri yang menyediakan data prompt. Kueri ini harus menghasilkan kolom bernamaprompt.TOKENS: nilaiINT64yang menetapkan jumlah maksimum token yang dapat dibuat dalam respons. Nilai ini harus dalam rentang[1,4096]. Tentukan nilai yang lebih rendah untuk respons yang lebih singkat dan nilai yang lebih tinggi untuk respons yang lebih panjang. Jika Anda tidak menentukan nilai, model akan menentukan nilai yang sesuai.TEMPERATURE: nilaiFLOAT64dalam rentang[0.0,1.0]yang mengontrol tingkat keacakan dalam pemilihan token. Jika Anda tidak menentukan nilai, model akan menentukan nilai yang sesuai.Nilai yang lebih rendah untuk
temperaturecocok untuk prompt yang memerlukan respons yang lebih deterministik dan kurang terbuka atau kreatif, sedangkan nilai yang lebih tinggi untuktemperaturedapat memberikan hasil yang lebih beragam atau kreatif. Nilai0untuktemperaturebersifat deterministik, yang berarti bahwa respons probabilitas tertinggi selalu dipilih.TOP_K: nilaiINT64dalam rentang[1,40]yang menentukan kumpulan awal token yang dipertimbangkan model untuk dipilih. Tentukan nilai yang lebih rendah untuk respons dengan tingkat keacakan lebih rendah, dan nilai yang lebih tinggi untuk respons dengan tingkat keacakan lebih tinggi. Jika Anda tidak menentukan nilai, model akan menentukan nilai yang sesuai.TOP_P: nilaiFLOAT64dalam rentang[0.0,1.0]membantu menentukan probabilitas token yang dipilih. Tentukan nilai yang lebih rendah untuk respons dengan tingkat keacakan yang lebih rendah dan nilai yang lebih tinggi untuk respons dengan tingkat keacakan yang lebih tinggi. Jika Anda tidak menentukan nilai, model akan menentukan nilai yang sesuai.MODEL_PARAMS: literal string berformat JSON yang menyediakan parameter ke model. Nilai harus sesuai dengan format isi permintaangenerateContent. Anda dapat memberikan nilai untuk kolom apa pun dalam isi permintaan, kecuali untuk kolomcontents[]. Jika Anda menetapkan kolom ini, Anda juga tidak dapat menentukan parameter model apa pun dalam argumen struct level teratas untuk fungsiAI.GENERATE_TEXT. Anda harus menentukan setiap parameter model di kolomMODEL_PARAMS, atau menghapus kolom ini dan menentukan setiap parameter secara terpisah.
Contoh 1
Contoh berikut menunjukkan permintaan dengan karakteristik berikut:
- Meminta ringkasan teks di kolom
bodypada tabelarticles.
SELECT * FROM AI.GENERATE_TEXT( MODEL `mydataset.text_model`, ( SELECT CONCAT('Summarize this text', body) AS prompt FROM mydataset.articles ));
Contoh 2
Contoh berikut menunjukkan permintaan dengan karakteristik berikut:
- Menggunakan kueri untuk membuat data prompt dengan menyambungkan string yang memberikan awalan prompt dengan kolom tabel.
- Menampilkan respons singkat.
SELECT * FROM AI.GENERATE_TEXT( MODEL `mydataset.text_model`, ( SELECT CONCAT(question, 'Text:', description, 'Category') AS prompt FROM mydataset.input_table ), STRUCT( 100 AS max_output_tokens));
Contoh 3
Contoh berikut menunjukkan permintaan dengan karakteristik berikut:
- Menggunakan kolom
promptdari tabelpromptsuntuk prompt.
SELECT * FROM AI.GENERATE_TEXT( MODEL `mydataset.text_model`, TABLE mydataset.prompts);
Membuat teks dari data tabel objek
Buat teks menggunakan
fungsi AI.GENERATE_TEXT
dengan model Gemini untuk menganalisis data tidak terstruktur dari tabel
objek. Anda memberikan data prompt dalam parameter prompt.
SELECT * FROM AI.GENERATE_TEXT( MODEL `PROJECT_ID.DATASET.MODEL`, { TABLE `PROJECT_ID.DATASET.TABLE` | (QUERY_STATEMENT) }, STRUCT( PROMPT AS prompt { { [, MAX_OUTPUT_TOKENS AS max_output_tokens] [, TOP_P AS top_p] [, TEMPERATURE AS temperature] [, STOP_SEQUENCES AS stop_sequences] [, SAFETY_SETTINGS AS safety_settings] } | [, MODEL_PARAMS AS model_params] }) );
Ganti kode berikut:
PROJECT_ID: project yang berisi resource.DATASET: set data yang berisi resource.MODEL: nama model jarak jauh di atas model Gemini Enterprise Agent Platform. Untuk mengetahui informasi selengkapnya tentang cara membuat jenis model jarak jauh ini, lihat PernyataanCREATE MODELuntuk model jarak jauh melalui LLM .Anda dapat mengonfirmasi model yang digunakan oleh model jarak jauh dengan membuka konsol Google Cloud dan melihat kolom Endpoint jarak jauh di halaman detail model.
Catatan: Penggunaan model jarak jauh yang didasarkan pada model Gemini 2.5 akan dikenai biaya untuk proses penalaran.
TABLE: nama tabel objek yang berisi konten yang akan dianalisis. Untuk mengetahui informasi selengkapnya tentang jenis konten yang dapat Anda analisis, lihat Input.Bucket Cloud Storage yang digunakan oleh tabel objek input harus berada di project yang sama tempat Anda membuat model dan tempat Anda memanggil fungsi
AI.GENERATE_TEXT.QUERY_STATEMENT: kueri GoogleSQL yang menghasilkan data gambar. Anda hanya dapat menentukan klausaWHEREdanORDER BYdalam kueri.PROMPT: nilaiSTRINGyang berisi perintah yang akan digunakan untuk menganalisis konten visual. Nilaipromptharus berisi kurang dari 16.000 token. Token mungkin lebih kecil dari kata dan kira-kira empat karakter. Seratus token setara dengan sekitar 60-80 kata.MAX_OUTPUT_TOKENS: nilaiINT64yang menetapkan jumlah maksimum token yang dapat dibuat dalam respons. Nilai ini harus dalam rentang[1,8192]. Tentukan nilai yang lebih rendah untuk respons yang lebih singkat dan nilai yang lebih tinggi untuk respons yang lebih panjang. Defaultnya adalah1024.TOP_P: nilaiFLOAT64dalam rentang[0.0,1.0]yang mengubah cara model memilih token untuk output. Tentukan nilai yang lebih rendah untuk respons dengan tingkat keacakan yang lebih rendah dan nilai yang lebih tinggi untuk respons dengan tingkat keacakan yang lebih tinggi. Defaultnya adalah0.95.Token dipilih dari yang paling mungkin hingga yang paling tidak mungkin sampai jumlah probabilitasnya sama dengan nilai
TOP_P. Misalnya, jika token A, B, dan C memiliki probabilitas0.3,0.2, dan0.1, serta nilaiTOP_Padalah0.5, maka model akan memilih A atau B sebagai token berikutnya dengan menggunakan nilaiTEMPERATUREdan tidak mempertimbangkan C.TEMPERATURE: nilaiFLOAT64dalam rentang[0.0,1.0]yang mengontrol tingkat keacakan dalam pemilihan token. NilaiTEMPERATUREyang lebih rendah cocok untuk perintah yang memerlukan respons yang lebih deterministik dan kurang terbuka atau kreatif, sedangkan nilaiTEMPERATUREyang lebih tinggi dapat memberikan hasil yang lebih beragam atau kreatif. NilaiTEMPERATUREdari0bersifat deterministik, yang berarti bahwa respons probabilitas tertinggi selalu dipilih. Defaultnya adalah0.STOP_SEQUENCES: nilaiARRAYyang menghapus string yang ditentukan jika disertakan dalam respons dari model. String dicocokkan persis, termasuk kapitalisasi. Default-nya adalah array kosong.SAFETY_SETTINGS: nilaiARRAYyang mengonfigurasi nilai minimum keamanan konten untuk memfilter respons. Elemen pertama dalam struct menentukan kategori bahaya, dan elemen kedua dalam struct menentukan nilai minimum pemblokiran yang sesuai. Model akan memfilter konten yang melanggar setelan ini. Anda hanya dapat menentukan setiap kategori sekali. Misalnya, Anda tidak dapat menentukan> STRUCT('HARM_CATEGORY_DANGEROUS_CONTENT' AS category, 'BLOCK_MEDIUM_AND_ABOVE' AS threshold)danSTRUCT('HARM_CATEGORY_DANGEROUS_CONTENT' AS category, 'BLOCK_ONLY_HIGH' AS threshold). Jika tidak ada setelan keamanan untuk kategori tertentu, setelan keamananBLOCK_MEDIUM_AND_ABOVEakan digunakan.Kategori yang didukung adalah sebagai berikut:
HARM_CATEGORY_HATE_SPEECHHARM_CATEGORY_DANGEROUS_CONTENTHARM_CATEGORY_HARASSMENTHARM_CATEGORY_SEXUALLY_EXPLICIT
Nilai minimum yang didukung adalah sebagai berikut:
BLOCK_NONE( Dibatasi )BLOCK_LOW_AND_ABOVEBLOCK_MEDIUM_AND_ABOVE(Default)BLOCK_ONLY_HIGHHARM_BLOCK_THRESHOLD_UNSPECIFIED
Untuk mengetahui informasi selengkapnya, lihat definisi kategori keamanan dan nilai minimum pemblokiran .
MODEL_PARAMS: literal string berformat JSON yang memberikan parameter tambahan ke model. Nilai harus sesuai dengan format isi permintaangenerateContent. Anda dapat memberikan nilai untuk kolom apa pun dalam isi permintaan, kecuali untuk kolomcontents[]. Jika Anda menetapkan kolom ini, Anda juga tidak dapat menentukan parameter model apa pun dalam argumen struct level teratas ke fungsiAI.GENERATE_TEXT.
Menampilkan parameter opsional tambahan
Contoh
Contoh ini menerjemahkan dan mentranskripsikan konten audio dari tabel objek bernama feedback:
SELECT * FROM AI.GENERATE_TEXT( MODEL `mydataset.audio_model`, TABLE `mydataset.feedback`, STRUCT('What is the content of this audio clip, translated into Spanish?' AS PROMPT));
Contoh ini mengklasifikasikan konten PDF dari tabel objek
yang bernama invoices:
SELECT * FROM AI.GENERATE_TEXT( MODEL `mydataset.classify_model`, TABLE `mydataset.invoices`, STRUCT('Classify this document based on the invoice total, using the following categories: 0 to 100, 101 to 200, greater than 200' AS PROMPT));