管理实体类型

了解如何创建、列出和删除实体类型。

创建实体类型

创建实体类型,以便可以创建其相关特征。

网页界面

  1. 在 Google Cloud Console 的“Vertex AI”部分,转到特征页面。

    转到“特征”页面

  2. 在操作栏中,点击创建实体类型,打开创建实体类型窗口。
  3. 区域下拉列表中选择包含您要在其中创建实体类型的特征存储区的区域。
  4. 选择特征存储区。
  5. 指定实体类型的名称。
  6. 如果您想要包含实体类型的说明,请输入说明。
  7. 如需启用特征值监控(预览版),请将监控设置为已启用,然后以天为单位指定快照间隔。此监控配置适用于此实体类型下的所有特征。如需了解详情,请参阅特征值监控
  8. 点击创建

REST 和命令行

如需创建实体类型,请使用 featurestores.entityTypes.create 方法发送 POST 请求。

在使用任何请求数据之前,请先进行以下替换:

  • LOCATION:特征存储区所在的区域,例如 us-central1
  • PROJECT:您的项目 ID 或项目编号。
  • FEATURESTORE_ID:特征存储区的 ID。
  • ENTITY_TYPE_ID:实体类型的 ID。
  • DESCRIPTION:实体类型的说明。
  • PROJECT_NUMBER:您的项目的项目编号(显示在响应中)。

HTTP 方法和网址:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/featurestores/FEATURESTORE_ID/entityTypes?entityTypeId=ENTITY_TYPE_ID

请求 JSON 正文:

{
  "description": "DESCRIPTION"
}

如需发送请求,请选择以下方式之一:

curl

将请求正文保存在名为 request.json 的文件中,然后执行以下命令:

curl -X POST \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/featurestores/FEATURESTORE_ID/entityTypes?entityTypeId=ENTITY_TYPE_ID"

PowerShell

将请求正文保存在名为 request.json 的文件中,然后执行以下命令:

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

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/featurestores/FEATURESTORE_ID/entityTypes?entityTypeId=ENTITY_TYPE_ID" | Select-Object -Expand Content

您应该会看到类似如下所示的输出。您可以使用响应中的 OPERATION_ID获取操作的状态

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION/featurestores/FEATURESTORE_ID/entityTypes/bikes/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateEntityTypeOperationMetadata",
    "genericMetadata": {
      "createTime": "2021-03-02T00:04:13.039166Z",
      "updateTime": "2021-03-02T00:04:13.039166Z"
    }
  }
}

Python

from google.cloud import aiplatform_v1beta1 as aiplatform

def create_entity_type_sample(
    project: str,
    featurestore_id: str,
    entity_type_id: str,
    description: str = "sample entity type",
    location: str = "us-central1",
    api_endpoint: str = "us-central1-aiplatform.googleapis.com",
    timeout: int = 300,
):
    # The AI Platform services require regional API endpoints, which need to be
    # in the same region or multi-region overlap with the Feature Store location.
    client_options = {"api_endpoint": api_endpoint}
    # Initialize client that will be used to create and send requests.
    # This client only needs to be created once, and can be reused for multiple requests.
    client = aiplatform.FeaturestoreServiceClient(client_options=client_options)
    parent = f"projects/{project}/locations/{location}/featurestores/{featurestore_id}"
    create_entity_type_request = aiplatform.CreateEntityTypeRequest(
        parent=parent,
        entity_type_id=entity_type_id,
        entity_type=aiplatform.EntityType(description=description),
    )
    lro_response = client.create_entity_type(request=create_entity_type_request)
    print("Long running operation:", lro_response.operation.name)
    create_entity_type_response = lro_response.result(timeout=timeout)
    print("create_entity_type_response:", create_entity_type_response)

其他语言

您可以安装并使用以下 Vertex AI 客户端库来调用 Vertex AI API。Cloud 客户端库使用每种受支持语言的自然规范和样式,为开发者带来优化的体验。

列出实体类型

列出特征存储区中的所有实体类型。

网页界面

  1. 在 Google Cloud Console 的“Vertex AI”部分,转到特征页面。

    转到“特征”页面

  2. 区域下拉列表中选择一个区域。
  3. 在特征表中,查看实体类型列,以了解您的项目中所选区域的实体类型。

REST 和命令行

如需列出实体类型,请使用 featurestores.entityTypes.list 方法发送 GET 请求。

