GSP523

Descripción general
En un lab de desafío, se le proporcionarán una situación y un conjunto de tareas. En lugar de seguir instrucciones paso a paso, deberás utilizar las habilidades aprendidas en los labs del curso para decidir cómo completar las tareas por tu cuenta. Un sistema automatizado de puntuación (en esta página) mostrará comentarios y determinará si completaste tus tareas correctamente.
En un lab de desafío, no se explican conceptos nuevos de Google Cloud, sino que se espera que amplíes las habilidades que adquiriste, como cambiar los valores predeterminados y leer o investigar los mensajes de error para corregir sus propios errores.
Debe completar correctamente todas las tareas dentro del período establecido para obtener una puntuación del 100%.
Se recomienda este lab a los estudiantes inscritos en el curso de la insignia de habilidad Implementa la búsqueda de vectores multimodal con BigQuery. ¿Aceptas el desafío?
Situación del desafío
Eres un científico de datos en Cymbal, una tienda de venta minorista en línea. Quieres crear una canalización para buscar constantemente productos similares en el mercado y fundamentar un estudio de comparación de marketing. Estos son tus desafíos:
- Manejar datos multimodales: los datos que recopilaste son multimodales e incluyen texto, imagen y video, algunos archivos están en Cloud Storage.
- Realizar una búsqueda de similitud semántica en lugar de una búsqueda de palabras clave: el objetivo es encontrar productos similares en varias dimensiones (p. ej., imagen, descripción y atributos específicos), la búsqueda de palabras clave podría no ser efectiva.
- Usar BigQuery para llevar a cabo las tareas: como la mayoría de tus datos ya están en BigQuery, usar la misma herramienta podría minimizar la curva de aprendizaje.
Para abordar estos desafíos, decides implementar la búsqueda de vectores multimodal con BigQuery.
Temas evaluados
- Crear una conexión de origen externa en BigQuery y otorgar los permisos de IAM adecuados
- Crear una tabla de objetos para almacenar imágenes
- Generar embeddings para convertir imágenes (datos multimodales) en vectores
- Ejecutar una búsqueda vectorial para encontrar productos similares
Requisitos previos
Para completar este lab, debes tener conocimientos de BigQuery y Cloud Storage.
La ruta de aprendizaje titulada Gemini en BigQuery proporciona una base de conocimiento integral para esta insignia de habilidad. Te recomendamos que revises estos tres cursos y sus labs para aumentar tus conocimientos y completar exitosamente este lab de desafío:
Configuración y requisitos
Antes de hacer clic en el botón Comenzar lab
Lee estas instrucciones. Los labs cuentan con un temporizador que no se puede pausar. El temporizador, que comienza a funcionar cuando haces clic en Comenzar lab, indica por cuánto tiempo tendrás a tu disposición los recursos de Google Cloud.
Este lab práctico te permitirá realizar las actividades correspondientes en un entorno de nube real, no en uno de simulación o demostración. Para ello, se te proporcionan credenciales temporales nuevas que utilizarás para acceder a Google Cloud durante todo el lab.
Para completar este lab, necesitarás lo siguiente:
- Acceso a un navegador de Internet estándar. Se recomienda el navegador Chrome.
Nota: Usa una ventana del navegador privada o de incógnito (opción recomendada) para ejecutar el lab. Así evitarás conflictos entre tu cuenta personal y la cuenta de estudiante, lo que podría generar cargos adicionales en tu cuenta personal.
- Tiempo para completar el lab (recuerda que, una vez que comienzas un lab, no puedes pausarlo).
Nota: Usa solo la cuenta de estudiante para este lab. Si usas otra cuenta de Google Cloud, es posible que se apliquen cargos a esa cuenta.
Cómo iniciar tu lab y acceder a la consola de Google Cloud
-
Haz clic en el botón Comenzar lab. Si debes pagar por el lab, se abrirá un diálogo para que selecciones la forma de pago.
A la izquierda, se encuentra el panel Detalles del lab, que tiene estos elementos:
- El botón para abrir la consola de Google Cloud
- El tiempo restante
- Las credenciales temporales que debes usar para el lab
- Otra información para completar el lab, si es necesaria
-
Haz clic en Abrir la consola de Google Cloud (o haz clic con el botón derecho y selecciona Abrir el vínculo en una ventana de incógnito si ejecutas el navegador Chrome).
El lab inicia recursos y abre otra pestaña en la que se muestra la página de acceso.
Sugerencia: Ordena las pestañas en ventanas separadas, una junto a la otra.
Nota: Si ves el diálogo Elegir una cuenta, haz clic en Usar otra cuenta.
-
De ser necesario, copia el nombre de usuario a continuación y pégalo en el diálogo Acceder.
{{{user_0.username | "Username"}}}
También puedes encontrar el nombre de usuario en el panel Detalles del lab.
-
Haz clic en Siguiente.
-
Copia la contraseña que aparece a continuación y pégala en el diálogo Te damos la bienvenida.
{{{user_0.password | "Password"}}}
También puedes encontrar la contraseña en el panel Detalles del lab.
-
Haz clic en Siguiente.
Importante: Debes usar las credenciales que te proporciona el lab. No uses las credenciales de tu cuenta de Google Cloud.
Nota: Usar tu propia cuenta de Google Cloud para este lab podría generar cargos adicionales.
-
Haz clic para avanzar por las páginas siguientes:
- Acepta los Términos y Condiciones.
- No agregues opciones de recuperación o autenticación de dos factores (esta es una cuenta temporal).
- No te registres para obtener pruebas gratuitas.
Después de un momento, se abrirá la consola de Google Cloud en esta pestaña.
Nota: Para acceder a los productos y servicios de Google Cloud, haz clic en el menú de navegación o escribe el nombre del servicio o producto en el campo Buscar.
Tarea 1. Crea una conexión de origen y otorga permisos de IAM
Crea una conexión de fuente externa
Para utilizar modelos remotos de IA generativa, como los modelos de embedding, en Vertex AI dentro de BigQuery, crea una nueva conexión de fuente externa llamada vector_conn en la región llamada .
Esta conexión actúa como una canalización segura entre Vertex AI y BigQuery, lo que permite el uso seguro de modelos de IA generativa.
Expande la pista para obtener sugerencias útiles.
Otorga permisos de IAM a la nueva cuenta de servicio
Para acceder a los recursos de Vertex AI y a los datos de BigQuery, debes otorgar los permisos de IAM adecuados a la cuenta de servicio para la conexión de la fuente externa.
Asigna los siguientes roles a la cuenta de servicio que se generó en la sección anterior:
- Propietario de datos de BigQuery
- Visualizador de objetos de almacenamiento
- Usuario de Vertex AI
Expande la pista para obtener una sugerencia útil.
Haz clic en Revisar mi progreso para verificar el objetivo.
Crear una conexión de origen y otorgar permisos de IAM
Tarea 2. Crea una tabla de objetos
Para consultar datos no estructurados, como imágenes y videos almacenados en Google Cloud Storage, crea una tabla de objetos llamada gcc_image_object_table en el conjunto de datos de BigQuery creado previamente llamado gcc_bqml_dataset.
Esta tabla almacena metadatos sobre el objeto, como su URL y tipo de contenido, pero no los datos no estructurados en sí. Como las tablas de objetos se pueden consultar como cualquier otra tabla de BigQuery, puedes usar SQL (o Python) para filtrar y seleccionar objetos según sus metadatos.
Ejecuta el siguiente código SQL en el editor de SQL de BigQuery. Asegúrate de reemplazar los marcadores de posición entre corchetes []
por el código correcto (como reemplazar [PROJECT_ID]
por el ID del proyecto asignado para este entorno de lab).
Create or replace external table `[PROJECT_ID].[DATASET_NAME].[OBJECT_TABLE_NAME]`
with connection `[PROJECT_ID].[CONNECTION_REGION].[CONNECTION_NAME]`
options
(
object_metadata='SIMPLE',
uris=['gs://[PROJECT_ID]/*']
)
Expande la pista para obtener sugerencias útiles.
Haz clic en Revisar mi progreso para verificar el objetivo.
Crear una tabla de objetos
Tarea 3. Genera embeddings
Conéctate al modelo de embedding
Para conectarte al modelo de embedding remoto, crea un modelo nuevo en BigQuery llamado gcc_embedding en el conjunto de datos de BigQuery creado previamente llamado gcc_bqml_dataset y especifica el extremo (nombre del modelo) como multimodalembedding@001
.
Ejecuta el siguiente código SQL en el editor de SQL de BigQuery. Asegúrate de reemplazar los marcadores de posición entre corchetes []
por el código correcto (como reemplazar [PROJECT_ID]
por el ID del proyecto asignado para este entorno de lab).
Create or replace model
`[PROJECT_ID].[DATASET_NAME].[MODEL_NAME]`
remote with connection `[PROJECT_ID].[CONNECTION_REGION].[CONNECTION_NAME]`
options(
[DEFINE_ENDPOINT]
);
Expande la pista para obtener sugerencias útiles.
Genera embeddings
Cuando generes los embeddings para las imágenes, guárdalos en una tabla llamada gcc_retail_store_embeddings en el conjunto de datos de BigQuery creado previamente llamado gcc_bqml_dataset.
- Ejecuta el siguiente código SQL en el editor de SQL de BigQuery. Asegúrate de reemplazar los marcadores de posición entre corchetes
[]
por el código correcto (como reemplazar [PROJECT_ID]
por el ID del proyecto asignado para este entorno de lab).
Create or replace table `[PROJECT_ID].[DATASET_NAME].[EMBEDDINGS_TABLE_NAME]`
as select *, REGEXP_EXTRACT(uri, r'[^/]+$') as product_name
from [EMBEDDINGS_FUNCTION]
(
MODEL `[PROJECT_ID].[DATASET_NAME].[MODEL_NAME]`,
TABLE `[PROJECT_ID].[DATASET_NAME].[OBJECT_TABLE_NAME]`
)
Expande la pista para obtener sugerencias útiles.
- [Paso opcional] Para revisar los resultados del embedding, actualiza y ejecuta el siguiente código (ten en cuenta que los resultados del embedding son números de punto flotante y es posible que no se puedan interpretar de inmediato):
SELECT * FROM `[PROJECT_ID].[DATASET_NAME].[EMBEDDINGS_TABLE_NAME]`
Haz clic en Revisar mi progreso para verificar el objetivo.
Crear un modelo nuevo y generar embeddings
Tarea 4. Ejecuta una búsqueda de vectores
Cuando ejecutes la búsqueda de vectores para encontrar las imágenes más similares a la frase de búsqueda, guarda los resultados de la búsqueda en una tabla llamada gcc_vector_search_table en el conjunto de datos de BigQuery creado previamente llamado gcc_bqml_dataset.
- Ejecuta el siguiente código SQL en el editor de SQL de BigQuery. Asegúrate de reemplazar los marcadores de posición entre corchetes
[]
por el código correcto (como reemplazar [PROJECT_ID]
por el ID del proyecto asignado para este entorno de lab).
Create or replace table `[PROJECT_ID].[DATASET_NAME].[SEARCH_RESULTS_TABLE]` AS
select base.uri,
base.product_name,
base.content_type,
distance
from
[VECTOR_SEARCH_FUNCTION](table [DATASET_NAME].[EMBEDDINGS_TABLE_NAME],'ml_generate_embedding_result',
(
SELECT ml_generate_embedding_result as embedding_col
FROM
[EMBEDDINGS_FUNCTION]
(
MODEL `[DATASET_NAME].[MODEL_NAME]`,
(select 'Men Sweaters' as content),
STRUCT(TRUE AS flatten_json_output)
)
),
[STATEMENT_TO_SELECT_TOP_2_RESULTS],
distance_type => 'COSINE'
);
Expande la pista para obtener sugerencias útiles.
- [Paso opcional] Para revisar el resultado de la búsqueda de vectores, actualiza y ejecuta el siguiente código:
SELECT * FROM `[PROJECT_ID].[DATASET_NAME].[SEARCH_RESULTS_TABLE]`
Haz clic en Revisar mi progreso para verificar el objetivo.
Ejecutar una búsqueda vectorial
¡Felicitaciones!
Felicitaciones por implementar con éxito la búsqueda de vectores multimodal con BigQuery. En este lab, primero estableciste conexiones con recursos externos y otorgaste los permisos de IAM adecuados a la cuenta de servicio. Luego, creaste una tabla de objetos para almacenar los metadatos de la imagen. Después, generaste embeddings para convertir las imágenes en vectores. Por último, buscaste los vectores y encontraste los productos que deseabas.
Ahora puedes aplicar este mismo proceso para buscar datos multimodales en tus propios casos de uso.
Capacitación y certificación de Google Cloud
Recibe la formación que necesitas para aprovechar al máximo las tecnologías de Google Cloud. Nuestras clases incluyen habilidades técnicas y recomendaciones para ayudarte a avanzar rápidamente y a seguir aprendiendo. Para que puedas realizar nuestros cursos cuando más te convenga, ofrecemos distintos tipos de capacitación de nivel básico a avanzado: a pedido, presenciales y virtuales. Las certificaciones te ayudan a validar y demostrar tus habilidades y tu conocimiento técnico respecto a las tecnologías de Google Cloud.
Última actualización del manual: 12 de febrero de 2025
Prueba más reciente del lab: 12 de febrero de 2025
Copyright 2025 Google LLC. All rights reserved. Google y el logotipo de Google son marcas de Google LLC. Los demás nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que estén asociados.