Comienza a usar la búsqueda de contenido multimedia
Puedes compilar rápidamente una app de búsqueda de contenido multimedia de vanguardia. La búsqueda de contenido multimedia permite a tus públicos descubrir contenido con resultados de calidad de Google.
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 a Vertex AI Search. El conjunto de datos de Movielens contiene un catálogo de películas (documentos).
Después de subir los datos de las películas, crearás una app de búsqueda y la probarás a través de la página de vista previa.
Si completaste el instructivo Comienza a usar las recomendaciones 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 la búsqueda de contenido multimedia.
Tiempo estimado para completar este instructivo: alrededor de 1 hora
Objetivos
- Obtén información sobre cómo importar documentos multimedia para crear un almacén de datos de este tipo.
- Crea, configura y prueba una app de búsqueda.
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
Nota: Si completaste el instructivo Comienza a usar las recomendaciones de contenido multimedia y aún tienes el almacén de datos (nombre sugeridoquickstart-media-data-store
), ve a Crea una app para la búsqueda de contenido multimedia.
Usa Cloud Shell para importar el conjunto de datos de Movielens y reestructurarlo para Vertex AI Search para contenido multimedia.
Abre Cloud Shell
- Abierta 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, de modo que siga el formato esperado para los almacenes de datos multimedia.
En esta guía, crearás eventos de usuario 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
: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 la búsqueda de contenido multimedia
Los procedimientos de esta sección te guiarán para crear e implementar una app de búsqueda 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, selecciona Búsqueda.
En Contenido, haz clic en Contenido multimedia.
En el campo Nombre de tu app, ingresa un nombre para ella, como
quickstart-media-search
. El ID de la app aparece debajo del nombre del motor.Haz clic en Continuar.
Si completaste el instructivo Comienza a usar las recomendaciones 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 Vista previa de la búsqueda.Si no tienes un almacén de datos que contenga el conjunto de datos de movielens, crea un almacén de datos nuevo y selecciónalo:
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 app. Se te redireccionará a la página Selecciona una fuente de datos.
Importar datos
A continuación, importa las películas y los datos de eventos de usuario con el formato anterior.
Importar documentos
Si no se te redirecciona automáticamente a la página Selecciona una fuente de datos, haz lo siguiente:
- Abre la pestaña Documentos.
- Haz clic en Import Data (Importar datos).
En la página Selecciona una fuente de datos, 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
Abre la pestaña Eventos.
Haz clic en Importar eventos.
Selecciona BigQuery.
Ingresa el nombre de la vista de BigQuery
user_events
que creaste y haz clic en Importar.PROJECT_ID.movielens.user_events
Puedes continuar con el siguiente paso antes de que se importen los eventos, pero los resultados de la búsqueda aún no contendrán el conjunto de datos completo.
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.
Obtén una vista previa y configura la búsqueda
En el menú de navegación, haz clic en
Configuraciones .En el cuadro Buscar aquí, escribe el nombre de una película, como "El Señor de los Anillos".
Notarás que los resultados de la búsqueda son relevantes para el título de la película ingresado.
En esta página, puedes personalizar la forma en que el widget de búsqueda muestra la información de los resultados. Consulta Cómo configurar los resultados para el widget de búsqueda para obtener más información.
En las apps de búsqueda de contenido multimedia, puedes hacer lo siguiente:
- Configurar campos para la búsqueda
- Configurar la función de autocompletar
- Configurar los resultados de la búsqueda
Después de realizar los cambios, haz clic en Guardar y publicar para actualizar el widget.
Implementa el widget de búsqueda
En el menú de navegación, haz clic en Integración.
Asegúrate de que la pestaña Widget esté seleccionada.
Selecciona Basado en JWT o OAuth como el tipo de autorización del widget.
En el campo Dominio, ingresa el nombre de dominio de la página web en la que colocarás el widget. Por ejemplo, si quieres copiar el widget en la página web
example.com/ai.html
, ingresaexample.com
como dominio.Haz clic en Agregar y, luego, en Guardar.
Copia el fragmento de código proporcionado en la sección Copia el siguiente código en tu aplicación web.
En tu base de código, genera un token de autorización.
Para pasar el token de autorización a tu widget, usa el fragmento de código de "Configurar token de autorización" que se proporciona en la sección Copia el siguiente código para tu aplicación web y reemplaza el texto
<JWT or OAuth token provided by you backend>
por tu token de autorización.Si quieres obtener ayuda para integrar la app de búsqueda en tu app web, consulta las muestras de código en Cómo obtener resultados de la búsqueda.
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 las recomendaciones de contenido multimedia en el instructivo Comienza a usar las recomendaciones 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 Cómo borrar una app, Cómo borrar datos definitivamente de un almacén de datos y Cómo borrar un almacén de datos.
- 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