Comienza a usar las recomendaciones de contenido multimedia
Puedes compilar rápidamente una app de recomendaciones de contenido multimedia de vanguardia. Las recomendaciones de contenido multimedia permiten que tus públicos descubran contenido más personalizado, como qué mirar o leer a continuación, con resultados de calidad de Google personalizados según los objetivos de optimización.
Para obtener información general sobre Vertex AI Search para contenido multimedia, consulta Introducción a la búsqueda y las recomendaciones de contenido multimedia.En este instructivo de introducción, usarás el conjunto de datos Movielens para demostrar cómo subir tu catálogo de contenido multimedia y eventos de usuario a Vertex AI Search y entrenar un modelo de recomendación de películas personalizado. El conjunto de datos de Movielens contiene un catálogo de películas (documentos) y calificaciones de películas de usuarios (eventos de usuario).
En este instructivo, entrenarás un modelo de recomendación del tipo Otras que podrían gustarte, optimizado para la tasa de clics (CTR). Después del entrenamiento, el modelo puede recomendar películas según un ID de usuario y según una película inicial.
Para cumplir con los requisitos mínimos de datos del modelo, cada calificación positiva de la película (4 o superior) se trata como un evento de vista de elemento.
Tiempo estimado para completar este instructivo:
- Pasos iniciales para comenzar a entrenar el modelo: aproximadamente 1.5 horas.
- Esperar a que se entrene el modelo: ~24 horas. (Entrena el modelo).
- Evaluación de las predicciones del modelo y limpieza: ~30 minutos. (Recomendaciones de la versión preliminar)
Si completaste el instructivo Comienza a usar la búsqueda de contenido multimedia y aún tienes el almacén de datos (nombre sugerido: quickstart-media-data-store
), puedes usarlo en lugar de crear otro. En este caso, debes comenzar el instructivo en Cómo crear una app para recomendaciones de contenido multimedia.
Objetivos
- Aprende a importar documentos de medios y datos de eventos de usuario de BigQuery a Vertex AI Search.
- Entrena y evalúa los modelos de recomendación.
Antes de seguir este instructivo, asegúrate de haber realizado los pasos que se indican en Antes de comenzar.
Para seguir la guía paso a paso en esta tarea directamente en la consola de Google Cloud, haz clic en Guiarme:
Antes de comenzar
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Vertex AI Agent Builder, Cloud Storage, BigQuery APIs.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Vertex AI Agent Builder, Cloud Storage, BigQuery APIs.
Prepara el conjunto de datos
Usa Cloud Shell para importar el conjunto de datos de Movielens y reestructurarlo para Vertex AI Search para contenido multimedia.
Abre Cloud Shell
- Abre la consola de Google Cloud.
- Selecciona tu proyecto de Google Cloud.
- Anota el ID del proyecto en la tarjeta de Información del proyecto en la página del panel. Necesitarás el ID del proyecto para los siguientes procedimientos.
Haz clic en el botón Activar Cloud Shell que se encuentra en la parte superior de la consola. Se abrirá una sesión de Cloud Shell en un marco nuevo en la parte inferior de la consola de Google Cloud, que mostrará un mensaje de la línea de comandos.
Importa el conjunto de datos
El conjunto de datos de Movielens está disponible en un bucket de Cloud Storage público para facilitar la importación.
Ejecuta el siguiente comando con tu ID del proyecto para establecer el proyecto predeterminado para la línea de comandos.
gcloud config set project PROJECT_ID
Crea un conjunto de datos de BigQuery:
bq mk movielens
Carga
movies.csv
en una tabla de BigQuerymovies
nueva:bq load --skip_leading_rows=1 movielens.movies \ gs://cloud-samples-data/gen-app-builder/media-recommendations/movies.csv \ movieId:integer,title,genres
Carga
ratings.csv
en una tabla de BigQueryratings
nueva:bq load --skip_leading_rows=1 movielens.ratings \ gs://cloud-samples-data/gen-app-builder/media-recommendations/ratings.csv \ userId:integer,movieId:integer,rating:float,time:timestamp
Crea vistas de BigQuery
En este paso, reestructurarás el conjunto de datos de Movielens para que siga el formato esperado para las recomendaciones de contenido multimedia.
Las recomendaciones de contenido multimedia requieren datos de eventos del usuario para crear un modelo.
En esta guía, crearás eventos view-item
falsos durante los últimos 90 días a partir de calificaciones positivas (< 4
).
Crea una vista que convierta la tabla de películas en el esquema
Document
definido por Google:bq mk --project_id=PROJECT_ID \ --use_legacy_sql=false \ --view ' WITH t AS ( SELECT CAST(movieId AS string) AS id, SUBSTR(title, 0, 128) AS title, SPLIT(genres, "|") AS categories FROM `PROJECT_ID.movielens.movies`) SELECT id, "default_schema" as schemaId, null as parentDocumentId, TO_JSON_STRING(STRUCT(title as title, categories as categories, CONCAT("http://mytestdomain.movie/content/", id) as uri, "2023-01-01T00:00:00Z" as available_time, "2033-01-01T00:00:00Z" as expire_time, "movie" as media_type)) as jsonData FROM t;' \ movielens.movies_view
Ahora, la vista nueva tiene el esquema que espera la API de Vertex AI Agent Builder.
Ve a la página de BigQuery en la consola de Google Cloud.
En el panel Explorador, expande el nombre de tu proyecto, expande el conjunto de datos
movielens
y haz clic enmovies_view
para abrir la página de consulta para esta vista.Ve a la pestaña Explorador de tablas.
En el panel Consulta generada, haz clic en el botón Copiar a la consulta. Se abre el Editor de consultas.
Haz clic en Ejecutar para ver los datos de películas en la vista que creaste.
Ejecuta el siguiente comando de Cloud Shell para crear eventos de usuario ficticios a partir de calificaciones de películas:
bq mk --project_id=PROJECT_ID \ --use_legacy_sql=false \ --view ' WITH t AS ( SELECT MIN(UNIX_SECONDS(time)) AS old_start, MAX(UNIX_SECONDS(time)) AS old_end, UNIX_SECONDS(TIMESTAMP_SUB( CURRENT_TIMESTAMP(), INTERVAL 90 DAY)) AS new_start, UNIX_SECONDS(CURRENT_TIMESTAMP()) AS new_end FROM `PROJECT_ID.movielens.ratings`) SELECT CAST(userId AS STRING) AS userPseudoId, "view-item" AS eventType, FORMAT_TIMESTAMP("%Y-%m-%dT%X%Ez", TIMESTAMP_SECONDS(CAST( (t.new_start + (UNIX_SECONDS(time) - t.old_start) * (t.new_end - t.new_start) / (t.old_end - t.old_start)) AS int64))) AS eventTime, [STRUCT(movieId AS id, null AS name)] AS documents, FROM `PROJECT_ID.movielens.ratings`, t WHERE rating >= 4;' \ movielens.user_events
Activa Vertex AI Agent Builder
En la consola de Google Cloud, ve a la página Agent Builder.
Lee y acepta las Condiciones del Servicio y, luego, haz clic en Continuar y activar la API.
Cómo crear una app para recomendaciones de contenido multimedia
Los procedimientos de esta sección te guiarán para crear e implementar una app de recomendaciones de contenido multimedia.
En la consola de Google Cloud, ve a la página Agent Builder.
Haz clic en
Crear app .En la página Crear app, en Recomendaciones de contenido multimedia, haz clic en Crear.
En el campo Nombre de la app, ingresa un nombre para ella, como
quickstart-media-recommendations
. El ID de la app aparece debajo del nombre de la app.En Tipo de recomendaciones, asegúrate de que esté seleccionada la opción Otras que podrían gustarte.
En Objetivo comercial, asegúrate de que esté seleccionada la opción Tasa de clics (CTR).
Haz clic en Continuar.
Si completaste el instructivo Comienza a usar la búsqueda de contenido multimedia y aún tienes el almacén de datos (nombre sugerido
quickstart-media-data-store
), selecciónalo, haz clic en Crear y ve a Entrena el modelo de recomendaciones.En la página Almacenes de datos, haz clic en Crear almacén de datos nuevo.
Ingresa un nombre visible para tu almacén de datos, como
quickstart-media-data-store
, y, luego, haz clic en Crear.Selecciona el almacén de datos que acabas de crear y, luego, haz clic en Crear para crear tu aplicación.
Importar datos
A continuación, importa las películas y los datos de eventos de usuario con el formato anterior.
Importar documentos
En Fuentes nativas, en la página Importar documentos, selecciona BigQuery.
Ingresa el nombre de la vista de BigQuery
movies
que creaste y haz clic en Importar.PROJECT_ID.movielens.movies_view
Espera hasta que se hayan importado todos los documentos; esto debería tardar unos 15 minutos. Debería haber 86,537 documentos cuando esté completo.
Puedes consultar la pestaña Actividad para conocer el estado de la operación de importación. Cuando se completa la importación, el estado de la operación de importación cambia a Completado.
Importar eventos de usuario
En la pestaña Eventos, haz clic en Importar eventos.
En Fuentes nativas, en la página Importar documentos, selecciona BigQuery.
Ingresa el nombre de la vista de BigQuery
user_events
que creaste y haz clic en Importar.PROJECT_ID.movielens.user_events
Espera hasta que se haya importado al menos un evento antes de continuar con el siguiente paso, a fin de cumplir con los requisitos de datos para entrenar un modelo nuevo.
Puedes consultar la pestaña Actividad para conocer el estado de la operación. El proceso tarda alrededor de una hora en completarse porque importas millones de filas.
Para ver si se cumplieron los requisitos, ve a la pestaña Calidad de los datos > Requisitos. Incluso después de que se hayan importado los eventos del usuario, la pestaña Requisitos puede tardar un poco en actualizar su estado a Cumple con los requisitos de datos.
Entrenar el modelo de recomendación
Ve a la página Configuraciones.
Haz clic en la pestaña Entrega. Ya se creó una configuración de entrega.
Si quieres ajustar la configuración de Descenso de recomendaciones o Diversificación de resultados, puedes hacerlo en esta página.
Haz clic en la pestaña Entrenamiento.
Una vez que se cumplen los requisitos de datos, el modelo comienza a entrenarse automáticamente. Puedes ver el estado del entrenamiento y el ajuste en esta página.
Es posible que el modelo tarde un par de días en entrenarse y estar listo para consultar. En el campo Modelo listo para consultar, se indica Sí cuando se completa el proceso. Tendrás que actualizar la página para ver el cambio de No a Sí.
Obtener vista previa de las recomendaciones
Una vez que el modelo esté listo para realizar consultas, haz lo siguiente:
En el menú de navegación, haz clic en
Vista previa .Haz clic en el campo ID del documento. Aparecerá una lista de los IDs de documento.
Ingresa un ID de documento (película) inicial, como
4993
para “El señor de los anillos: La comunidad del anillo (2001)”.Selecciona el nombre Configuración de entrega en el menú desplegable.
Haz clic en Obtener recomendaciones. Aparecerá una lista de documentos recomendados.
Implementa tu app para datos estructurados
No hay widgets de recomendaciones para implementar la app. Para probar tu app antes de la implementación, haz lo siguiente:
Ve a la página Datos en la pestaña Documentos y copia el ID de un documento.
Ve a la página Integración. En esta página, se incluye un comando de muestra para el método
servingConfigs.recommend
en la API de REST.Pega el ID de documento que copiaste y pegaste antes en el campo ID de documento.
Deja el campo Seudo-ID del usuario tal como está.
Copia la solicitud de ejemplo y ejecútala en Cloud Shell.
Si quieres obtener ayuda para integrar la app de recomendaciones en tu app web, consulta las muestras de código en Obtén recomendaciones de contenido multimedia.
Limpia
Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que usaste en esta página.
Puedes volver a usar el almacén de datos que creaste para la búsqueda de contenido multimedia en el instructivo Comienza a usar la búsqueda de contenido multimedia. Prueba ese instructivo antes de realizar este procedimiento de limpieza.
- A fin de evitar cargos innecesarios de Google Cloud, usa la consola de Google Cloud para borrar tu proyecto si no lo necesitas.
- Si creaste un proyecto nuevo para obtener información acerca de Vertex AI Agent Builder y ya no necesitas el proyecto, borra el proyecto.
- Si usaste un proyecto existente de Google Cloud, borra los recursos que creaste para evitar que se generen cargos en tu cuenta. Para obtener más información, consulta Borra una app.
- Sigue los pasos que se indican en Desactiva Vertex AI Agent Builder.
Si creaste un conjunto de datos de BigQuery, bórralo de Cloud Shell:
bq rm --recursive --dataset movielens