Créer et gérer des ensembles de données

Cette page explique comment créer et gérer des ensembles de données AML AI. Il est utilisé comme entrée pour les pipelines d'entraînement, de prédiction et de rétrotests. Un ensemble de données contient des références aux tables BigQuery d'un projet Google Cloud.

Il vous suffit de créer l'ensemble de données à ce stade. Les autres méthodes d'ensemble de données sont fournies pour plus de commodité.

Avant de commencer

  • Afin d'obtenir les autorisations nécessaires pour créer et gérer des ensembles de données, demandez à votre administrateur de vous attribuer le rôle IAM Administrateur des services financiers (financialservices.admin) sur votre projet. Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.

    Vous pouvez également obtenir les autorisations requises via des rôles personnalisés ou d'autres rôles prédéfinis.

  • Créer une instance

Créer un ensemble de données

Certaines méthodes d'API renvoient une opération de longue durée (LRO). Ces méthodes sont asynchrones. L'opération peut ne pas être terminée lorsque la méthode renvoie une réponse. Pour ces méthodes, envoyez la requête, puis vérifiez le résultat.

Envoyer la requête

Pour créer un ensemble de données, utilisez la méthode projects.locations.instances.datasets.create.

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

  • PROJECT_ID: ID de votre projet Google Cloud indiqué dans les paramètres IAM
  • LOCATION: emplacement de l'instance. Utilisez l'une des régions disponibles :
    • us-central1
    • us-east1
    • europe-west1
    • europe-west2
    • europe-west4
    • southamerica-east1
  • INSTANCE_ID: identifiant défini par l'utilisateur pour l'instance
  • DATASET_ID: identifiant défini par l'utilisateur pour l'ensemble de données AML AI. Utilisez uniquement des lettres minuscules, des chiffres, des tirets et des traits de soulignement (par exemple, train_jan2018_apr2020).
  • BQ_INPUT_DATASET_NAME: nom de l'ensemble de données d'entrée BigQuery
  • PARTY_TABLE: table Party dans l'ensemble de données d'entrée BigQuery
  • ACCOUNT_PARTY_LINK_TABLE: table AccountPartyLink de l'ensemble de données d'entrée BigQuery
  • TRANSACTION_TABLE: table Transaction de l'ensemble de données d'entrée BigQuery
  • RISK_CASE_EVENT_TABLE: table RiskCaseEvent de l'ensemble de données d'entrée BigQuery
  • PARTY_SUPPLEMENTARY_DATA: table PartySupplementaryData dans l'ensemble de données d'entrée BigQuery. Cette table est facultative et peut être supprimée du fichier JSON de la requête.
  • DATA_START_DATE: date et heure de début des données à utiliser dans l'ensemble de données. Utilisez le format RFC3339 UTC "Zulu" (par exemple, 2014-10-02T15:01:23Z).
  • DATA_END_DATE: date et heure de fin des données à utiliser dans l'ensemble de données. Utilisez le format RFC3339 UTC "Zulu" (par exemple, 2014-10-02T15:01:23Z).

Corps JSON de la requête :

{
  "tableSpecs": {
    "party": "bq://PROJECT_ID.BQ_INPUT_DATASET_NAME.PARTY_TABLE",
    "account_party_link": "bq://PROJECT_ID.BQ_INPUT_DATASET_NAME.ACCOUNT_PARTY_LINK_TABLE",
    "transaction": "bq://PROJECT_ID.BQ_INPUT_DATASET_NAME.TRANSACTION_TABLE",
    "risk_case_event": "bq://PROJECT_ID.BQ_INPUT_DATASET_NAME.RISK_CASE_EVENT_TABLE",
    "party_supplementary_data": "bq://PROJECT_ID.BQ_INPUT_DATASET_NAME.PARTY_SUPPLEMENTARY_DATA"
  },
  "dateRange": {
    "startTime": "DATA_START_DATE",
    "endTime": "DATA_END_DATE"
  },
  "timeZone": {
    "id": "UTC"
  }
}

