Untuk menggunakan prediksi online, Anda dapat berinteraksi dengan AI Platform Training and Prediction API melalui
endpoint globalnya (ml.googleapis.com
) atau melalui salah satu endpoint regionalnya
(REGION-ml.googleapis.com
). Menggunakan endpoint regional
untuk prediksi online memberikan perlindungan tambahan untuk model Anda terhadap
penghentian di region lain, karena endpoint ini mengisolasi resource model dan versi Anda
dari region lain.
AI Platform Prediction saat ini mendukung endpoint regional berikut:
us-central1
us-east1
us-east4
us-west1
northamerica-northeast1
europe-west1
europe-west2
europe-west3
europe-west4
asia-east1
asia-northeast1
asia-southeast1
australia-southeast1
Panduan ini membandingkan manfaat dan batasan penggunaan endpoint regional dengan endpoint global. Panduan ini juga menjelaskan cara menggunakan endpoint regional untuk prediksi online.
Memahami endpoint regional
Endpoint regional memiliki beberapa perbedaan utama dari endpoint global:
Endpoint regional hanya mendukung jenis mesin Compute Engine (N1). Anda tidak dapat menggunakan jenis mesin lama (MLS1) di endpoint regional. Artinya, semua manfaat dan batasan penggunaan jenis mesin Compute Engine (N1) berlaku. Misalnya, Anda dapat menggunakan GPU di endpoint regional, tetapi saat ini Anda tidak dapat mengaktifkan logging streaming (konsol).
Untuk menggunakan jenis mesin Compute Engine (N1), Anda harus menggunakan endpoint regional.
Endpoint regional hanya mendukung prediksi online dan Penjelasan AI. Model yang di-deploy ke endpoint regional tidak mendukung prediksi batch.
AI Platform Prediction menggunakan AI Platform Training and Prediction API dengan AI Platform Training dan AI Platform Vizier. Perhatikan bahwa endpoint regional saat ini tidak mendukung AI Platform Training. Hanya endpoint
us-central1
yang mendukung AI Platform Vizier.Lihat referensi API untuk mengetahui detail selengkapnya tentang metode API yang tersedia di endpoint mana.
Nama resource AI Platform Prediction bersifat unik untuk project Google Cloud Anda di endpoint tertentu, tetapi dapat diduplikasi di berbagai endpoint. Misalnya,
Anda dapat membuat model bernama "hello-world" di endpoint europe-west4
dan
model lain bernama "hello-world" di endpoint us-central1
.
Saat mencantumkan model di endpoint regional, Anda hanya akan melihat model yang dibuat di endpoint tersebut. Demikian pula, saat mencantumkan model di endpoint global, Anda hanya melihat model yang dibuat di endpoint global.
Endpoint regional versus region endpoint global
Saat membuat resource model di endpoint global, Anda dapat menentukan region untuk model. Saat Anda membuat versi dalam model ini dan menayangkan prediksi, node prediksi akan berjalan di region yang ditentukan.
Saat Anda menggunakan endpoint regional, AI Platform Prediction akan menjalankan node prediksi di region endpoint. Namun, dalam hal ini, AI Platform Prediction memberikan isolasi tambahan dengan menjalankan semua infrastruktur AI Platform Prediction di region tersebut.
Misalnya, jika Anda menggunakan region us-east1
di endpoint global, node
prediksi akan berjalan di us-east1
. Namun, infrastruktur AI Platform Prediction
yang mengelola resource Anda (permintaan pemilihan rute; menangani pembuatan,
pembaruan, dan penghapusan model dan versi; dll.) tidak selalu berjalan di us-east1
. Di sisi lain, jika Anda menggunakan endpoint regional europe-west4
, node prediksi dan semua infrastruktur Prediksi AI Platform akan berjalan di europe-west4
.
Menggunakan endpoint regional
Untuk menggunakan endpoint regional, Anda harus membuat model terlebih dahulu di endpoint regional. Kemudian, lakukan semua tindakan yang terkait dengan model tersebut (seperti membuat versi model dan mengirim permintaan prediksi) di endpoint yang sama.
Jika Anda menggunakan konsol Google Cloud, pastikan untuk memilih kotak centang Gunakan endpoint regional saat membuat model. Lakukan semua tindakan konsol Google Cloud lainnya seperti yang Anda lakukan di endpoint global.
Jika Anda menggunakan Google Cloud CLI, flag --region
ke region endpoint Anda pada setiap perintah yang berinteraksi dengan model dan resource turunannya. Ini mencakup hal-hal berikut:
- Setiap perintah dalam grup perintah
gcloud ai-platform models
. - Setiap perintah dalam grup perintah
gcloud ai-platform versions
. - Setiap perintah dalam grup perintah
gcloud ai-platform operations
saat berinteraksi dengan operasi yang berjalan lama yang terkait dengan versi model. - Perintah
gcloud ai-platform predict
. - Perintah
gcloud beta ai-platform explain
.
Atau, Anda dapat menetapkan properti ai_platform/region
ke region tertentu untuk memastikan gcloud CLI selalu menggunakan endpoint regional yang sesuai untuk perintah AI Platform Prediction, meskipun Anda tidak menentukan flag --region
. (Konfigurasi ini tidak berlaku untuk perintah dalam grup perintah gcloud ai-platform operations
.)
Jika Anda berinteraksi langsung dengan AI Platform Training and Prediction API (misalnya, dengan menggunakan Library Klien Google API untuk Python), buat semua permintaan API seperti yang Anda lakukan ke endpoint global, tetapi gunakan endpoint regional. Lihat referensi API untuk mengetahui detail selengkapnya tentang metode API yang tersedia di endpoint regional.
Contoh berikut menunjukkan cara menggunakan endpoint regional untuk membuat model, membuat versi, dan mengirim permintaan prediksi online. Untuk menggunakan contoh, ganti REGION di mana pun ia muncul dengan salah satu region tempat endpoint regional tersedia:
us-central1
us-east1
us-east4
us-west1
northamerica-northeast1
europe-west1
europe-west2
europe-west3
europe-west4
asia-east1
asia-northeast1
asia-southeast1
australia-southeast1
Membuat model
Konsol Google Cloud
Di konsol Google Cloud, buka halaman Create model dan pilih project Google Cloud Anda:
Beri nama model Anda, centang kotak Gunakan endpoint regional, lalu pilih wilayah endpoint yang ingin Anda gunakan dari menu drop-down Region.
Klik tombol Buat.
gcloud
Jalankan perintah berikut:
gcloud ai-platform models create MODEL_NAME \
--region=REGION
Dalam perintah, ganti placeholder berikut:
- MODEL_NAME: Nama yang Anda pilih untuk model.
- REGION: Region endpoint yang ingin Anda gunakan.
Python
Contoh ini menggunakan Library Klien Google API untuk Python. Sebelum dapat menggunakannya, Anda harus menginstal Library Klien Google API untuk Python dan menyiapkan autentikasi di lingkungan pengembangan.
Jalankan kode Python berikut:
from google.api_core.client_options import ClientOptions
from googleapiclient import discovery
endpoint = 'https://REGION-ml.googleapis.com'
client_options = ClientOptions(api_endpoint=endpoint)
ml = discovery.build('ml', 'v1', client_options=client_options)
request_body = { 'name': 'MODEL_NAME' }
request = ml.projects().models().create(parent='projects/PROJECT_ID',
body=request_body)
response = request.execute()
print(response)
Dalam kode, ganti placeholder berikut:
- REGION: Region endpoint yang ingin Anda gunakan.
- MODEL_NAME: Nama yang Anda pilih untuk model.
- PROJECT_ID: ID project Google Cloud Anda.
Pelajari lebih lanjut cara membuat model.
Membuat versi model
Contoh ini mengasumsikan bahwa Anda telah mengupload artefak model yang kompatibel ke Cloud Storage.
Konsol Google Cloud
Dengan menggunakan model yang Anda buat di bagian sebelumnya, ikuti panduan untuk membuat versi model di konsol Google Cloud.
gcloud
Contoh ini mengasumsikan bahwa Anda telah mengupload artefak model yang kompatibel ke Cloud Storage. Jalankan perintah berikut:
gcloud ai-platform versions create VERSION_NAME \
--region=REGION \
--model=MODEL_NAME \
--framework=FRAMEWORK \
--machine-type=MACHINE_TYPE \
--origin=MODEL_DIRECTORY \
--python-version=3.7 \
--runtime-version=2.11
Dalam perintah, ganti placeholder berikut:
- REGION: Region endpoint yang Anda gunakan di bagian sebelumnya.
- VERSION_NAME: Nama yang Anda pilih untuk versi.
- MODEL_NAME: Nama model yang Anda buat di bagian sebelumnya.
- FRAMEWORK: Framework yang digunakan untuk membuat artefak model Anda.
- MACHINE_TYPE: Jenis mesin Compute Engine (N1).
- MODEL_DIRECTORY: Cloud Storage URI ke direktori model Anda (dimulai dengan "gs://").
Python
Jalankan kode Python berikut:
from google.api_core.client_options import ClientOptions
from googleapiclient import discovery
endpoint = 'https://REGION-ml.googleapis.com'
client_options = ClientOptions(api_endpoint=endpoint)
ml = discovery.build('ml', 'v1', client_options=client_options)
request_body = { 'name': 'VERSION_NAME',
'deploymentUri': 'MODEL_DIRECTORY',
'runtimeVersion': '2.11',
'machineType': 'MACHINE_TYPE',
'framework': 'FRAMEWORK',
'pythonVersion': '3.7'}
request = ml.projects().models().versions().create(
parent='projects/PROJECT_ID/models/MODEL_NAME',
body=request_body)
response = request.execute()
print(response)
Dalam kode, ganti placeholder berikut:
- REGION: Region endpoint yang Anda gunakan di bagian sebelumnya.
- VERSION_NAME: Nama yang Anda pilih untuk versi.
- MODEL_DIRECTORY: Cloud Storage URI ke direktori model Anda (dimulai dengan "gs://").
- MACHINE_TYPE: Jenis mesin Compute Engine (N1).
- FRAMEWORK: Framework yang digunakan untuk membuat artefak model Anda.
- PROJECT_ID: ID project Google Cloud Anda.
- MODEL_NAME: Nama model yang Anda buat di bagian sebelumnya.
Pelajari lebih lanjut cara membuat versi model.
Mengirim permintaan prediksi online
Konsol Google Cloud
Di konsol Google Cloud, buka halaman Models:
Di menu drop-down Region, pilih region endpoint yang digunakan oleh model Anda. Klik nama model yang Anda buat di bagian sebelumnya untuk membuka halaman Model Details.
Klik nama versi yang Anda buat di bagian sebelumnya untuk membuka halaman Detail Versi.
Klik tab Pengujian & penggunaan. Masukkan satu atau beberapa instance data input, lalu klik tombol Uji untuk mengirim permintaan prediksi online.
gcloud
Contoh ini mengasumsikan bahwa Anda telah menyimpan input prediksi dalam file JSON yang dibatasi baris baru di lingkungan lokal. Jalankan perintah berikut:
gcloud ai-platform predict \
--region=REGION \
--model=MODEL_NAME \
--version=VERSION_NAME \
--json-request=INPUT_PATH
Dalam perintah, ganti placeholder berikut:
- REGION: Region endpoint yang Anda gunakan di bagian sebelumnya.
- MODEL_NAME: Nama model yang Anda buat di bagian sebelumnya.
- VERSION_NAME: Nama versi model yang Anda buat di bagian sebelumnya.
- INPUT_PATH: Jalur di sistem file lokal Anda ke file JSON dengan input prediksi.
Python
Jalankan kode Python berikut:
from google.api_core.client_options import ClientOptions
from googleapiclient import discovery
endpoint = 'https://REGION-ml.googleapis.com'
client_options = ClientOptions(api_endpoint=endpoint)
ml = discovery.build('ml', 'v1', client_options=client_options)
request_body = { 'instances': INSTANCES }
request = ml.projects().predict(
name='projects/PROJECT_ID/models/MODEL_NAME/VERSION_NAME',
body=request_body)
response = request.execute()
print(response)
Dalam kode, ganti placeholder berikut:
- REGION: Region endpoint yang Anda gunakan di bagian sebelumnya.
- INSTANCES: Daftar instance input prediksi.
- MODEL_NAME: Nama model yang Anda buat di bagian sebelumnya.
- VERSION_NAME: Nama versi yang Anda buat di bagian sebelumnya.
Pelajari lebih lanjut cara mendapatkan prediksi online.
Langkah selanjutnya
- Lihat perbedaan ketersediaan regional untuk endpoint regional dan endpoint global. Hal ini mencakup perbedaan ketersediaan GPU.
- Pelajari lebih lanjut jenis mesin Compute Engine (N1), yang diperlukan untuk endpoint regional.
- Baca opsi tambahan lainnya yang dapat Anda konfigurasi saat membuat model dan versi.