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.

gcloud

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].

API

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

curl

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"
}

PowerShell

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.

gcloud

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.

API

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

curl

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"
  }
}

PowerShell

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.

gcloud

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

API

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

curl

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.

PowerShell

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.

gcloud

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

API

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

curl

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.

PowerShell

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.

gcloud

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].

API

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

curl

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 :

{}

PowerShell

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 :

{}