Pour envoyer votre requête, développez l'une des options suivantes :

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

{
  "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.financialservices.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "target": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/datasets/DATASET_ID",
    "verb": "create",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

Vérifier le résultat

Utilisez la méthode projects.locations.operations.get pour vérifier si l'ensemble de données a été créé. Si la réponse contient "done": false, répétez la commande jusqu'à ce que la réponse contienne "done": true. Ces opérations peuvent prendre de quelques minutes à plusieurs heures.

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

  • PROJECT_ID: ID de votre projet Google Cloud indiqué dans les paramètres IAM
  • LOCATION: emplacement de l'instance. Utilisez l'une des régions disponibles :
    • us-central1
    • us-east1
    • europe-west1
    • europe-west2
    • europe-west4
    • southamerica-east1
  • OPERATION_ID: identifiant de l'opération

Pour envoyer votre requête, développez l'une des options suivantes :

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

{
  "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.financialservices.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "endTime": END_TIME,
    "target": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID",
    "verb": "create",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.financialservices.v1.Dataset",
    "name": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/datasets/DATASET_ID",
    "createTime": CREATE_TIME,
    "updateTime": UPDATE_TIME,
    "tableSpecs": {
      "party": "bq://PROJECT_ID.BQ_INPUT_DATASET_NAME.PARTY_TABLE",
      "account_party_link": "bq://PROJECT_ID.BQ_INPUT_DATASET_NAME.ACCOUNT_PARTY_LINK_TABLE",
      "transaction": "bq://PROJECT_ID.BQ_INPUT_DATASET_NAME.TRANSACTION_TABLE",
      "risk_case_event": "bq://PROJECT_ID.BQ_INPUT_DATASET_NAME.RISK_CASE_EVENT_TABLE",
      "party_supplementary_data": "bq://PROJECT_ID.BQ_INPUT_DATASET_NAME.PARTY_SUPPLEMENTARY_DATA"
    },
    "state": "ACTIVE",
    "dateRange": {
      "start_time": "DATA_START_DATE",
      "end_time": "DATA_END_DATE"
    },
    "timeZone": {
      "id": "UTC"
    }
  }
}

Obtenir un ensemble de données

Pour obtenir un ensemble de données, utilisez la méthode projects.locations.instances.datasets.get.

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

  • PROJECT_ID: ID de votre projet Google Cloud indiqué dans les paramètres IAM
  • LOCATION: emplacement de l'instance. Utilisez l'une des régions disponibles :
    • us-central1
    • us-east1
    • europe-west1
    • europe-west2
    • europe-west4
    • southamerica-east1
  • INSTANCE_ID: identifiant défini par l'utilisateur pour l'instance
  • DATASET_ID: identifiant défini par l'utilisateur pour l'ensemble de données

Pour envoyer votre requête, développez l'une des options suivantes :

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

{
  "name": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/datasets/DATASET_ID",
  "createTime": CREATE_TIME,
  "updateTime": UPDATE_TIME,
  "tableSpecs": {
    "party": "bq://PROJECT_ID.BQ_INPUT_DATASET_NAME.PARTY_TABLE",
    "account_party_link": "bq://PROJECT_ID.BQ_INPUT_DATASET_NAME.ACCOUNT_PARTY_LINK_TABLE",
    "transaction": "bq://PROJECT_ID.BQ_INPUT_DATASET_NAME.TRANSACTION_TABLE",
    "risk_case_event": "bq://PROJECT_ID.BQ_INPUT_DATASET_NAME.RISK_CASE_EVENT_TABLE",
    "party_supplementary_data": "bq://PROJECT_ID.BQ_INPUT_DATASET_NAME.PARTY_SUPPLEMENTARY_DATA"
  },
  "state": "ACTIVE",
  "dateRange": {
    "start_time": "DATA_START_DATE",
    "end_time": "DATA_END_DATE"
  },
  "timeZone": {
    "id": "UTC"
  }
}

Mettre à jour un ensemble de données

Pour mettre à jour un ensemble de données, utilisez la méthode projects.locations.instances.datasets.patch.

