本页面将引导您完成以下步骤,以注册和注销当事方,从而创建预测结果:
- 确保您已准备好注册当事方
- 准备当事方注册表
- 使用
projects.locations.instances.importRegisteredParties方法注册或注销 当事方 - 验证方法响应
- (可选)导出已注册当事方的表格
准备工作
在开始之前,您需要一个 AML AI 实例。
如需让模型能够创建风险评分预测,您必须先注册当事方。我们建议您在已具备以下条件时注册当事方:
- 一个或多个 数据集
- 一个经过 调整、训练和回测的模型
何时注册当事方
您需要先注册当事方,然后才能为数据集中的当事方创建预测。训练、调整或回测不需要注册。
预测结果用于在生产或测试(并行)阶段调查客户是否洗钱。您可能还希望围绕从预测中获得的结果构建自己的治理和模型分析流程。
注册当事方会产生额外的每月费用,具体取决于注册的当事方数量(如需了解详情,请参阅 价格页面)。
如何准备当事方注册表
如需了解有关注册当事方的信息,请参阅价格页面。
为您要注册当事方的业务线准备一个表格。 如果您已注册一些当事方,则此当事方注册表可能 包含您要用于预测结果的 当事方 表中的一部分当事方。
零售当事方架构
| 列 | 类型 | 说明 |
|---|---|---|
party_id | STRING | 实例数据集中当事方的唯一标识符 |
party_size | STRING | NULL;对于零售当事方注册,系统会忽略内容 |
商业当事方架构
| 列 | 类型 | 说明 |
|---|---|---|
party_id | STRING | 实例数据集中当事方的唯一标识符 |
party_size | STRING |
请求的当事方规模。层级基于当事方在过去 365 天内的平均每月交易次数:
所有值都区分大小写。 |
如何注册当事方
当事方是针对每个 AML AI 实例单独注册的。注意事项:
- 零售当事方和商业当事方必须单独注册。使用单独的 API 调用和单独的当事方注册表。如果当事方同时位于这两个列表中,则会被视为单独注册。
- 预测要求所有当事方都注册到与所用引擎版本关联的 业务线。如果使用的数据集包含任何未注册到同一业务线的当事方,您将无法创建预测结果。
- 提供的当事方注册表用于向实例中已注册当事方的现有列表追加当事方,或替换实例中提供的业务线的所有已注册当事方。
- 注册后,当事方在一段时间内无法注销(请参阅
价格页面)。因此,您可以将
validateOnly字段设置为TRUE。借助此字段,您可以在不更改已注册当事方的情况下查看方法的净效果和响应。验证后,您可以重新运行该操作并将validateOnly参数设置为FALSE。 - 请务必检查注册请求的响应,以确保所有当事方都已成功注册,即使之前的
validateOnly请求成功也是如此。 - 对于商业当事方注册,如果当事方注册表的
party_size字段中的值不是SMALL或LARGE,则会触发错误 (Invalid party_size present in table)。系统不会更新已注册的当事方。 - 对于零售当事方注册,系统会忽略
party_size字段,并注册提供的当事方注册表中的所有当事方。
如需导入已注册的当事方,请使用
projects.locations.instances.importRegisteredParties
方法。
(以下信息也可在 创建和管理实例中找到。)
在使用任何请求数据之前, 请先进行以下替换:
PROJECT_ID:IAM 设置中列出的您的项目 ID Google CloudLOCATION:实例的位置;使用其中一个受支持的区域显示位置us-central1us-east1asia-south1europe-west1europe-west2europe-west4europe-west6me-central2northamerica-northeast1southamerica-east1australia-southeast1
INSTANCE_ID:用户为实例定义的标识符BQ_INPUT_REGISTERED_PARTIES_DATASET_NAME:包含描述已注册当事方的表格的 BigQuery 数据集PARTY_REGISTRATION_TABLE:列出已注册当事方的表格UPDATE_MODE:使用REPLACE将已注册当事方表格中可移除的当事方替换为新当事方,或使用APPEND将新当事方添加到已注册当事方表格LINE_OF_BUSINESS:此字段必须与lineOfBusiness值匹配,该值位于 引擎配置 使用的 引擎版本中; 对于商业银行客户(法人和自然人实体),请使用COMMERCIAL;对于零售银行客户,请使用RETAIL
请求 JSON 正文:
{
"partyTables": [
"bq://PROJECT_ID.BQ_INPUT_REGISTERED_PARTIES_DATASET_NAME.PARTY_REGISTRATION_TABLE"
],
"mode": "UPDATE_MODE",
"lineOfBusiness": "LINE_OF_BUSINESS"
}
如需发送请求,请选择以下方式之一:
curl
将请求正文保存在名为 request.json 的文件中。在终端中运行以下命令,在当前目录中创建或覆盖此文件:
cat > request.json << 'EOF'
{
"partyTables": [
"bq://PROJECT_ID.BQ_INPUT_REGISTERED_PARTIES_DATASET_NAME.PARTY_REGISTRATION_TABLE"
],
"mode": "UPDATE_MODE",
"lineOfBusiness": "LINE_OF_BUSINESS"
}
EOF然后,执行以下命令以发送 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:importRegisteredParties"
PowerShell
将请求正文保存在名为 request.json 的文件中。在终端中运行以下命令,在当前目录中创建或覆盖此文件:
@'
{
"partyTables": [
"bq://PROJECT_ID.BQ_INPUT_REGISTERED_PARTIES_DATASET_NAME.PARTY_REGISTRATION_TABLE"
],
"mode": "UPDATE_MODE",
"lineOfBusiness": "LINE_OF_BUSINESS"
}
'@ | Out-File -FilePath request.json -Encoding utf8然后,执行以下命令以发送 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:importRegisteredParties" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{
"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",
"target": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID",
"verb": "importRegisteredParties",
"requestedCancellation": false,
"apiVersion": "v1"
},
"done": false
}
如需了解如何获取长时间运行的操作 (LRO) 的结果,请参阅 管理长时间运行的操作。
注册响应
LRO 完成后,响应会指明该操作添加、移除或更新的当事方数量。
| 响应字段 | 类型 | 说明 |
|---|---|---|
partiesAdded | integer |
此操作添加的当事方数量 |
partiesRemoved | integer |
此操作移除的当事方数量 |
partiesTotal | integer |
此实例中注册的当事方总数(更新操作完成后) |
partiesUptiered | integer |
从小型商业当事方升级为大型商业当事方的商业当事方总数 |
partiesDowntiered | integer |
从大型商业当事方降级为小型商业当事方的商业当事方总数 |
partiesFailedToDowntier | integer |
未能从大型商业当事方降级为小型商业当事方的商业当事方总数 |
partiesFailedToRemove | integer |
此操作未能移除的当事方数量 |
如何注销当事方
当事方是针对每个 AML AI 实例注销的,方法是使用相同的
projects.locations.instances.importRegisteredParties
方法并替换现有当事方列表。将 mode 字段设置为 REPLACE。此设置会注销提供的当事方注册表中不包含的任何已注册当事方(针对提供的业务线)。
注销响应
操作完成后,请检查 API 响应 以查看该操作是否实现了预期结果,包括 添加或移除的当事方数量以及已注册当事方的总数。
API 响应还会返回因限制而无法移除的当事方数量;例如,在经过最少天数之前,无法注销客户。
导出已注册的当事方
如需导出已注册的当事方,请使用
projects.locations.instances.exportRegisteredParties
方法。
(以下信息也可在 创建和管理实例中找到。)
在使用任何请求数据之前, 请先进行以下替换:
PROJECT_ID:IAM 设置中列出的您的项目 ID Google CloudLOCATION:实例的位置;使用其中一个受支持的区域显示位置us-central1us-east1asia-south1europe-west1europe-west2europe-west4europe-west6me-central2northamerica-northeast1southamerica-east1australia-southeast1
INSTANCE_ID:用户为实例定义的标识符BQ_OUTPUT_DATASET_NAME:用于导出描述已注册当事方的表格的 BigQuery 数据集PARTY_REGISTRATION_TABLE:用于写入已注册当事方的表格WRITE_DISPOSITION:目标表格已存在时发生的操作;使用以下值之一:-
WRITE_EMPTY:仅当 BigQuery 表为空时才导出数据。 -
WRITE_TRUNCATE:先擦除 BigQuery 表中的所有现有数据 ,然后再写入表格。
-
LINE_OF_BUSINESS:对于商业银行客户(法人和自然人实体),请使用COMMERCIAL;对于零售银行客户,请使用RETAIL
请求 JSON 正文:
{
"dataset": {
"tableUri": "bq://PROJECT_ID.BQ_OUTPUT_DATASET_NAME.PARTY_REGISTRATION_TABLE",
"writeDisposition": "WRITE_DISPOSITION"
},
"lineOfBusiness": "LINE_OF_BUSINESS"
}
如需发送请求,请选择以下方式之一:
curl
将请求正文保存在名为 request.json 的文件中。在终端中运行以下命令,在当前目录中创建或覆盖此文件:
cat > request.json << 'EOF'
{
"dataset": {
"tableUri": "bq://PROJECT_ID.BQ_OUTPUT_DATASET_NAME.PARTY_REGISTRATION_TABLE",
"writeDisposition": "WRITE_DISPOSITION"
},
"lineOfBusiness": "LINE_OF_BUSINESS"
}
EOF然后,执行以下命令以发送 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:exportRegisteredParties"
PowerShell
将请求正文保存在名为 request.json 的文件中。在终端中运行以下命令,在当前目录中创建或覆盖此文件:
@'
{
"dataset": {
"tableUri": "bq://PROJECT_ID.BQ_OUTPUT_DATASET_NAME.PARTY_REGISTRATION_TABLE",
"writeDisposition": "WRITE_DISPOSITION"
},
"lineOfBusiness": "LINE_OF_BUSINESS"
}
'@ | Out-File -FilePath request.json -Encoding utf8然后,执行以下命令以发送 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:exportRegisteredParties" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{
"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",
"target": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID",
"verb": "exportRegisteredParties",
"requestedCancellation": false,
"apiVersion": "v1"
},
"done": false
}
如需了解如何获取长时间运行的操作 (LRO) 的结果,请参阅 管理长时间运行的操作。
此方法会输出具有以下架构的 BigQuery 表:
| 列 | 类型 | 说明 |
|---|---|---|
party_id | STRING | 实例数据集中当事方的唯一标识符 |
party_size | STRING |
指定商业客户的层级(大型与小型)。此字段不适用于零售客户。
所有值都区分大小写。 |
earliest_remove_time | STRING | 可以移除当事方的最早时间 |
party_with_prediction_intent | STRING | 表明自注册以来是否已预测当事方的指标 |
registration_or_uptier_time | STRING | 当事方注册或升级的时间 |