Criar um grupo de elementos

É possível criar um grupo de recursos para registrar uma tabela ou visualização do BigQuery que contenha os dados dos recursos.

Para qualquer tabela ou visualização do BigQuery associada a um grupo de recursos, é necessário garantir o seguinte:

Depois de criar um grupo de recursos e associar a fonte de dados do BigQuery, crie recursos para associar às colunas na fonte de dados. É opcional especificar uma fonte de dados ao criar o grupo de recursos. No entanto, você precisa especificar uma fonte de dados antes de criar os recursos.

Registrar sua fonte de dados usando recursos e grupos de recursos tem as seguintes vantagens:

  • É possível definir uma visualização de atributos para veiculação on-line usando colunas de atributos específicas de várias fontes de dados do BigQuery.

  • Você pode formatar seus dados como uma série temporal especificando uma coluna de carimbo de data/hora do recurso. O Vertex AI Feature Store exibe apenas os valores de atributos mais recentes dos dados de recursos e exclui valores históricos.

  • É possível descobrir a origem do BigQuery como a fonte de dados de recurso associada quando você pesquisa o recurso do grupo de atributos no Data Catalog.

Antes de começar

Faça a autenticação na Vertex AI, a menos que já tenha feito isso.

Select the tab for how you plan to use the samples on this page:

Console

When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

Python

Para usar os exemplos Python desta página em um ambiente de desenvolvimento local, instale e inicialize o gcloud CLI e e configure o Application Default Credentials com suas credenciais de usuário.

  1. Install the Google Cloud CLI.
  2. To initialize the gcloud CLI, run the following command:

    gcloud init
  3. If you're using a local shell, then create local authentication credentials for your user account:

    gcloud auth application-default login

    You don't need to do this if you're using Cloud Shell.

Confira mais informações em Set up authentication for a local development environment.

REST

Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.

    Install the Google Cloud CLI, then initialize it by running the following command:

    gcloud init

Para mais informações, consulte Autenticar para usar REST na documentação de autenticação do Google Cloud.

Criar um grupo de recursos a partir de uma origem do BigQuery

Use o exemplo a seguir para criar um grupo de recursos e associar uma fonte de dados do BigQuery.

Console

Use as instruções a seguir para criar um grupo de recursos usando o console do Google Cloud.

  1. Na seção Vertex AI do console do Google Cloud, acesse a página Feature Store.

    Acessar a página da Feature Store

  2. Na seção Grupos de recursos, clique em Criar para abrir o painel Informações básicas na página Criar grupo de recursos.

  3. Especifique o Nome do grupo de recursos.

  4. Opcional: para adicionar rótulos, clique em Adicionar rótulo e especifique o nome e o valor do rótulo. É possível adicionar vários rótulos a um grupo de recursos.

  5. No campo Caminho do BigQuery, clique em Procurar para selecionar a tabela ou visualização de origem do BigQuery a ser associada ao grupo de recursos.

  6. Opcional: na lista da Coluna de ID da entidade, clique na coluna de ID da entidade ou visualização de origem da tabela do BigQuery.

  7. Clique em Continuar.

  8. No painel Registrar, clique em uma das seguintes opções para indicar se você quer adicionar recursos ao novo grupo de recursos:

    • Incluir todas as colunas da tabela do BigQuery: crie recursos no grupo de recursos para todas as colunas na tabela ou visualização de origem do BigQuery.

    • Inserir recursos manualmente: crie recursos com base em colunas específicas na origem do BigQuery. Para cada recurso, insira um Nome do recurso e clique no nome da coluna de origem do BigQuery correspondente na lista.

      Para adicionar mais elementos, clique em Adicionar outro recurso.

    • Criar um grupo de recursos vazio: cria o grupo de recursos sem adicionar funcionalidades a ele.

  9. Clique em Criar.

Python

Para saber como instalar o SDK da Vertex AI para Python, consulte Instalar o SDK da Vertex AI para Python. Para mais informações, consulte a documentação de referência da API Python.


from google.cloud import aiplatform
from vertexai.resources.preview import feature_store
from typing import List