在使用任何请求数据之前,请先进行以下替换:

  • LOCATION:特征存储区所在的区域,例如 us-central1
  • PROJECT:您的项目 ID 或项目编号。
  • FEATURESTORE_ID:特征存储区的 ID。
  • PROJECT_NUMBER:您的项目的项目编号(显示在响应中)。

HTTP 方法和网址:

GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/featurestores/FEATURESTORE_ID/entityTypes

如需发送请求,请选择以下方式之一:

curl

执行以下命令:

curl -X GET \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/featurestores/FEATURESTORE_ID/entityTypes"

PowerShell

执行以下命令:

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

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/featurestores/FEATURESTORE_ID/entityTypes" | Select-Object -Expand Content

您应该收到类似以下内容的 JSON 响应:

{
  "entityTypes": [
    {
      "name": "projects/PROJECT_NUMBER/locations/LOCATION/featurestores/FEATURESTORE_ID/entityTypes/ENTITY_TYPE_ID_1",
      "description": "ENTITY_TYPE_DESCRIPTION",
      "createTime": "2021-02-25T01:20:43.082628Z",
      "updateTime": "2021-02-25T01:20:43.082628Z",
      "etag": "AMEw9yOBqKIdbBGZcxdKLrlZJAf9eTO2DEzcE81YDKA2LymDMFB8ucRbmKwKo2KnvOg="
    },
    {
      "name": "projects/PROJECT_NUMBER/locations/LOCATION/featurestores/FEATURESTORE_ID/entityTypes/ENTITY_TYPE_ID_2",
      "description": "ENTITY_TYPE_DESCRIPTION",
      "createTime": "2021-02-25T01:34:26.198628Z",
      "updateTime": "2021-02-25T01:34:26.198628Z",
      "etag": "AMEw9yNuv-ILYG8VLLm1lgIKc7asGIAVFErjvH2Cyc_wIQm7d6DL4ZGv59cwZmxTumU="
    }
  ]
}

其他语言

您可以安装并使用以下 Vertex AI 客户端库来调用 Vertex AI API。Cloud 客户端库使用每种受支持语言的自然规范和样式,为开发者带来优化的体验。

删除实体类型

删除实体类型。如果您使用 Cloud Console,则 Feature Store 会删除实体类型及其所有内容。如果您使用 API,请启用 force 查询参数删除实体类型及其所有内容。

网页界面

  1. 在 Google Cloud Console 的“Vertex AI”部分,转到特征页面。

    转到“特征”页面

  2. 区域下拉列表中选择一个区域。
  3. 在特征表中,查看实体类型列并找到要删除的实体类型。
  4. 点击实体类型的名称。
  5. 在操作栏中,点击删除
  6. 点击确认以删除实体类型。

REST 和命令行

如需删除实体类型,请使用 featurestores.entityTypes.delete 方法发送 DELETE 请求。

在使用任何请求数据之前,请先进行以下替换:

  • LOCATION:特征存储区所在的区域,例如 us-central1
  • PROJECT:您的项目 ID 或项目编号。
  • FEATURESTORE_ID:特征存储区的 ID。
  • ENTITY_TYPE_ID:实体类型的 ID。
  • PROJECT_NUMBER:您的项目的项目编号(显示在响应中)。
  • BOOLEAN:是否删除实体类型(即使该实体包含特征)。force 查询参数是可选的,默认为 false

HTTP 方法和网址:

DELETE https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/featurestores/FEATURESTORE_ID/entityTypes/ENTITY_TYPE_ID?force=BOOLEAN

如需发送请求,请选择以下方式之一:

curl

执行以下命令:

curl -X DELETE \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/featurestores/FEATURESTORE_ID/entityTypes/ENTITY_TYPE_ID?force=BOOLEAN"

PowerShell

执行以下命令:

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

Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/featurestores/FEATURESTORE_ID/entityTypes/ENTITY_TYPE_ID?force=BOOLEAN" | Select-Object -Expand Content

您应该收到类似以下内容的 JSON 响应:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION/featurestores/FEATURESTORE_ID/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.aiplatform.v1.DeleteOperationMetadata",
    "genericMetadata": {
      "createTime": "2021-02-26T17:32:56.008325Z",
      "updateTime": "2021-02-26T17:32:56.008325Z"
    }
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.protobuf.Empty"
  }
}

其他语言

您可以安装并使用以下 Vertex AI 客户端库来调用 Vertex AI API。Cloud 客户端库使用每种受支持语言的自然规范和样式,为开发者带来优化的体验。

后续步骤