Vertex AI Feature Store te permite entregar valores de atributos en línea en tiempo real desde una vista de atributos dentro de una tienda en línea. Por ejemplo, puedes entregar los valores de los atributos desde una vista de atributos para las predicciones en línea. Una vista de atributos debe sincronizarse al menos una vez para que puedas entregar atributos en línea desde esa función.
Si la vista de atributos se define en función de grupos de atributos y atributos, Vertex AI Feature Store recupera los valores de atributos más recientes correspondientes a un ID de entidad específico. Si hay varios registros con el mismo valor en la columna de ID, Vertex AI Feature Store recupera los valores de atributos no nulos más recientes, según la columna feature_timestamp
.
Si la vista de atributos está asociada directamente con una fuente de datos de BigQuery sin asociar grupos de atributos y atributos, Vertex AI Feature Store recupera todos los valores de atributos de la fuente de datos. En este caso, cada fila de la fuente de datos debe contener un ID único.
Según el tipo de entrega en línea configurada para tu tienda en línea, puedes entregar valores de atributos de una de las siguientes maneras:
Recuperar valores de atributos con la entrega en línea de Bigtable: elige esta opción solo si la tienda en línea está configurada para la entrega en línea de Bigtable.
Recuperar valores de atributos mediante la entrega en línea optimizada con un extremo público: Elige esta opción solo si la tienda en línea está configurada para la entrega en línea optimizada desde un extremo público.
Recuperar valores de atributos con la entrega optimizada en línea con un extremo de Private Service Connect: Elige esta opción solo si la tienda en línea está configurada para la entrega en línea optimizada desde un extremo de entrega dedicado a través de Private Service Connect.
Antes de comenzar
Autentícate en Vertex AI, a menos que ya lo hayas hecho.
Select the tab for how you plan to use the samples on this page:
Python
Para usar las muestras de Python de esta página en un entorno de desarrollo local, instala e inicializa gcloud CLI y, luego, configura las credenciales predeterminadas de la aplicación con tus credenciales de usuario.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
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.
Para obtener más información, consulta Set up authentication for a local development environment.
REST
Para usar las muestras de la API de REST en esta página en un entorno de desarrollo local, debes usar las credenciales que proporcionas a la CLI de gcloud.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Si deseas obtener más información, consulta Autentica para usar REST en la documentación de autenticación de Google Cloud.
Recupera valores de atributos a través de la entrega en línea de Bigtable
Puedes usar la entrega en línea de Bigtable para hacer lo siguiente:
Recupera valores de atributos mediante la especificación de un solo ID de entidad
Recuperar valores de atributos para un conjunto de entidades (vista previa)
Recupera valores de atributos de una sola entidad
Usa el siguiente ejemplo para recuperar los valores de atributos según un ID de la entidad específico a través de la entrega en línea de Bigtable.
REST
Para recuperar todos los valores de atributos más recientes de un ID de entidad específico de una instancia FeatureView
, envía una solicitud POST
mediante el método featureViews.fetchFeatureValues.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- LOCATION_ID: región en donde se encuentra la tienda en línea, como
us-central1
. - PROJECT_ID: ID del proyecto
- FEATUREONLINESTORE_NAME: Es el nombre de la tienda en línea que contiene la vista de atributos.
- FEATUREVIEW_NAME: El nombre de la vista de atributos desde la que deseas entregar valores de atributos.
- ENTITY_ID: Es el valor de la columna de ID en el registro de atributos desde el que deseas publicar los valores de atributos más recientes.
- FORMAT: Opcional: El formato en el que deseas recuperar los valores del atributo. Los formatos compatibles incluyen el par clave-valor JSON y los formatos proto
Struct
.
Método HTTP y URL:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:fetchFeatureValues
Cuerpo JSON de la solicitud:
{ data_key: "ENTITY_ID", data_format: "FORMAT" }
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
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/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:fetchFeatureValues"
PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
$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/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:fetchFeatureValues" | Select-Object -Expand Content
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
key_values { features { value { int64_value: 258348 } name: "feature_0" } features { value { double_value: 0.96300036744534068 } name: "feature_1" } features { value { double_value: 0.42787383695351083 } name: "feature_2" } features { value { double_value: 0.12219888824743128 } name: "feature_3" } features { value { double_value: 0.037523154697944622 } name: "feature_4" } features { value { double_value: 0.1766952509448767 } name: "feature_5" } }
Python
Usa el siguiente ejemplo para recuperar valores de atributos según un ID de la entidad específico a través de la entrega en línea de Bigtable.
from google.cloud.aiplatform_v1 import FeatureOnlineStoreServiceClient
from google.cloud.aiplatform_v1.types import feature_online_store_service as feature_online_store_service_pb2
data_client = FeatureOnlineStoreServiceClient(
client_options={"api_endpoint": f"LOCATION_ID-aiplatform.googleapis.com"}
)
data_client.fetch_feature_values(
request=feature_online_store_service_pb2.FetchFeatureValuesRequest(
feature_view=f"projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME",
data_key=feature_online_store_service_pb2.FeatureViewDataKey(key="ENTITY_ID"),
data_format=feature_online_store_service_pb2.FeatureViewDataFormat.FORMAT,
)
)
Reemplaza lo siguiente:
LOCATION_ID: región en donde se encuentra la tienda en línea, como
us-central1
.PROJECT_ID: ID del proyecto
FEATUREONLINESTORE_NAME: Es el nombre de la tienda en línea que contiene la vista de atributos.
FEATUREVIEW_NAME: El nombre de la vista de atributos desde la que deseas entregar valores de atributos.
ENTITY_ID: Es el valor de la columna de ID en el registro de atributos desde el que deseas publicar los valores de atributos más recientes.
FORMAT: Opcional: El formato en el que deseas recuperar los valores del atributo. Los formatos compatibles incluyen el par JSON
KEY_VALUE
y los formatos protoPROTO_STRUCT
.
Recupera los valores de atributos de un conjunto de entidades
Usa el siguiente ejemplo para recuperar valores de atributos mediante la especificación de un conjunto de IDs de varias columnas de ID de entidad con la entrega en línea de Bigtable.
REST
Para recuperar todos los valores de atributos más recientes de un ID de entidad específico de una instancia FeatureView
, envía una solicitud POST
mediante el método featureViews.streamingFetchFeatureValues.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- LOCATION_ID: región en donde se encuentra la tienda en línea, como
us-central1
. - PROJECT_ID: ID del proyecto
- FEATUREONLINESTORE_NAME: Es el nombre de la tienda en línea que contiene la vista de atributos.
- FEATUREVIEW_NAME: El nombre de la vista de atributos desde la que deseas entregar valores de atributos.
- ENTITY_ID_1, ENTITY_ID_2, ENTITY_ID_3 y ENTITY_ID_4: El conjunto de valores de las columnas de ID en los registros de atributos desde los que deseas entregar los valores de atributos más recientes. Ten en cuenta que agrupar los ID de la entidad como varias listas anidadas en una solicitud puede ayudar a reducir la latencia, ya que Vertex AI Feature Store realiza una operación de lectura independiente para cada lista anidada de ID.
Método HTTP y URL:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:streamingFetchFeatureValues
Cuerpo JSON de la solicitud:
[ { data_keys: [{key: "ENTITY_ID_1"}, {key: "ENTITY_ID_2"}], feature_view: "projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME" }, { data_keys: [{key: "ENTITY_ID_3"}, {key: "ENTITY_ID_4"}], feature_view: "projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME" } ]
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
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/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:streamingFetchFeatureValues"
PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
$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/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:streamingFetchFeatureValues" | Select-Object -Expand Content
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
[data { key_values { features { name: "movies" value { string_value: "movie_04" } } features { name: "feature_timestamp" value { int64_value: 1631694494000000 } } } data_key { key: "eve" } } , data { key_values { features { name: "movies" value { string_value: "movie_03" } } features { name: "feature_timestamp" value { int64_value: 1631612115000000 } } } data_key { key: "alice" } } data { key_values { features { name: "movies" value { string_value: "movie_02" } } features { name: "feature_timestamp" value { int64_value: 1631694494000000 } } } data_key { key: "bob" } } ]
Python
Usa el siguiente ejemplo para recuperar valores de atributos de varias columnas de ID de entidad a través de la entrega en línea de Bigtable.
from google.cloud.aiplatform_v1beta1 import FeatureOnlineStoreServiceClient
from google.cloud.aiplatform_v1beta1.types import feature_online_store_service as feature_online_store_service_pb2
data_client = FeatureOnlineStoreServiceClient(
client_options={"api_endpoint": f"LOCATION_ID-aiplatform.googleapis.com"}
)
feature_view = "projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME"
keys_list=[
["ENTITY_ID_1","ENTITY_ID_2"],
["ENTITY_ID_3","ENTITY_ID_4"]
]
requests = []
for keys in keys_list:
requests.append(
feature_online_store_service_pb2.StreamingFetchFeatureValuesRequest(
feature_view=feature_view,
data_keys=[
feature_online_store_service_pb2.FeatureViewDataKey(key=key)
for key in keys
]
)
)
responses = data_client.streaming_fetch_feature_values(
requests=iter(requests)
)
responses = [response for response in responses]
Reemplaza lo siguiente:
LOCATION_ID: región en donde se encuentra la tienda en línea, como
us-central1
.PROJECT_ID: ID del proyecto
FEATUREONLINESTORE_NAME: Es el nombre de la tienda en línea que contiene la vista de atributos.
FEATUREVIEW_NAME: El nombre de la vista de atributos desde la que deseas entregar valores de atributos.
ENTITY_ID_1, ENTITY_ID_2, ENTITY_ID_3 y ENTITY_ID_4: Los ID de la entidad desde los que deseas publicar los valores de atributos más recientes. Ten en cuenta que agrupar los ID de la entidad como varias listas anidadas en una solicitud puede ayudar a reducir la latencia, ya que Vertex AI Feature Store realiza una operación de lectura independiente para cada lista anidada de ID.
Recupera valores de atributos mediante la entrega en línea optimizada desde un extremo público
Si configuraste la instancia de tu tienda en línea para que entregue valores de atributos mediante la entrega optimizada en línea desde un extremo público, debes realizar los siguientes pasos a fin de recuperar valores de atributos desde una vista de atributos en línea. almacenamiento:
Recupera el nombre de dominio del extremo público de la tienda en línea
Cuando creas y configuras una instancia de almacén en línea para la entrega en línea optimizada con un extremo público, Vertex AI Feature Store genera el nombre de dominio del extremo público para el almacén en línea. Antes de comenzar a entregar valores de atributos desde una vista de atributos en el almacén en línea, debes recuperar el nombre de dominio del extremo público de los detalles del almacén en línea.
Usa la siguiente muestra para recuperar los detalles de una instancia de tienda en línea.
REST
Para recuperar los detalles de un recurso FeatureOnlineStore
en tu proyecto, envía una solicitud GET
mediante el método featureOnlineStores.get
.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- LOCATION_ID: región en donde se encuentra la tienda en línea, como
us-central1
. - PROJECT_ID: ID del proyecto
- FEATUREONLINESTORE_NAME: El nombre de la instancia de tienda en línea.
Método HTTP y URL:
GET https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME
Para enviar tu solicitud, elige una de estas opciones:
curl
Ejecuta el siguiente comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME"
PowerShell
Ejecuta el siguiente comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME" | Select-Object -Expand Content
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME_1", "createTime": "2023-09-06T23:25:04.256314Z", "updateTime": "2023-09-06T23:25:04.256314Z", "etag": "AMEw9yMgoV0bAsYuKwVxz4Y7lOmxV7riNVHg217KaQAKORqvdqGCrQ1DIt8yHgoGXf8=", "state": "STABLE", "dedicatedServingEndpoint": { "publicEndpointDomainName": "PUBLIC_ENDPOINT_DOMAIN_NAME" }, "optimized": {} }
Necesitarás el PUBLIC_ENDPOINT_DOMAIN_NAME de la respuesta para recuperar los valores de los atributos en el siguiente paso.
Recupera valores de atributos de un ID de entidad
Después de recuperar el nombre de dominio del extremo público para la instancia de tienda en línea, usa la siguiente muestra a fin de recuperar los valores de atributos de un ID de entidad específico mediante la entrega en línea optimizada.
REST
Para recuperar todos los valores de atributos más recientes de un ID de entidad específico de una instancia FeatureView
, envía una solicitud POST
mediante el método featureViews.fetchFeatureValues
.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- PUBLIC_ENDPOINT_DOMAIN_NAME: Es el nombre de dominio del extremo público para la instancia de tienda en línea que recuperaste mediante el método
featureOnlineStores.get
. - LOCATION_ID: región en donde se encuentra la tienda en línea, como
us-central1
. - PROJECT_ID: ID del proyecto
- FEATUREONLINESTORE_NAME: Es el nombre de la tienda en línea que contiene la vista de atributos.
- FEATUREVIEW_NAME: El nombre de la vista de atributos desde la que deseas entregar valores de atributos.
- ENTITY_ID: Es el valor de la columna de ID en el registro de atributos desde el que deseas publicar los valores de atributos más recientes.
- FORMAT: Opcional: El formato en el que deseas recuperar los valores del atributo. Los formatos compatibles incluyen el par clave-valor JSON y los formatos proto
Struct
.
Método HTTP y URL:
POST https://PUBLIC_ENDPOINT_DOMAIN_NAME/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:fetchFeatureValues
Cuerpo JSON de la solicitud:
{ data_key: "ENTITY_ID", data_format: "FORMAT" }
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://PUBLIC_ENDPOINT_DOMAIN_NAME/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:fetchFeatureValues"
PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
$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://PUBLIC_ENDPOINT_DOMAIN_NAME/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:fetchFeatureValues" | Select-Object -Expand Content
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
key_values { features { value { int64_value: 258348 } name: "feature_0" } features { value { double_value: 0.96300036744534068 } name: "feature_1" } features { value { double_value: 0.42787383695351083 } name: "feature_2" } features { value { double_value: 0.12219888824743128 } name: "feature_3" } features { value { double_value: 0.037523154697944622 } name: "feature_4" } features { value { double_value: 0.1766952509448767 } name: "feature_5" } }
Python
Usa el siguiente ejemplo para recuperar valores de atributos según un ID de la entidad específico a través de la entrega en línea optimizada.
from google.cloud.aiplatform_v1 import FeatureOnlineStoreServiceClient
from google.cloud.aiplatform_v1.types import feature_online_store_service as feature_online_store_service_pb2
data_client = FeatureOnlineStoreServiceClient(
client_options={"api_endpoint": f"PUBLIC_ENDPOINT_DOMAIN_NAME"}
)
data_client.fetch_feature_values(
request=feature_online_store_service_pb2.FetchFeatureValuesRequest(
feature_view=f"projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME",
id=f"ENTITY_ID",
format=feature_online_store_service_pb2.FetchFeatureValuesRequest.Format.FORMAT,
)
)
Reemplaza lo siguiente:
PUBLIC_ENDPOINT_DOMAIN_NAME: Es el nombre de dominio del extremo público para la instancia de tienda en línea que recuperaste mediante el método
featureOnlineStores.get
.LOCATION_ID: región en donde se encuentra la tienda en línea, como
us-central1
.PROJECT_ID: ID del proyecto
FEATUREONLINESTORE_NAME: Es el nombre de la tienda en línea que contiene la vista de atributos.
FEATUREVIEW_NAME: El nombre de la vista de atributos desde la que deseas entregar valores de atributos.
ENTITY_ID: Es el valor de la columna de ID en el registro de atributos desde el que deseas publicar los valores de atributos más recientes.
FORMAT: Opcional: El formato en el que deseas recuperar los valores del atributo. Los formatos compatibles incluyen el par JSON
KEY_VALUE
y los formatos protoPROTO_STRUCT
.
Recupera valores de atributos mediante la entrega en línea optimizada desde un extremo de Private Service Connect
Si configuraste la instancia de tu tienda en línea para que entregue valores de atributos mediante la entrega optimizada en línea desde un extremo de Private Service Connect, debes realizar los siguientes pasos a fin de recuperar valores de atributos desde una vista de atributos en línea. almacenamiento:
Recupera la configuración de Private Service Connect para la instancia
FeatureOnlineStore
.Agrega un extremo para Private Service Connect a tu configuración de red.
Conéctate al extremo de Private Service Connect a través de gRPC.
Recupera la cadena de adjunto de servicio para la tienda en línea
Cuando creas y configuras una instancia de tienda en línea para la entrega en línea optimizada con un extremo de Private Service Connect, Vertex AI Feature Store genera una cadena de adjunto de servicio que puedes usar para configurar el extremo de Private Service Connect. Puedes recuperar la string del adjunto de servicio desde los detalles de la tienda en línea.
Usa la siguiente muestra para recuperar los detalles de una instancia de tienda en línea.
REST
Para recuperar los detalles de un recurso FeatureOnlineStore
en tu proyecto, envía una solicitud GET
mediante el método featureOnlineStores.get
.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- LOCATION_ID: región en donde se encuentra la tienda en línea, como
us-central1
. - PROJECT_ID: ID del proyecto
- FEATUREONLINESTORE_NAME: El nombre de la instancia de tienda en línea.
Método HTTP y URL:
GET https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME
Para enviar tu solicitud, elige una de estas opciones:
curl
Ejecuta el siguiente comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME"
PowerShell
Ejecuta el siguiente comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME" | Select-Object -Expand Content
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME_1", "createTime": "2023-09-06T23:25:04.256314Z", "updateTime": "2023-09-06T23:25:04.256314Z", "etag": "AMEw9yMgoV0bAsYuKwVxz4Y7lOmxV7riNVHg217KaQAKORqvdqGCrQ1DIt8yHgoGXf8=", "state": "STABLE", "dedicatedServingEndpoint": { "privateServiceConnectConfig": { "enablePrivateServiceConnect": "true", "projectAllowlist": [ "PROJECT_NAME" ] }, serviceAttachment: "SERVICE_ATTACHMENT_STRING" }, "optimized": {} }
Necesitarás el SERVICE_ATTACHMENT_STRING de la respuesta para recuperar los valores de los atributos en el siguiente paso.
Agrega un extremo para Private Service Connect
Si quieres agregar un extremo de Private Service Connect para la entrega en línea optimizada a la configuración de tu red, sigue estos pasos:
En la consola de Google Cloud, selecciona el proyecto que contiene la instancia de la tienda en línea.
Si quieres crear un extremo para Private Service Connect, especifica SERVICE_ATTACHMENT_STRING como el servicio de destino. Si deseas obtener información para crear un extremo para Private Service Connect, consulta Crea un extremo.
Después de crear el extremo, aparecerá en la pestaña Extremos conectados en la página de Private Service Connect. La dirección IP del extremo aparece en la columna Direcciones IP.
Ir a la pestaña Extremos conectados
Deberás usar esta dirección IP para conectarte al extremo de tu instancia de almacenamiento en línea al extremo de Private Service Connect mediante gRPC en el siguiente paso.
Conéctate al extremo de Private Service Connect a través de gRPC
Usa la siguiente muestra de código a fin de conectarte al extremo de Private Service Connect creado para tu almacén en línea a través de gRPC.
Python
from google.cloud.aiplatform_v1 import FeatureOnlineStoreServiceClient
from google.cloud.aiplatform_v1.services.feature_online_store_service.transports.grpc import FeatureOnlineStoreServiceGrpcTransport
import grpc
data_client = FeatureOnlineStoreServiceClient(
transport = FeatureOnlineStoreServiceGrpcTransport(
# Add the IP address of the Endpoint you just created.
channel = grpc.insecure_channel("ENDPOINT_IP:10002")
)
)
Reemplaza lo siguiente:
- ENDPOINT_IP: Es la dirección IP del extremo en la columna Direcciones IP en la página de Private Service Connect.
Recupera valores de atributos de un ID de entidad
Después de conectarte al extremo de Private Service Connect a través de gRPC, usa la siguiente muestra para recuperar los valores de los atributos de un ID de entidad específico mediante la entrega en línea optimizada.
Python
data_client.fetch_feature_values(
request=feature_online_store_service_pb2.FetchFeatureValuesRequest(
feature_view=f"projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME",
data_key=feature_online_store_service_pb2.FeatureViewDataKey(ENTITY_ID),
data_format=feature_online_store_service_pb2.FeatureViewDataFormat.PROTO_STRUCT,
)
)
Reemplaza lo siguiente:
LOCATION_ID: región en donde se encuentra la tienda en línea, como
us-central1
.PROJECT_ID: ID del proyecto
FEATUREONLINESTORE_NAME: Es el nombre de la tienda en línea que contiene la vista de atributos.
FEATUREVIEW_NAME: El nombre de la vista de atributos desde la que deseas entregar valores de atributos.
ENTITY_ID: Es el valor de la columna de ID en el registro de atributos desde el que deseas publicar los valores de atributos más recientes.
FORMAT: Opcional: El formato en el que deseas recuperar los valores del atributo. Los formatos compatibles incluyen el par clave-valor JSON y los formatos proto
Struct
. Ten en cuenta que el formatoStruct
de proto no admite el tipo de valor del atributo de bytes. Si deseas recuperar valores de atributos con formato de bytes, usa JSON como formato de respuesta.
¿Qué sigue?
Obtén información sobre cómo sincronizar datos para una vista de atributos.
Obtén más información sobre cómo actualizar una tienda en línea.
Salvo que se indique lo contrario, el contenido de esta página está sujeto a la licencia Atribución 4.0 de Creative Commons, y los ejemplos de código están sujetos a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2024-09-03 (UTC)