Una vez que se implementa un clúster, puedes administrar todo su ciclo de vida con los siguientes extremos de la API de REST.
List: Visualiza todos los clústeres activos de tu proyecto.Get: Recupera información detallada sobre un clúster específico.Update: Modifica la configuración de un clúster existente.Delete: Borra de forma permanente un clúster y sus recursos.
Autenticación
alias gcurl='curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json"'
Enumera los clústeres:
gcurl -X GET https://REGION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/modelDevelopmentClusters
El método list admite los siguientes parámetros de consulta opcionales para controlar la paginación.
pageSize(número entero, opcional): Es la cantidad máxima de clústeres que se devolverán en la respuesta. El servicio puede devolver menos que este valor, incluso si existen más elementos. Si no se especifica, se usará un tamaño de página predeterminado.pageToken (string, optional): Es un token que se recibió de una llamada a lista anterior. Proporciona este token para recuperar la página siguiente de resultados.
gcurl "https://REGION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/modelDevelopmentClusters?pageSize=5"
nextPageToken.
Obtén un clúster:
gcurl -X GET https://REGION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/modelDevelopmentClusters/CLUSTER_ID
Actualiza un clúster:
UPDATE_PAYLOAD especifica la ruta de acceso local a un archivo JSON que define el ModelDevelopmentCluster completo al que deseas actualizar.
Por ejemplo, para actualizar la cantidad de nodos de un grupo de un clúster solo de CPU, usa la siguiente carga útil de JSON:
{ "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(cadena, opcional): Un objeto FieldMask que especifica qué campos del recurso del clúster de desarrollo del modelo se deben actualizar. Solo se cambian los campos que se enumeran enupdateMask.Se pueden especificar los siguientes campos dentro del recurso
ModelDevelopmentClusteren elupdateMask:node_poolsorchestrator_spec.slurm_spec.partitionsorchestrator_spec.slurm_spec.login_node_pool_idorchestrator_spec.slurm_spec.prolog_bash_scriptsorchestrator_spec.slurm_spec.epilog_bash_scripts
El siguiente comando actualiza la configuración del grupo de nodos y las particiones de 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'
En el caso de los campos repetidos, como node_pools, prolog_bash_scripts y epilog_bash_scripts, la API solo admite una operación de reemplazo completa. El usuario debe proporcionar la lista completa esperada de elementos en la carga útil de la solicitud para reemplazar por completo la lista existente.
Una solicitud correcta devuelve una operación de larga duración (LRO). Luego, puedes supervisar el estado de esta operación con el siguiente comando:
gcurl https://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/operations/OPERATION_ID
Borra un clúster:
gcurl -X DELETE https://REGION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/modelDevelopmentClusters/CLUSTER_ID
Si se ejecuta correctamente, este comando devuelve una operación de larga duración que puedes supervisar con el comando operations describe.
gcurl https://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/operations/OPERATION_ID
¿Qué sigue?
Administrar tu clúster de entrenamiento de Vertex AI te permite optimizar su uso, integrarlo en flujos de trabajo automatizados y preparar tus modelos entrenados para la implementación.
- Organiza tu entrenamiento con las canalizaciones de la plataforma de agentes de Gemini Enterprise: Automatiza todo el ciclo de vida de tus trabajos de entrenamiento, desde la preparación de datos hasta el registro de modelos, con canalizaciones que se dirigen a tu clúster administrado.
- Supervisa y depura tus trabajos de entrenamiento: Realiza un seguimiento del progreso y el uso de recursos, e identifica problemas con tus trabajos de entrenamiento distribuidos que se ejecutan en el clúster.
- Implementa tu modelo para la inferencia: Después de entrenar y registrar tus modelos, impleméntalos en un extremo de Vertex AI para atender solicitudes de inferencia en línea a gran escala.
- Optimiza los costos: Revisa periódicamente la utilización del clúster y bórralo cuando no esté en uso activo para minimizar la facturación del hardware reservado.