def create_feature_group_sample(
    project: str,
    location: str,
    feature_group_id: str,
    bq_table_uri: str,
    entity_id_columns: List[str],
):
    aiplatform.init(project=project, location=location)
    fg = feature_store.FeatureGroup.create(
        name=feature_group_id,
        source=feature_store.utils.FeatureGroupBigQuerySource(
            uri=bq_table_uri, entity_id_columns=entity_id_columns
        ),
    )
    return fg

  • project: o ID do projeto.
  • location: região em que você quer criar o grupo de recursos, como us-central1.
  • feature_group_id: o nome do novo grupo de recursos que você quer criar.
  • bq_table_uri: URI da tabela de origem ou visualização do BigQuery que você quer registrar para o grupo de recursos.
  • entity_id_columns: os nomes das colunas que contêm os IDs das entidades. É possível especificar uma ou várias colunas.
    • Para especificar apenas uma coluna de IDs das entidades, especifique o nome da coluna no seguinte formato:
      "entity_id_column_name".
    • Para especificar várias colunas de IDs das entidades, especifique os nomes das colunas no seguinte formato:
      ["entity_id_column_1_name", "entity_id_column_2_name", ...].

REST

Para criar um recurso FeatureGroup, envie uma solicitação POST usando o método featureGroups.create.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • LOCATION_ID: região em que você quer criar o grupo de recursos, como us-central1.
  • ENTITY_ID_COLUMNS: os nomes das colunas que contêm os IDs das entidades. É possível especificar uma ou várias colunas.
    • Para especificar apenas uma coluna de IDs das entidades, especifique o nome da coluna no seguinte formato:
      "entity_id_column_name".
    • Para especificar várias colunas de IDs das entidades, especifique os nomes das colunas no seguinte formato:
      ["entity_id_column_1_name", "entity_id_column_2_name", ...].
  • PROJECT_ID: o ID do projeto.
  • FEATUREGROUP_NAME: o nome do novo grupo de recursos que você quer criar.
  • BIGQUERY_SOURCE_URI: URI da tabela de origem ou visualização do BigQuery que você quer registrar para o grupo de recursos.
  • TIMESTAMP_COLUMN: opcional. Especifique o nome da coluna que contém os carimbos de data/hora do recurso na tabela ou visualização de origem do BigQuery.
    É necessário especificar o nome da coluna de carimbo de data/hora somente se os dados estiverem formatados como uma série temporal e a coluna que contém os carimbos de data/hora do recurso não tiver o nome feature_timestamp.
  • STATIC_DATA_SOURCE: opcional. Insira true se os dados não estiverem formatados como uma série temporal. A configuração padrão é false.
  • DENSE: opcional. Indica como o Vertex AI Feature Store processa valores nulos ao exibir dados de visualizações de recursos associadas ao grupo de recursos:
    • false: é a configuração padrão. A Feature Store da Vertex AI mostra apenas os valores de atributos não nulos mais recentes. Se o valor mais recente de um recurso for nulo, o Vertex AI Feature Store vai exibir o valor histórico não nulo mais recente. No entanto, se os valores atuais e históricos desse recurso forem nulos, o Feature Store da Vertex AI vai exibir nulo como o valor do recurso.
    • true: para visualizações de recursos com sincronização de dados programada, a Feature Store da Vertex AI exibe apenas os valores de recursos mais recentes, incluindo valores nulos. Para visualizações de recursos com sincronização contínua de dados, a Feature Store da Vertex AI mostra apenas os valores de atributos não nulos mais recentes. No entanto, se os valores atuais e históricos do recurso forem nulos, o Feature Store da Vertex AI vai usar nulo como o valor do recurso. Para mais informações sobre os tipos de sincronização de dados e como configurar o tipo de sincronização de dados em uma visualização de recursos, consulte Sincronizar os dados em uma visualização de recursos.

Método HTTP e URL:

POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureGroups?feature_group_id=FEATUREGROUP_NAME

Corpo JSON da solicitação:

{
  "big_query": {
    "entity_id_columns": "ENTITY_ID_COLUMNS",
    "big_query_source": {
      "input_uri": "BIGQUERY_SOURCE_URI",
    }
    "time_series": {
      "timestamp_column": ""TIMESTAMP_COLUMN"",
    },
    "static_data_source": STATIC_DATA_SOURCE,
    "dense": DENSE
  }
}

Para enviar a solicitação, escolha uma destas opções:

curl

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureGroups?feature_group_id=FEATUREGROUP_NAME"

PowerShell

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:

$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://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureGroups?feature_group_id=FEATUREGROUP_NAME" | Select-Object -Expand Content

Você receberá uma resposta JSON semelhante a esta:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featureGroups/FEATUREGROUP_NAME/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.aiplatform.v1.UpdateFeatureGroupOperationMetadata",
    "genericMetadata": {
      "createTime": "2023-09-18T03:00:13.060636Z",
      "updateTime": "2023-09-18T03:00:13.060636Z"
    }
  }
}

A seguir