Setelah cluster di-deploy, Anda dapat mengubah atau menghapusnya menggunakan endpoint API Agent Platform berikut:
Update: Mengubah konfigurasi cluster yang ada.Delete: Menghapus cluster dan resource-nya secara permanen.
Memperbarui cluster hanya tersedia melalui Agent Platform API. Anda dapat menghapus cluster dari Agent Platform API atau konsol Google Cloud .
Untuk mengetahui petunjuk tentang cara mencantumkan semua cluster atau melihat masing-masing cluster, lihat Melihat cluster.
Autentikasi
alias gcurl='curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json"'
Mengupdate cluster
UPDATE_PAYLOAD menentukan jalur lokal ke file JSON yang menentukan ModelDevelopmentCluster lengkap yang ingin Anda perbarui.
Misalnya, untuk mengupdate jumlah node dari pool cluster khusus CPU, gunakan payload JSON berikut:
{ "display_name": "DISPLAY_NAME", "network": { "network": "projects/PROJECT_ID/global/networks/NETWORK", "subnetwork": "projects/PROJECT_ID/regions/REGION/subnetworks/SUBNETWORK" }, "node_pools": [ { "id": "cpu", "machine_spec": { "machine_type": "n2-standard-8" }, "scaling_spec": { "min_node_count": UPDATED_MIN_NODE_COUNT, "max_node_count": UPDATED_MAX_NODE_COUNT }, "zone": "ZONE", "enable_public_ips": true, "boot_disk": { "boot_disk_type": "pd-standard", "boot_disk_size_gb": 120 } }, { "id": "login", "machine_spec": { "machine_type": "n2-standard-8" }, "scaling_spec": { "min_node_count": 1, "max_node_count": 1 }, "zone": "ZONE", "enable_public_ips": true, "boot_disk": { "boot_disk_type": "pd-standard", "boot_disk_size_gb": 120 } } ], "orchestrator_spec": { "slurm_spec": { "home_directory_storage": "projects/PROJECT_ID/locations/ZONE/instances/FILESTORE", "partitions": [ { "id": "cpu", "node_pool_ids": [ "cpu" ] } ], "login_node_pool_id": "login" } } }
gcurl -X PATCH -d @UPDATE_PAYLOAD https://REGION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/modelDevelopmentClusters/CLUSTER_ID
-
updateMask(string, opsional): FieldMask yang menentukan kolom resource cluster Model Development yang akan diperbarui. Hanya kolom yang tercantum dalamupdateMaskyang diubah.Kolom berikut dalam resource
ModelDevelopmentClusterdapat ditentukan dalamupdateMask:labelsnode_poolsorchestrator_spec.slurm_spec.partitionsorchestrator_spec.slurm_spec.default_partition_idorchestrator_spec.slurm_spec.login_node_pool_idorchestrator_spec.slurm_spec.prolog_bash_scriptsorchestrator_spec.slurm_spec.epilog_bash_scriptsorchestrator_spec.slurm_spec.configorchestrator_spec.slurm_spec.schedulingdanorchestrator_spec.slurm_spec.accounting: kolom lama yang digantikan olehconfig. Cluster menggunakan salah satu dari keduanya. Lihat Memperbarui setelan konfigurasi Slurm.orchestrator_spec.slurm_spec.node_sets
-
updateMode(enum, opsional): Menentukan mode update. Nilainya dapat berupa:UPDATE_MODE_UNSPECIFIED: Nilai default, diperlakukan sebagaiUSER_AND_SERVICE.USER_ONLY: Hanya menerapkan perubahan kolom yang ditentukan pengguna dari permintaan. Layanan ini tidak akan memperbarui kolom yang dikelola layanan, seperti skrip startup, prolog, atau epilog. Setiap node pool juga tetap menggunakan image yang sedang berjalan, kecuali jika Anda menetapkannode_imagesendiri, sehingga updateUSER_ONLYyang menghilangkannode_imagetidak akan membuat ulang node Anda.USER_AND_SERVICE: Menerapkan perubahan kolom yang ditentukan pengguna dan mengizinkan layanan memperbarui kolom yang dikelola layanan.
USER_AND_SERVICEuntuk memastikan cluster Anda sudah yang terbaru.
Perintah di bawah ini mengupdate konfigurasi node pool dan partisi Slurm.
gcurl -X PATCH -d @update-payload.json \ 'https://REGION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/modelDevelopmentClusters/CLUSTER_ID?updateMask=orchestrator_spec.slurm_spec.partitions,node_pools&updateMode=USER_AND_SERVICE'
Untuk kolom berulang, seperti node_pools, prolog_bash_scripts, dan
epilog_bash_scripts, API hanya mendukung operasi penggantian penuh. Pengguna
harus memberikan seluruh daftar item yang diharapkan dalam payload permintaan untuk mengganti daftar yang ada
sepenuhnya.
Untuk mengubah partisi default tanpa mengirim ulang partitions, tetapkan
default_partition_id dan tentukan hanya
orchestrator_spec.slurm_spec.default_partition_id di updateMask. Pembaruan yang menghapus atau mengganti nama partisi yang ditentukan default_partition_id akan ditolak.
Anda dapat mengubah konfigurasi Slurm pada cluster yang sedang berjalan. Menerapkan setelan ini tidak akan memulai ulang atau mengosongkan node apa pun: layanan akan membuat ulang slurm.conf dan memuat ulang pengontrol Slurm, sehingga tugas yang diantrekan dan berjalan tidak akan terpengaruh.
USER_ONLY.
Setelan baru mungkin memerlukan waktu beberapa saat untuk muncul di scontrol show config setelah
operasi selesai.
Setelan cakupan cluster diberi nama oleh orchestrator_spec.slurm_spec.config, setelan node pool oleh orchestrator_spec.slurm_spec.node_sets, dan setelan partisi oleh orchestrator_spec.slurm_spec.partitions, yang membawa config setiap partisi beserta keanggotaannya. Setiap peta diganti secara penuh, dengan cara yang sama seperti kolom berulang yang dijelaskan sebelumnya. Kirim kumpulan parameter lengkap yang Anda inginkan; parameter yang Anda hapus akan dihapus. Untuk menghapus peta, beri nama jalurnya di updateMask dan kirimkan dalam keadaan kosong.
Perintah di bawah mengaktifkan preemption prioritas partisi untuk cluster yang ada.
gcurl -X PATCH -d @update-payload.json \ 'https://REGION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/modelDevelopmentClusters/CLUSTER_ID?updateMask=orchestrator_spec.slurm_spec.config&updateMode=USER_ONLY'
Dengan update-payload.json berisi, sebagian:
{ ..., "orchestrator_spec": { "slurm_spec": { ..., "config": { "PriorityType": "priority/multifactor", "PriorityWeightAge": "1000", "PreemptType": "preempt/partition_prio", "PreemptMode": "REQUEUE", "PreemptExemptTime": "1:01", "SchedulerParameters": "bf_continue,bf_window=1440" } } } }
Tetapkan parameter seluruh cluster di config, bukan di scheduling dan accounting, yang digantikannya. Cluster menggunakan salah satunya; permintaan yang menetapkan keduanya akan ditolak.
Jika Anda memanggil PATCH tanpa updateMask, layanan akan membedakan seluruh payload Anda dengan cluster saat ini, sehingga payload yang menghilangkan setelan ini akan menghapus apa pun yang sudah dimiliki cluster. Teruskan updateMask untuk mencakup update ke kolom yang ingin Anda ubah. Kolom yang Anda beri nama, tetapi tidak disertakan dalam payload, akan dihapus.
Untuk memindahkan cluster yang ada dari scheduling dan accounting ke
config, kirim setiap setelan di config menggunakan nama slurm.conf-nya, misalnya AccountingStorageEnforce atau PriorityWeightQOS, hapus
scheduling dan accounting dari payload, dan beri nama ketiganya di
updateMask sehingga kolom yang lebih lama dihapus. Setelah itu, updateMask sebesar
orchestrator_spec.slurm_spec.config saja sudah cukup.
Karena node_pools diganti sepenuhnya, node pool dalam payload update Anda yang
menghilangkan node_image akan di-resolve ke image default saat ini untuk jenis mesinnya. Default tersebut akan berubah seiring waktu, sehingga menghilangkan node_image akan memindahkan node pool ke image terbaru yang tersedia, yang sering kali sesuai dengan keinginan Anda: image tersebut akan mengambil driver, keamanan, dan perbaikan bug.
Agar node pool tetap berada di image tertentu di seluruh update, tetapkan node_image ke image tersebut (misalnya, projects/IMAGE_PROJECT/global/images/IMAGE). Jika Anda membaca nilai saat ini dari Get untuk mengirimkannya kembali, perhatikan bahwa cluster yang belum pernah diupdate akan melaporkan node_image kosong, kecuali jika node_image ditetapkan saat cluster dibuat.
Permintaan yang berhasil akan menampilkan Operasi yang Berjalan Lama (LRO). Anda kemudian dapat memantau status operasi ini menggunakan perintah berikut:
gcurl https://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/operations/OPERATION_ID
Menghapus cluster
gcurl -X DELETE https://REGION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/modelDevelopmentClusters/CLUSTER_ID
Perintah ini menampilkan Operasi yang Berjalan Lama jika berhasil, yang kemudian dapat Anda pantau menggunakan perintah operations describe.
gcurl https://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/operations/OPERATION_ID
Langkah berikutnya
Dengan mengelola cluster pelatihan Gemini Enterprise Agent Platform, Anda dapat mengoptimalkan penggunaannya, mengintegrasikannya ke dalam alur kerja otomatis, dan menyiapkan model terlatih untuk deployment.
- Atur pelatihan Anda dengan Gemini Enterprise Agent Platform Pipelines: Otomatiskan seluruh siklus proses tugas pelatihan Anda, mulai dari persiapan data hingga pendaftaran model, menggunakan pipeline yang menargetkan cluster terkelola Anda.
- Memantau dan men-debug tugas pelatihan Anda: Lacak progres dan penggunaan resource, serta identifikasi masalah pada tugas pelatihan terdistribusi yang berjalan di cluster.
- Deploy model Anda untuk inferensi: Setelah model dilatih dan didaftarkan, deploy model tersebut ke endpoint Gemini Enterprise Agent Platform untuk menyajikan permintaan inferensi online dalam skala besar.
- Mengoptimalkan biaya: Tinjau pemanfaatan cluster Anda secara rutin dan hapus cluster saat tidak digunakan secara aktif untuk meminimalkan penagihan untuk hardware yang direservasi.