Esta página mostra os passos para criar e gerir conjuntos de dados de IA de AML. Um conjunto de dados é usado como entrada para a configuração do motor, a preparação, o teste retrospetivo e os pipelines de previsão. Um conjunto de dados de IA de AML contém referências a tabelas do BigQuery que correspondem ao modelo de dados de entrada de IA de AML numGoogle Cloud projeto.
Pré-requisitos
-
Para receber as autorizações de que precisa para criar e gerir conjuntos de dados, peça ao seu administrador para lhe conceder a função Financial Services Admin (
financialservices.admin) do IAM no seu projeto. Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.Também pode conseguir as autorizações necessárias através de funções personalizadas ou outras funções predefinidas.
- Crie uma instância
-
Alguns métodos da API devolvem uma operação de longa duração (LRO). Estes métodos são assíncronos e devolvem um objeto Operation. Para ver detalhes, consulte a referência REST. A operação pode não estar concluída quando o método devolve uma resposta. Para estes métodos, envie o pedido e, em seguida, verifique o resultado. Em geral, todas as operações POST, PUT, UPDATE e DELETE são de longa duração.
Crie um conjunto de dados
Para criar um conjunto de dados, envie o pedido de criação e, em seguida, verifique o resultado da LRO.
Envie o pedido
Para criar um conjunto de dados, use o método
projects.locations.instances.datasets.create.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_ID: o ID do projeto indicado nas definições de IAM Google CloudLOCATION: a localização da instância; use uma das regiões suportadasMostrar localizaçõesus-central1us-east1asia-south1europe-west1europe-west2europe-west4northamerica-northeast1southamerica-east1australia-southeast1
INSTANCE_ID: o identificador definido pelo utilizador para a instânciaDATASET_ID: um identificador definido pelo utilizador para o conjunto de dados de IA da AML; use apenas letras minúsculas, números, travessões e sublinhados (por exemplo,train_jan2018_apr2020)BQ_INPUT_DATASET_NAME: o nome do conjunto de dados de entrada do BigQueryPARTY_TABLE: a tabela Party no conjunto de dados de entrada do BigQueryACCOUNT_PARTY_LINK_TABLE: a tabela AccountPartyLink no conjunto de dados de entrada do BigQueryTRANSACTION_TABLE: a tabela Transaction no conjunto de dados de entrada do BigQueryRISK_CASE_EVENT_TABLE: a tabela RiskCaseEvent no conjunto de dados de entrada do BigQueryPARTY_SUPPLEMENTARY_DATA: a tabela PartySupplementaryData no conjunto de dados de entrada do BigQuery; esta tabela é opcional e pode ser removida do JSON do pedidoDATA_START_DATE: a data e a hora de início dos dados a usar no conjunto de dados; use o formato "Zulu" UTC RFC3339 (por exemplo,2014-10-02T15:01:23Z)DATA_END_DATE: a data e a hora de fim dos dados a usar no conjunto de dados; use o formato "Zulu" UTC RFC3339 (por exemplo,2014-10-02T15:01:23Z)
Corpo JSON do pedido:
{
"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"
}
}
Para enviar o seu pedido, escolha uma destas opções:
curl
Guarde o corpo do pedido num ficheiro denominado request.json.
Execute o seguinte comando no terminal para criar ou substituir
este ficheiro no diretório atual:
cat > request.json << 'EOF'
{
"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"
}
}
EOFEm seguida, execute o seguinte comando para enviar o seu pedido REST:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/datasets?dataset_id=DATASET_ID"
PowerShell
Guarde o corpo do pedido num ficheiro denominado request.json.
Execute o seguinte comando no terminal para criar ou substituir
este ficheiro no diretório atual:
@'
{
"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"
}
}
'@ | Out-File -FilePath request.json -Encoding utf8Em seguida, execute o seguinte comando para enviar o seu pedido REST:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/datasets?dataset_id=DATASET_ID" | Select-Object -Expand Content
Deve receber uma resposta JSON semelhante à seguinte:
{
"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
}
Copie o OPERATION_ID devolvido
para usar na secção seguinte.
Verifique o resultado
Use o método
projects.locations.operations.get
para verificar se o conjunto de dados foi criado. Se a resposta contiver "done": false, repita o comando até que a resposta contenha "done": true.
Estas operações podem demorar alguns minutos a várias horas a serem concluídas.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_ID: o ID do projeto indicado nas definições de IAM Google CloudLOCATION: a localização da instância; use uma das regiões suportadasMostrar localizaçõesus-central1us-east1asia-south1europe-west1europe-west2europe-west4northamerica-northeast1southamerica-east1australia-southeast1
OPERATION_ID: o identificador da operação
Para enviar o seu pedido, escolha uma destas opções:
curl
Execute o seguinte comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID"
PowerShell
Execute o seguinte comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID" | Select-Object -Expand Content
Deve receber uma resposta JSON semelhante à seguinte:
{
"name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
"metadata": {
"@type": "type.googleapis.com/google.cloud.financialservices.v1.OperationMetadata",
"createTime": "2023-03-14T15:52:55.358979323Z",
"endTime": "2023-03-14T16:52:55.358979323Z",
"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"
}
}
}
Obtenha um conjunto de dados
Para obter um conjunto de dados, use o método
projects.locations.instances.datasets.get.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_ID: o ID do projeto indicado nas definições de IAM Google CloudLOCATION: a localização da instância; use uma das regiões suportadasMostrar localizaçõesus-central1us-east1asia-south1europe-west1europe-west2europe-west4northamerica-northeast1southamerica-east1australia-southeast1
INSTANCE_ID: o identificador definido pelo utilizador para a instânciaDATASET_ID: o identificador definido pelo utilizador para o conjunto de dados
Para enviar o seu pedido, escolha uma destas opções:
curl
Execute o seguinte comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/datasets/DATASET_ID"
PowerShell
Execute o seguinte comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/datasets/DATASET_ID" | Select-Object -Expand Content
Deve receber uma resposta JSON semelhante à seguinte:
{
"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"
}
}
Atualize um conjunto de dados
Para atualizar um conjunto de dados, use o método
projects.locations.instances.datasets.patch.
Os únicos campos que podem ser atualizados são os campos de etiquetas na IA de AML. O exemplo seguinte atualiza o par de chave-valor user labels associado ao conjunto de dados.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_ID: o ID do projeto indicado nas definições de IAM Google CloudLOCATION: a localização da instância; use uma das regiões suportadasMostrar localizaçõesus-central1us-east1asia-south1europe-west1europe-west2europe-west4northamerica-northeast1southamerica-east1australia-southeast1
INSTANCE_ID: um identificador definido pelo utilizador para a instânciaDATASET_ID: o identificador definido pelo utilizador para o conjunto de dadosKEY: A chave num par de chave-valor usado para organizar conjuntos de dados. Consultelabelspara mais informações.VALUE: o valor num par de chave-valor usado para organizar conjuntos de dados. Consultelabelspara mais informações.
Corpo JSON do pedido:
{
"labels": {
"KEY": "VALUE"
}
}
Para enviar o seu pedido, escolha uma destas opções:
curl
Guarde o corpo do pedido num ficheiro denominado request.json.
Execute o seguinte comando no terminal para criar ou substituir
este ficheiro no diretório atual:
cat > request.json << 'EOF'
{
"labels": {
"KEY": "VALUE"
}
}
EOFEm seguida, execute o seguinte comando para enviar o seu pedido REST:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/datasets/DATASET_ID?updateMask=labels"
PowerShell
Guarde o corpo do pedido num ficheiro denominado request.json.
Execute o seguinte comando no terminal para criar ou substituir
este ficheiro no diretório atual:
@'
{
"labels": {
"KEY": "VALUE"
}
}
'@ | Out-File -FilePath request.json -Encoding utf8Em seguida, execute o seguinte comando para enviar o seu pedido REST:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/datasets/DATASET_ID?updateMask=labels" | Select-Object -Expand Content
Deve receber uma resposta JSON semelhante à seguinte:
{
"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
}
Para mais informações sobre como obter o resultado da operação de longa duração (LRO), consulte a secção Verifique o resultado.
Liste os conjuntos de dados
Para listar os conjuntos de dados de uma determinada instância, use o método
projects.locations.instances.datasets.list.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_ID: o ID do projeto indicado nas definições de IAM Google CloudLOCATION: a localização da instância; use uma das regiões suportadasMostrar localizaçõesus-central1us-east1asia-south1europe-west1europe-west2europe-west4northamerica-northeast1southamerica-east1australia-southeast1
INSTANCE_ID: o identificador definido pelo utilizador para a instância
Para enviar o seu pedido, escolha uma destas opções:
curl
Execute o seguinte comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/datasets"
PowerShell
Execute o seguinte comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/datasets" | Select-Object -Expand Content
Deve receber uma resposta JSON semelhante à seguinte:
{
"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"
}
}
]
}
Elimine um conjunto de dados
Para eliminar um conjunto de dados, use o método
projects.locations.instances.datasets.delete.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_ID: o ID do projeto indicado nas definições de IAM Google CloudLOCATION: a localização da instância; use uma das regiões suportadasMostrar localizaçõesus-central1us-east1asia-south1europe-west1europe-west2europe-west4northamerica-northeast1southamerica-east1australia-southeast1
INSTANCE_ID: o identificador definido pelo utilizador para a instânciaDATASET_ID: o identificador definido pelo utilizador para o conjunto de dados
Para enviar o seu pedido, escolha uma destas opções:
curl
Execute o seguinte comando:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/datasets/DATASET_ID"
PowerShell
Execute o seguinte comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://financialservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/datasets/DATASET_ID" | Select-Object -Expand Content
Deve receber uma resposta JSON semelhante à seguinte:
{
"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
}
Para mais informações sobre como obter o resultado da operação de longa duração (LRO), consulte a secção Verifique o resultado.