Saat Anda membuat resource persisten, layanan pelatihan terlebih dahulu akan menemukan resource dari kumpulan resource Compute Engine berdasarkan spesifikasi yang Anda berikan, lalu menyediakan cluster yang berjalan lama untuk Anda. Halaman ini menunjukkan cara membuat resource persisten untuk menjalankan tugas pelatihan kustom Anda menggunakan Konsol Google Cloud, Google Cloud CLI, Vertex AI SDK untuk Python, dan REST API.
Peran yang diperlukan
Untuk mendapatkan izin yang diperlukan untuk membuat resource persisten,
minta administrator untuk memberi Anda peran IAM
Vertex AI Administrator (roles/aiplatform.admin
) di project Anda.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses.
Peran yang telah ditentukan ini berisi izin
aiplatform.persistentResources.create
, yang
diperlukan untuk membuat resource persisten.
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Membuat resource yang persisten
Pilih salah satu tab berikut ini untuk mengetahui petunjuk cara membuat resource persisten.
Konsol
Untuk membuat resource persisten menggunakan Konsol Google Cloud, lakukan langkah berikut:
Di konsol Google Cloud, buka halaman Persistent resources.
Klik Buat kluster.
Konfigurasikan cluster sebagai berikut:
- Nama: Masukkan nama untuk cluster.
- Deskripsi: (Opsional) Masukkan deskripsi cluster.
- Region: Pilih region tempat Anda ingin membuat cluster.
Klik Lanjutkan.
Konfigurasikan resource komputasi untuk cluster sebagai berikut:
- Klik Worker pool 1.
Pilih tab dari kelompok mesin yang ingin Anda gunakan dan konfigurasikan kumpulan pekerja sebagai berikut:
Tujuan umum
VM tujuan umum menawarkan rasio harga-performa terbaik untuk berbagai workload.
- Seri: Pilih seri mesin.
- Machine type: Pilih jenis mesin.
- Disk type: Pilih Standard disk atau SSD disk.
- Disk size: Masukkan ukuran disk yang diinginkan.
- Jumlah replika minimum: Masukkan jumlah minimum replika yang harus dimiliki dalam kumpulan pekerja.
- Jumlah replika maksimum: (Opsional) Masukkan jumlah maksimum replika yang diizinkan dalam kumpulan pekerja. Jika ditentukan, kumpulan pekerja akan secara otomatis menskalakan jumlah replika hingga jumlah replika maksimum yang dikonfigurasi sesuai kebutuhan.
Dioptimalkan untuk komputasi
VM yang dioptimalkan untuk komputasi menawarkan performa tertinggi per inti dan dioptimalkan untuk workload yang intensif komputasi.
- Seri: Pilih seri mesin.
- Machine type: Pilih jenis mesin.
- Disk type: Pilih Standard disk atau SSD disk.
- Disk size: Masukkan ukuran disk yang diinginkan.
- Jumlah replika minimum: Masukkan jumlah minimum replika yang harus dimiliki dalam kumpulan pekerja.
- Jumlah replika maksimum: (Opsional) Masukkan jumlah maksimum replika yang diizinkan dalam kumpulan pekerja. Jika ditentukan, kumpulan pekerja akan secara otomatis menskalakan jumlah replika hingga jumlah replika maksimum yang dikonfigurasi sesuai kebutuhan.
Dioptimalkan untuk memori
VM yang dioptimalkan untuk memori ideal untuk workload intensif memori, yang menawarkan lebih banyak memori per inti daripada kelompok mesin lainnya, dengan memori hingga 12 TB.
- Seri: Pilih seri mesin.
- Machine type: Pilih jenis mesin.
- Disk type: Pilih Standard disk atau SSD disk.
- Disk size: Masukkan ukuran disk yang diinginkan.
- Jumlah replika minimum: Masukkan jumlah minimum replika yang harus dimiliki dalam kumpulan pekerja.
- Jumlah replika maksimum: (Opsional) Masukkan jumlah maksimum replika yang diizinkan dalam kumpulan pekerja. Jika ditentukan, kumpulan pekerja akan secara otomatis menskalakan jumlah replika hingga jumlah replika maksimum yang dikonfigurasi sesuai kebutuhan.
GPU
VM yang dioptimalkan akselerator ini ideal untuk workload komputasi Compute Unified Device Architecture (CUDA) yang diparalelkan secara masif, seperti machine learning (ML) dan komputasi berperforma tinggi (HPC). Kelompok ini adalah opsi terbaik untuk beban kerja yang memerlukan GPU.
- GPU type: Pilih jenis GPU yang ingin Anda gunakan.
- Jumlah GPU: Masukkan jumlah GPU yang ingin Anda gunakan.
- Seri: Pilih seri mesin.
- Machine type: Pilih jenis mesin.
- Disk type: Pilih Standard disk atau SSD disk.
- Disk size: Masukkan ukuran disk yang diinginkan.
- Jumlah replika minimum: Masukkan jumlah minimum replika yang harus dimiliki dalam kumpulan pekerja.
- Jumlah replika maksimum: (Opsional) Masukkan jumlah maksimum replika yang diizinkan dalam kumpulan pekerja. Jika ditentukan, kumpulan pekerja akan secara otomatis menskalakan jumlah replika hingga jumlah replika maksimum yang dikonfigurasi sesuai kebutuhan.
Klik Done.
(Opsional) Untuk menambahkan kumpulan pekerja tambahan, klik Add worker pool.
Klik Create.
gcloud
Resource persisten dapat memiliki satu atau beberapa kumpulan resource. Untuk membuat beberapa
kumpulan resource dalam resource persisten, tentukan beberapa
flag --resource-pool-spec
.
Setiap kumpulan resource dapat mengaktifkan atau menonaktifkan penskalaan otomatis. Untuk mengaktifkan
penskalaan otomatis, tentukan min_replica_count
dan
max_replica_count
.
Anda dapat menetapkan semua konfigurasi kumpulan resource sebagai bagian dari command line,
atau menggunakan flag --config
untuk menentukan jalur ke file YAML yang
berisi konfigurasi tersebut.
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut ini:
- PROJECT_ID: Project ID dari project Google Cloud tempat Anda ingin membuat resource persisten.
- LOCATION: Region tempat Anda ingin membuat resource persisten. Untuk mengetahui daftar wilayah yang didukung, lihat Ketersediaan fitur.
- PERSISTENT_RESOURCE_ID: ID resource persisten.
- DISPLAY_NAME: (Opsional) Nama tampilan resource persisten.
- MACHINE_TYPE: Jenis VM yang akan digunakan. Untuk daftar
VM yang didukung, lihat Jenis mesin.
Kolom ini sesuai dengan kolom
machineSpec.machineType
di dalam pesan APIResourcePool
. - ACCELERATOR_TYPE: (Opsional) Jenis GPU yang akan dipasang
ke setiap VM di dalam kumpulan resource. Untuk daftar GPU yang didukung, lihat
GPU. Kolom ini sesuai dengan
kolom
machineSpec.acceleratorType
di alam pesan APIResourcePool
. - ACCELERATOR_COUNT: (Opsional) Jumlah GPU yang akan
ditambahkan ke setiap VM di dalam kumpulan resource. Nilai default-nya adalah
1
. Kolom ini berkaitan dengan kolommachineSpec.acceleratorCount
di dalam pesan APIResourcePool
. - REPLICA_COUNT: Jumlah replika yang akan dibuat saat membuat
kumpulan resource ini. Kolom ini sesuai dengan kolom
replicaCount
di dalam pesan APIResourcePool
. Kolom ini wajib diisi jika Anda tidak menentukan MIN_REPLICA_COUNT dan MAX_REPLICA_COUNT. - MIN_REPLICA_COUNT: (Opsional) Jumlah minimum replika yang dapat diperkecil skalanya secara otomatis untuk kumpulan resource ini. MIN_REPLICA_COUNT dan MAX_REPLICA_COUNT diperlukan untuk mengaktifkan penskalaan otomatis pada kumpulan resource ini.
- MAX_REPLICA_COUNT: (Opsional) Jumlah maksimum replika yang dapat diperkecil skalanya secara otomatis untuk kumpulan resource ini. MIN_REPLICA_COUNT dan MAX_REPLICA_COUNT diperlukan untuk mengaktifkan penskalaan otomatis pada kumpulan resource ini.
- BOOT_DISK_TYPE: (Opsional) Jenis disk yang akan digunakan
sebagai boot disk dari setiap VM di dalam kumpulan resource. Kolom ini sesuai dengan
kolom
diskSpec.bootDiskType
di dalam pesan APIResourcePool
. Nilai yang dapat diterima mencakup hal berikut ini:pd-standard
(default)pd-ssd
- BOOT_DISK_SIZE_GB: (Opsional) Ukuran disk di dalam GiB untuk
boot disk setiap VM di dalam kumpulan resource. Nilai yang dapat diterima adalah
100
(default) hingga64000
. Kolom ini sesuai dengan kolomdiskSpec.bootDiskSizeGb
di dalam pesan APIResourcePool
. - CONFIG: Jalur ke file konfigurasi YAML
resource persisten. File ini harus berisi daftar ResourcePool. Jika sebuah opsi telah ditentukan
di dalam file konfigurasi dan argumen command line, argumen command line
akan menggantikan file konfigurasi tersebut. Perhatikan bahwa kunci dengan garis bawah tidak valid.
Contoh file konfigurasi YAML:
resourcePoolSpecs: machineSpec: machineType: n1-standard-4 replicaCount: 1
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud ai persistent-resources create \ --persistent-resource-id=PERSISTENT_RESOURCE_ID \ --display-name=DISPLAY_NAME \ --project=PROJECT_ID \ --region=LOCATION \ --resource-pool-spec="replica-count=REPLICA_COUNT,min-replica-count=MIN_REPLICA_COUNT,max-replica-count=MAX_REPLICA_COUNT,machine-type=MACHINE_TYPE,accelerator-type=ACCELERATOR_TYPE,accelerator-count=ACCELERATOR_COUNT,disk-type=BOOT_DISK_TYPE,disk-size=BOOT_DISK_SIZE_GB"
Windows (PowerShell)
gcloud ai persistent-resources create ` --persistent-resource-id=PERSISTENT_RESOURCE_ID ` --display-name=DISPLAY_NAME ` --project=PROJECT_ID ` --region=LOCATION ` --resource-pool-spec="replica-count=REPLICA_COUNT,min-replica-count=MIN_REPLICA_COUNT,max-replica-count=MAX_REPLICA_COUNT,machine-type=MACHINE_TYPE,accelerator-type=ACCELERATOR_TYPE,accelerator-count=ACCELERATOR_COUNT,disk-type=BOOT_DISK_TYPE,disk-size=BOOT_DISK_SIZE_GB"
Windows (cmd.exe)
gcloud ai persistent-resources create ^ --persistent-resource-id=PERSISTENT_RESOURCE_ID ^ --display-name=DISPLAY_NAME ^ --project=PROJECT_ID ^ --region=LOCATION ^ --resource-pool-spec="replica-count=REPLICA_COUNT,min-replica-count=MIN_REPLICA_COUNT,max-replica-count=MAX_REPLICA_COUNT,machine-type=MACHINE_TYPE,accelerator-type=ACCELERATOR_TYPE,accelerator-count=ACCELERATOR_COUNT,disk-type=BOOT_DISK_TYPE,disk-size=BOOT_DISK_SIZE_GB"
Anda akan melihat respons seperti berikut:
Using endpoint [https://us-central1-aiplatform.googleapis.com/] Operation to create PersistentResource [projects/123456789012/locations/us-central1/persistentResources/mypersistentresource/operations/1234567890123456789] is submitted successfully. You may view the status of your PersistentResource create operation with the command $ gcloud ai operations describe projects/sample-project/locations/us-central1/operations/1234567890123456789
Contoh perintah gcloud
:
gcloud ai persistent-resources create \ --persistent-resource-id=my-persistent-resource \ --region=us-central1 \ --resource-pool-spec="min-replica-count=4,max-replica-count=12,machine-type=n1-highmem-2,accelerator-type=NVIDIA_TESLA_K80,accelerator-count=1,disk-type=pd-standard,disk-size=200" \ --resource-pool-spec="replica-count=4,machine-type=n1-standard-4"
Konfigurasi gcloud
lanjutan
Jika ingin menentukan opsi konfigurasi yang tidak tersedia di
contoh sebelumnya, Anda dapat menggunakan flag --config
untuk menentukan jalur ke file
config.yaml
di dalam lingkungan lokal Anda, yang berisi kolom dari
persistentResources
. Contoh:
gcloud ai persistent-resources create \ --persistent-resource-id=PERSISTENT_RESOURCE_ID \ --project=PROJECT_ID \ --region=LOCATION \ --config=CONFIG
Python
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di Panduan memulai Vertex AI menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Python Vertex AI.
Untuk melakukan autentikasi ke Vertex AI, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
# Create the persistent resource. This method returns the created resource. # Setting `sync` to `FALSE` makes the method is non-blocking and the resource # object returned syncs when the method completes. my_example_resource = persistent_resource.PersistentResource.create( persistent_resource_id=EXAMPLE_PERSISTENT_RESOURCE_ID, display_name=EXAMPLE_PERSISTENT_RESOURCE_NAME, resource_pools=[ EXAMPLE_RESOURCE_POOL # EXAMPLE_AUTOSCALED_RESOURCE_POOL ], labels=EXAMPLE_LABELS, sync=SYNC, ) if not SYNC: my_example_resource.wait()
REST
Resource persisten dapat memiliki satu atau beberapa kumpulan resource
(machine_spec
), dan setiap kumpulan resource dapat memiliki penskalaan otomatis
yang diaktifkan, atau dinonaktifkan.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID dari project Google Cloud tempat Anda ingin membuat resource persisten.
- LOCATION: Region tempat Anda ingin membuat resource persisten. Untuk mengetahui daftar wilayah yang didukung, lihat Ketersediaan fitur.
- PERSISTENT_RESOURCE_ID: ID resource persisten.
- DISPLAY_NAME: (Opsional) Nama tampilan resource persisten.
- MACHINE_TYPE: Jenis VM yang akan digunakan. Untuk daftar
VM yang didukung, lihat Jenis mesin.
Kolom ini sesuai dengan kolom
machineSpec.machineType
di dalam pesan APIResourcePool
. - ACCELERATOR_TYPE: (Opsional) Jenis GPU yang akan dipasang
ke setiap VM di dalam kumpulan resource. Untuk daftar GPU yang didukung, lihat
GPU. Kolom ini sesuai dengan
kolom
machineSpec.acceleratorType
di alam pesan APIResourcePool
. - ACCELERATOR_COUNT: (Opsional) Jumlah GPU yang akan
ditambahkan ke setiap VM di dalam kumpulan resource. Nilai default-nya adalah
1
. Kolom ini berkaitan dengan kolommachineSpec.acceleratorCount
di dalam pesan APIResourcePool
. - REPLICA_COUNT: Jumlah replika yang akan dibuat saat membuat
kumpulan resource ini. Kolom ini sesuai dengan kolom
replicaCount
di dalam pesan APIResourcePool
. Kolom ini wajib diisi jika Anda tidak menentukan MIN_REPLICA_COUNT dan MAX_REPLICA_COUNT. - MIN_REPLICA_COUNT: (Opsional) Jumlah minimum replika yang dapat diperkecil skalanya secara otomatis untuk kumpulan resource ini. MIN_REPLICA_COUNT dan MAX_REPLICA_COUNT diperlukan untuk mengaktifkan penskalaan otomatis pada kumpulan resource ini.
- MAX_REPLICA_COUNT: (Opsional) Jumlah maksimum replika yang dapat diperkecil skalanya secara otomatis untuk kumpulan resource ini. MIN_REPLICA_COUNT dan MAX_REPLICA_COUNT diperlukan untuk mengaktifkan penskalaan otomatis pada kumpulan resource ini.
- BOOT_DISK_TYPE: (Opsional) Jenis disk yang akan digunakan
sebagai boot disk dari setiap VM di dalam kumpulan resource. Kolom ini sesuai dengan
kolom
diskSpec.bootDiskType
di dalam pesan APIResourcePool
. Nilai yang dapat diterima mencakup hal berikut ini:pd-standard
(default)pd-ssd
- BOOT_DISK_SIZE_GB: (Opsional) Ukuran disk di dalam GiB untuk
boot disk setiap VM di dalam kumpulan resource. Nilai yang dapat diterima adalah
100
(default) hingga64000
. Kolom ini sesuai dengan kolomdiskSpec.bootDiskSizeGb
di dalam pesan APIResourcePool
.
Metode HTTP dan URL:
POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/persistentResources?persistent_resource_id=PERSISTENT_RESOURCE_ID
Meminta isi JSON:
{ "display_name": "DISPLAY_NAME", "resource_pools": [ { "machine_spec": { "machine_type": "MACHINE_TYPE", "accelerator_type": "ACCELERATOR_TYPE", "accelerator_count": ACCELERATOR_COUNT }, "replica_count": REPLICA_COUNT, "autoscaling_spec": { "min_replica_count": MIN_REPLICA_COUNT, "max_replica_count": MAX_REPLICA_COUNT }, "disk_spec": { "boot_disk_type": "BOOT_DISK_TYPE", "boot_disk_size_gb": BOOT_DISK_SIZE_GB } } ] }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan melihat respons JSON seperti berikut:
{ "name": "projects/123456789012/locations/us-central1/persistentResources/mypersistentresource/operations/1234567890123456789", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreatePersistentResourceOperationMetadata", "genericMetadata": { "createTime": "2023-02-08T21:17:15.009668Z", "updateTime": "2023-02-08T21:17:15.009668Z" } } }
Kehabisan sumber daya
Kemungkinan ada kehabisan stok untuk resource yang langka seperti GPU A100, yang dapat menyebabkan kegagalan pembuatan resource persisten jika tidak ada resource yang tersedia di dalam region yang telah Anda tentukan. Dalam hal ini, Anda dapat mencoba mengurangi jumlah replika, mengubahnya ke jenis akselerator yang berbeda, mencoba lagi di luar jam sibuk, atau mencoba region lain.
Langkah selanjutnya
- Menjalankan tugas pelatihan pada resource persisten.
- Mempelajari resource persisten.
- Mendapatkan informasi tentang resource persisten.
- Mulai ulang resource persisten.
- Menghapus resource persisten.