Tous les champs d'un ensemble de données ne peuvent pas être mis à jour. L'exemple suivant met à jour les étiquettes utilisateur de la paire clé-valeur associées à l'ensemble de données.

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

  • PROJECT_ID: ID de votre projet Google Cloud indiqué dans les paramètres IAM
  • LOCATION: emplacement de l'instance. Utilisez l'une des régions disponibles :
    • us-central1
    • us-east1
    • europe-west1
    • europe-west2
    • europe-west4
    • southamerica-east1
  • INSTANCE_ID: identifiant défini par l'utilisateur pour l'instance
  • DATASET_ID: identifiant défini par l'utilisateur pour l'ensemble de données
  • KEY: clé d'une paire clé-valeur utilisée pour organiser les ensembles de données. Pour en savoir plus, consultez la page labels.
  • VALUE: valeur d'une paire clé-valeur utilisée pour organiser les ensembles de données. Pour en savoir plus, consultez la page labels.

Corps JSON de la requête :

{
  "labels": {
    "KEY": "VALUE"
  }
}

Pour envoyer votre requête, développez l'une des options suivantes :

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

{
  "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.financialservices.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "target": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/datasets/DATASET_ID",
    "verb": "update",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

Pour savoir comment obtenir le résultat de l'opération de longue durée (LRO), consultez la section Vérifier le résultat.

Lister les jeux de données

Pour répertorier les ensembles de données d'une instance donnée, utilisez la méthode projects.locations.instances.datasets.list.

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

  • PROJECT_ID: ID de votre projet Google Cloud indiqué dans les paramètres IAM
  • LOCATION: emplacement de l'instance. Utilisez l'une des régions disponibles :
    • us-central1
    • us-east1
    • europe-west1
    • europe-west2
    • europe-west4
    • southamerica-east1
  • INSTANCE_ID: identifiant défini par l'utilisateur pour l'instance

Pour envoyer votre requête, développez l'une des options suivantes :

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

{
  "datasets": [
    {
      "name": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/datasets/DATASET_ID",
      "createTime": CREATE_TIME,
      "updateTime": UPDATE_TIME,
      "tableSpecs": {
        "party": "bq://PROJECT_ID.BQ_INPUT_DATASET_NAME.PARTY_TABLE",
        "account_party_link": "bq://PROJECT_ID.BQ_INPUT_DATASET_NAME.ACCOUNT_PARTY_LINK_TABLE",
        "transaction": "bq://PROJECT_ID.BQ_INPUT_DATASET_NAME.TRANSACTION_TABLE",
        "risk_case_event": "bq://PROJECT_ID.BQ_INPUT_DATASET_NAME.RISK_CASE_EVENT_TABLE",
        "party_supplementary_data": "bq://PROJECT_ID.BQ_INPUT_DATASET_NAME.PARTY_SUPPLEMENTARY_DATA"
      },
      "state": "ACTIVE",
      "dateRange": {
        "start_time": "DATA_START_DATE",
        "end_time": "DATA_END_DATE"
      },
      "timeZone": {
        "id": "UTC"
      }
    }
  ]
}

Supprimer un ensemble de données

Pour supprimer un ensemble de données, utilisez la méthode projects.locations.instances.datasets.delete.

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

  • PROJECT_ID: ID de votre projet Google Cloud indiqué dans les paramètres IAM
  • LOCATION: emplacement de l'instance. Utilisez l'une des régions disponibles :
    • us-central1
    • us-east1
    • europe-west1
    • europe-west2
    • europe-west4
    • southamerica-east1
  • INSTANCE_ID: identifiant défini par l'utilisateur pour l'instance
  • DATASET_ID: identifiant défini par l'utilisateur pour l'ensemble de données

Pour envoyer votre requête, développez l'une des options suivantes :

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

{
  "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.financialservices.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "target": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/datasets/DATASET_ID",
    "verb": "delete",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

Pour savoir comment obtenir le résultat de l'opération de longue durée (LRO), consultez la section Vérifier le résultat.