Pour certains appels d'API, Vertex AI renvoie les noms des opérations. Ces appels d'API effectuent des opérations de démarrage qui prennent du temps et sont appelées opérations de longue durée. Par exemple, la création d'un ensemble de données, la suppression d'un point de terminaison ou l'exportation d'un modèle sont des opérations de longue durée. Vous pouvez utiliser des méthodes d'assistance avec un nom d'opération pour obtenir l'état d'une opération de longue durée ou l'annuler, comme décrit dans les sections suivantes.
Obtenir l'état d'une opération
Pour connaître l'état de l'opération, utilisez le nom d'opération qui figure dans la réponse obtenue lorsque vous avez démarré l'opération de longue durée. Par exemple, lorsque vous créez un ensemble de données, Vertex AI renvoie un nom d'opération tel que:
projects/PROJECT_NUMBER/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID
Vous pouvez interroger l'opération à intervalles réguliers afin de savoir quand elle est terminée.
REST
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- OPERATION_NAME : nom d'opération renvoyé lorsque vous démarrez une opération de longue durée, par exemple
projects/PROJECT_NUMBER/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID
.
Méthode HTTP et URL :
GET https://LOCATION-aiplatform.googleapis.com/v1/OPERATION_NAME
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Exécutez la commande suivante :
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/OPERATION_NAME"
PowerShell
Exécutez la commande suivante :
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/OPERATION_NAME" | Select-Object -Expand Content
Dans le résultat, l'objet metadata
contient des informations spécifiques au type de requête. Le champ done
indique si l'opération est terminée. Si l'opération est terminée, l'objet response
contient les résultats de l'opération.
{ "name": "projects/123456789012/locations/us-central1/datasets/1234567890123456789/operations/1223344556677889900", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateDatasetOperationMetadata", "genericMetadata": { "createTime": "2020-10-12T16:00:44.686500Z", "updateTime": "2020-10-12T16:01:06.115081Z" } }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.Dataset", "name": "projects/123456789012/locations/us-central1/datasets/1234567890123456789", "displayName": "image_dataset", "metadataSchemaUri": "gs://google-cloud-aiplatform/schema/dataset/metadata/image_1.0.0.yaml", "labels": { "aiplatform.googleapis.com/dataset_metadata_schema": "IMAGE" }, "metadata": { "dataItemSchemaUri": "gs://google-cloud-aiplatform/schema/dataset/dataitem/image_1.0.0.yaml" } } }
Annuler une opération
Vous pouvez annuler une opération de longue durée si vous souhaitez l'arrêter avant qu'elle ne se termine. Lorsque vous annulez une opération, elle n'est pas supprimée. Au lieu de cela, l'opération s'arrête avec le code d'erreur 1
et le message CANCELLED
. Notez qu'il n'est pas garanti que l'annulation fonctionne.
REST
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- OPERATION_NAME : nom d'opération renvoyé lorsque vous démarrez une opération de longue durée, par exemple
projects/PROJECT_NUMBER/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID
.
Méthode HTTP et URL :
POST https://LOCATION-aiplatform.googleapis.com/v1/OPERATION_NAME:cancel
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Exécutez la commande suivante :
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://LOCATION-aiplatform.googleapis.com/v1/OPERATION_NAME:cancel"
PowerShell
Exécutez la commande suivante :
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/OPERATION_NAME:cancel" | Select-Object -Expand Content
Vous devriez recevoir un code d'état indiquant le succès de l'opération (2xx), ainsi qu'une réponse vide.