Gérer les versions d'un ensemble de données

Vertex AI vous permet de créer des versions pour un ensemble de données. Cette fonctionnalité peut être utile pour la reproductibilité, la traçabilité et la gestion de la traçabilité des ensembles de données.

Vous pouvez créer des versions pour les ensembles de données d'images et de texte. Lorsque vous créez une version d'ensemble de données, Vertex AI crée un ensemble de données BigQuery s'il n'en existe pas. L'ensemble de données BigQuery stocke toutes les versions de l'ensemble de données Vertex AI associé.

Lorsque vous restaurez une version, vous remplacez l'ensemble de données associé. L'ensemble de données est temporairement indisponible pour d'autres requêtes jusqu'à la fin de l'opération de restauration.

Créer une version d'ensemble de données

Vous pouvez utiliser l'API Vertex AI pour créer une version d'ensemble de données. Suivez les étapes indiquées dans l'onglet correspondant :

REST

Obtenir l'ID de l'ensemble de données

Pour créer une version, vous devez connaître l'ID numérique de l'ensemble de données. Si vous connaissez le nom à afficher de l'ensemble de données, mais pas son ID, développez la section suivante pour savoir comment obtenir l'ID en utilisant l'API :

Obtenir l'ID d'un Dataset à partir de son nom à afficher

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • LOCATION : emplacement de stockage de Dataset. Exemple :us-central1

  • PROJECT_ID : l'ID de votre projet.

  • DATASET_DISPLAY_NAME : nom à afficher de Dataset.

Méthode HTTP et URL :

GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets?filter=displayName=DATASET_DISPLAY_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 application-default print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets?filter=displayName=DATASET_DISPLAY_NAME"

PowerShell

Exécutez la commande suivante :

$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets?filter=displayName=DATASET_DISPLAY_NAME" | Select-Object -Expand Content

L'exemple de réponse suivant a été tronqué avec ... pour mettre l'accent sur l'emplacement de l'ID du Dataset : il s'agit du numéro qui remplace DATASET_ID.

{
  "datasets": [
    {
      "name": "projects/PROJECT_NUMBER/locations/LOCATION/datasets/DATASET_ID",
      "displayName": "DATASET_DISPLAY_NAME",
      ...
    }
  ]
}

Vous pouvez également obtenir l'ID de l'ensemble de données à partir de la console Google Cloud. Pour ce faire, accédez à la page Ensembles de données de Vertex AI et recherchez le numéro dans la colonne ID.

Accéder à la page Ensembles de données

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • LOCATION : région où la version de l'ensemble de données est stockée. Par exemple, us-central.

  • PROJECT_ID : l'ID de votre projet.

  • DATASET_ID : ID numérique de l'ensemble de données.

Méthode HTTP et URL :

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/datasetVersions

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 application-default print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/datasetVersions"

PowerShell

Exécutez la commande suivante :

$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/datasetVersions" | Select-Object -Expand Content

Vous devriez recevoir une réponse JSON de ce type :

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateDatasetVersionOperationMetadata",
    "genericMetadata": {
      "createTime": "2021-02-17T00:54:58.827429Z",
      "updateTime": "2021-02-17T00:54:58.827429Z"
    },
  }
}

Certaines requêtes démarrent des opérations de longue durée qui nécessitent du temps. Ces requêtes renvoient un nom d'opération, que vous pouvez utiliser pour afficher l'état de l'opération ou pour annuler l'opération. Vertex AI propose des méthodes d'assistance pour appeler les opérations de longue durée. Pour en savoir plus, consultez la section Travailler avec des opérations de longue durée.

Restaurer la version d'un ensemble de données

Vous pouvez utiliser l'API Vertex AI pour restaurer une version d'ensemble de données. Suivez les étapes indiquées dans l'onglet correspondant :

REST

Obtenir l'ID de la version de l'ensemble de données

Pour restaurer une version, vous devez connaître son ID numérique. Vous pouvez répertorier toutes les versions de l'ensemble de données à l'aide de l'API :

Répertorier les DatasetVersion d'un Dataset

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • LOCATION : région où la version de l'ensemble de données est stockée. Par exemple, us-central.

  • PROJECT_ID : l'ID de votre projet.

  • DATASET_ID : ID numérique de l'ensemble de données.

Méthode HTTP et URL :

GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/datasetVersions

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 application-default print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/datasetVersions"

PowerShell

Exécutez la commande suivante :

$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/datasetVersions" | Select-Object -Expand Content

L'exemple de réponse suivant a été tronqué avec ... pour mettre l'accent sur l'emplacement de l'ID de la version de l'ensemble de données : il s'agit du numéro qui remplace DATASET_VERSION_ID.

{
  "datasetVersions": [
    {
      "name": "projects/PROJECT_NUMBER/locations/LOCATION/datasets/DATASET_ID/datasetVersions/DATASET_VERSION_ID",
      ...
    }
  ]
}

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • LOCATION : région où la version de l'ensemble de données est stockée. Par exemple, us-central.

  • PROJECT_ID : l'ID de votre projet.

  • DATASET_ID : ID numérique de l'ensemble de données.

  • DATASET_VERSION_ID : ID numérique de la version de l'ensemble de données.

Méthode HTTP et URL :

GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/datasetVersions/DATASET_VERSION_ID:restore

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 application-default print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/datasetVersions/DATASET_VERSION_ID:restore"

PowerShell

Exécutez la commande suivante :

$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/datasetVersions/DATASET_VERSION_ID:restore" | Select-Object -Expand Content

Vous devriez recevoir une réponse JSON de ce type :

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.aiplatform.v1.RestoreDatasetVersionOperationMetadata",
    "genericMetadata": {
      "createTime": "2021-02-17T00:54:58.827429Z",
      "updateTime": "2021-02-17T00:54:58.827429Z"
    },
  }
}

Certaines requêtes démarrent des opérations de longue durée qui nécessitent du temps. Ces requêtes renvoient un nom d'opération, que vous pouvez utiliser pour afficher l'état de l'opération ou pour annuler l'opération. Vertex AI propose des méthodes d'assistance pour appeler les opérations de longue durée. Pour en savoir plus, consultez la section Travailler avec des opérations de longue durée.

Étapes suivantes

En savoir plus sur l'utilisation d'ensembles de données dans Vertex AI