Créer et gérer des magasins d'annotations

Cette page explique comment créer, libeller, afficher, répertorier et supprimer des datastore d'annotations. Les datastores d'annotations contiennent des enregistrements d'annotations, qui sont des libellés que vous pouvez ajouter aux ressources médicales.

Pour obtenir une présentation des magasins d'annotations et des enregistrements d'annotations, consultez la section Annotations.

Créer un magasin d'annotations

Pour pouvoir créer un magasin d'annotations, vous devez d'abord créer un ensemble de données.

Les exemples suivants montrent comment créer un magasin d'annotations.

gcloudAPI

Pour créer un magasin d'annotations, exécutez la commande gcloud beta healthcare annotation-stores create :

  • L'élément ANNOTATION_STORE_ID doit être unique dans la région. Il peut s'agir de n'importe quelle chaîne Unicode de 1 à 256 caractères composée de chiffres, de lettres, de traits de soulignement, de tirets et de points.
gcloud beta healthcare annotation-stores create ANNOTATION_STORE_ID \
  --dataset=DATASET_ID \
  --location=LOCATION

Si la requête aboutit, l'invite de commande affiche le message suivant :

Created annotationStore [ANNOTATION_STORE_ID].

Pour créer un magasin d'annotations, utilisez la méthode projects.locations.datasets.annotationStores.create.

Pour créer un magasin d'annotations, envoyez une requête POST et spécifiez les informations suivantes :

  • L'ensemble de données parent
  • Un nom pour le magasin d'annotations. L'ID du magasin d'annotations doit être unique dans son ensemble de données parent. Il peut s'agir d'une chaîne Unicode de 1 à 256 caractères composée de chiffres, de lettres, de traits de soulignement, de tirets et de points.
  • Un jeton d'accès

L'exemple suivant montre une requête POST utilisant curl :

curl -X POST \
    --data "" \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    -H "Content-Type: application/json; charset=utf-8" \
    "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores?annotationStoreId=ANNOTATION_STORE_ID"

Si la requête aboutit, le serveur renvoie la réponse au format JSON :

{
  "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID"
}

Pour créer un magasin d'annotations, envoyez une requête POST et spécifiez les informations suivantes :

  • L'ensemble de données parent
  • Un nom pour le magasin d'annotations. L'ID du magasin d'annotations doit être unique dans son ensemble de données parent. Il peut s'agir d'une chaîne Unicode de 1 à 256 caractères composée de chiffres, de lettres, de traits de soulignement, de tirets et de points.
  • Un jeton d'accès

L'exemple suivant montre une requête POST utilisant Windows PowerShell :

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

Invoke-WebRequest `
  -Method Post `
  -Headers $headers `
  -ContentType: "application/json; charset=utf-8" `
  -Uri "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores?annotationStoreId=ANNOTATION_STORE_ID" | Select-Object -Expand Content

Si la requête aboutit, le serveur renvoie la réponse au format JSON :

{
  "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID"
}

Ajouter un libellé à un magasin d'annotations

Vous pouvez ajouter un ou plusieurs libellés clé-valeur à un magasin d'annotations. Un exemple d'utilisation des libellés peut consister à ajouter des libellés et des tags pour les annotations liées à du texte ou des images.

Les exemples suivants montrent comment ajouter des libellés à un magasin d'annotations.

gcloudAPI

gcloud CLI ne permet pas de modifier les libellés de magasin d'annotations. Utilisez plutôt curl, Windows PowerShell ou le langage de votre choix.

Pour ajouter des libellés à un magasin d'annotations, utilisez la commande projects.locations.datasets.annotationStores.patch.

Pour attribuer un libellé à un magasin d'annotations, envoyez une requête PATCH et fournissez les informations suivantes :

  • Nom de l'ensemble de données parent
  • Le nom du magasin d'annotations
  • Les données du libellé à mettre à jour
  • Un masque de mise à jour
  • Un jeton d'accès

L'exemple suivant montre une requête PATCH utilisant curl.

curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    -H "Content-Type: application/json; charset=utf-8" \
    --data "{
      'labels': {
        'KEY': 'VALUE'
      }
    }" \
    "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID?updateMask=labels"

Si la requête aboutit, le serveur renvoie la réponse au format JSON :

{
  "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID",
  "labels": {
    "KEY": "VALUE"
  }
}

Pour attribuer un libellé à un magasin d'annotations, envoyez une requête PATCH et fournissez les informations suivantes :

  • Nom de l'ensemble de données parent
  • Le nom du magasin d'annotations
  • Les données du libellé à mettre à jour
  • Un masque de mise à jour
  • Un jeton d'accès

L'exemple suivant montre une requête PATCH utilisant Windows PowerShell.

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

Invoke-WebRequest `
  -Method Patch `
  -Headers $headers `
  -ContentType: "application/json; charset=utf-8" `
  -Body "{
      'labels': {
        'KEY': 'VALUE'
      }
  }" `
  -Uri "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID?updateMask=labels" | Select-Object -Expand Content

Si la requête aboutit, le serveur renvoie la réponse au format JSON :

{
  "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID",
  "labels": {
    "KEY": "VALUE"
  }
}

Obtenir les détails du magasin d'annotations

Les exemples suivants montrent comment obtenir des détails sur un magasin d'annotations.

gcloudAPI

Pour obtenir des détails sur un magasin d'annotations, exécutez la commande gcloud beta healthcare annotation-stores describe :

gcloud beta healthcare annotation-stores describe ANNOTATION_STORE_ID \
  --dataset=DATASET_ID \
  --location=LOCATION

Si la requête aboutit, l'invite de commande affiche les détails du magasin d'annotations :

name: projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/annotation-stores/ANNOTATION_STORE_ID

Pour obtenir des détails sur un magasin d'annotations, utilisez la méthode projects.locations.datasets.annotationStores.get.

Pour obtenir des détails sur un magasin d'annotations, envoyez une requête GET et fournissez les informations suivantes :

  • Nom de l'ensemble de données parent
  • Nom du magasin d'annotations
  • Un jeton d'accès

L'exemple suivant montre une requête GET utilisant curl.

curl -X GET \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID"

Si la requête aboutit, le serveur renvoie la réponse au format JSON :

{
  "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID"
}

Si vous avez configuré des champs dans la ressource AnnotationStore, ils apparaissent également dans la réponse.

Pour obtenir des détails sur un magasin d'annotations, envoyez une requête GET et fournissez les informations suivantes :

  • Nom de l'ensemble de données parent
  • Nom du magasin d'annotations
  • Un jeton d'accès

L'exemple suivant montre une requête GET utilisant Windows PowerShell.

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

Invoke-WebRequest `
  -Method Get `
  -Headers $headers `
  -Uri "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID" | Select-Object -Expand Content

Si la requête aboutit, le serveur renvoie la réponse au format JSON :

{
  "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID"
}

Si vous avez configuré des champs dans la ressource AnnotationStore, ils apparaissent également dans la réponse.

Répertorier les magasins d'annotations dans un ensemble de données

Les exemples suivants montrent comment répertorier les magasins d'annotations dans un ensemble de données.

gcloudAPI

Pour répertorier les magasins d'annotations d'un ensemble de données, exécutez la commande gcloud beta healthcare annotation-stores list :

gcloud beta healthcare annotation-stores list \
  --dataset=DATASET_ID \
  --location=LOCATION

Si la requête aboutit, l'invite de commande répertorie les magasins d'annotations :

ID                   LOCATION
ANNOTATION_STORE_ID  LOCATION

Pour répertorier les magasins d'annotations dans un ensemble de données, utilisez la méthode projects.locations.datasets.annotationStores.list.

Pour répertorier les magasins d'annotations dans un ensemble de données, envoyez une requête GET et fournissez les informations suivantes :

  • Nom de l'ensemble de données parent
  • Un jeton d'accès

L'exemple suivant montre une requête GET utilisant curl.

curl -X GET \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores"

Si la requête aboutit, le serveur renvoie la réponse au format JSON :

{
  "annotationStores": [
    {
      "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID"
    },
    {
      ...
    }
  ]
}

Si vous avez configuré des champs dans la ressource AnnotationStore, ils apparaissent également dans la réponse.

Pour répertorier les magasins d'annotations dans un ensemble de données, envoyez une requête GET et fournissez les informations suivantes :

  • Nom de l'ensemble de données parent
  • Un jeton d'accès

L'exemple suivant montre une requête GET utilisant Windows PowerShell.

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

Invoke-WebRequest `
  -Method Get `
  -Headers $headers `
  -Uri "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores" | Select-Object -Expand Content

Si la requête aboutit, le serveur renvoie la réponse au format JSON :

{
  "annotationStores": [
    {
      "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID"
    },
    {
      ...
    }
  ]
}

Si vous avez configuré des champs dans la ressource AnnotationStore, ils apparaissent également dans la réponse.

Supprimer un magasin d'annotations

Les exemples suivants montrent comment supprimer un magasin d'annotations.

gcloudAPI

Pour supprimer un magasin d'annotations, exécutez la commande gcloud beta healthcare annotation-stores delete :

  1. Exécutez la commande delete.

    gcloud beta healthcare annotation-stores delete ANNOTATION_STORE_ID \
      --dataset=DATASET_ID \
      --location=LOCATION
  2. Pour confirmer, saisissez Y.

Si la requête aboutit, l'invite de commande affiche le résultat suivant :

Deleted annotationStore [ANNOTATION_STORE_ID].

Pour supprimer un magasin d'annotations, utilisez la commande projects.locations.datasets.annotationStores.delete.

Pour supprimer un magasin d'annotations, envoyez une requête DELETE et fournissez les informations suivantes :

  • Nom de l'ensemble de données parent
  • Nom du magasin d'annotations
  • Un jeton d'accès

L'exemple suivant montre une requête DELETE utilisant curl.

curl -X DELETE \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID"

Si la requête aboutit, le serveur renvoie un corps de réponse vide au format JSON :

{}

Pour supprimer un magasin d'annotations, envoyez une requête DELETE et fournissez les informations suivantes :

  • Nom de l'ensemble de données parent
  • Nom du magasin d'annotations
  • Un jeton d'accès

L'exemple suivant montre une requête DELETE utilisant Windows PowerShell.

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

Invoke-WebRequest `
  -Method Delete `
  -Uri "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID" | Select-Object -Expand Content

Si la requête aboutit, le serveur renvoie un corps de réponse vide au format JSON :

{}