En esta página se describe cómo hacer consultas básicas con la búsqueda, incluidas las búsquedas de consultas de texto y de navegación, la paginación, la optimización y los resultados personalizados.
.Identificadores únicos de sesión de usuario
El campo de cadena visitor_id obligatorio se usa para identificar de forma única a un usuario en un solo dispositivo. Actúa como identificador de sesión persistente que permite a Vertex AI Search for commerce monitor el comportamiento de un usuario específico a lo largo de su recorrido de compra.
Vertex AI Search for commerce usa el historial asociado a un visitor_id específico para entrenar modelos y ofrecer resultados de búsqueda personalizados. El sistema genera resultados de forma dinámica en función del visitor_id específico proporcionado en la solicitud. Por ejemplo, si un visitante ve con frecuencia vestidos verdes, el modelo usa visitor_id para reconocerlo más adelante y priorizar artículos similares en sus resultados de búsqueda. Por este motivo, el ID de visitante debe tener el mismo formato en la ingestión de eventos de usuario (seguimiento) y en las solicitudes de búsqueda o de recomendaciones (publicación).
Relevancia en la búsqueda para comercio
La relevancia es diferente de la coincidencia. La coincidencia consiste en encontrar productos candidatos en el índice que se correspondan con la consulta de búsqueda del usuario. La relevancia, por otro lado, es un grado de coincidencia. Consiste en ordenar esos productos de forma que se satisfagan mejor la intención y las necesidades del usuario. Vertex AI Search para el sector del comercio usa técnicas para mejorar la coincidencia y la relevancia, lo que ofrece una mejor experiencia de búsqueda general a los usuarios y satisface las necesidades de las tiendas.
Búsqueda predeterminada
La búsqueda se ordena de forma predeterminada por relevancia. Sin embargo, algunos productos no relevantes pueden aparecer en la parte inferior de las búsquedas predeterminadas o en solicitudes explícitas de descubrimiento de productos. Solo se nota cuando se define orderBy, ya que reduce el tamaño de los resultados de búsqueda en general. El tamaño de la retirada disminuye porque los productos menos relevantes, que antes se devolvían en la parte inferior de la búsqueda predeterminada, se filtran en cierta medida. Consulta la siguiente sección para saber cómo personalizar la búsqueda.
Búsqueda no predeterminada
Vertex AI Search for commerce usa la relevancia como valor predeterminado en las búsquedas. Sin embargo, la búsqueda también se ajusta para mostrar elementos marginalmente relevantes en la parte superior de los resultados de búsqueda, de modo que los comerciantes obtengan resultados de búsqueda más específicos y aumenten el potencial de conversión de los eventos de usuario.
Estas funciones de búsqueda adicionales optimizan el algoritmo de relevancia predeterminado y proporcionan funciones no predeterminadas adaptadas al perfil de uso de cada comercio, como las siguientes:
Opciones para ordenar los resultados, como por precio, productos mejor valorados o más vendidos. La búsqueda no predeterminada se personaliza para devolver resultados de búsqueda específicos con las variantes de producto correctas. Por ejemplo, para mostrar la variante más barata o más cara al ordenar por precio.
Aplicación automática de un filtro de relevancia más estricto a los eventos de usuario no predeterminados.
Habilitar controles de refuerzo o ocultación de la intensidad ajustable para optimizar los resultados de búsqueda.
Búsqueda de texto y búsqueda de navegación
La búsqueda ofrece tanto la búsqueda de consultas de texto como la búsqueda por exploración.
En el caso práctico de búsqueda con consulta de texto, un comprador puede introducir una consulta de texto en tu sitio. La búsqueda devuelve una respuesta que contiene productos que se ajustan a los parámetros de los controles que has configurado, ordenados por relevancia y maximización de ingresos.
En el caso de uso de navegación, un comprador puede ir al menú de su sitio y desplazarse a una categoría de producto específica. La búsqueda elige automáticamente el orden de clasificación que maximiza los ingresos aprendiendo del comportamiento y las tendencias de los usuarios. Los resultados de la búsqueda se pueden acotar aún más con los controles que hayas configurado.
Tanto las solicitudes de búsqueda de texto como las de búsqueda por exploración usan el método servingConfigs.search.
Búsquedas de consultas de texto
Cuando un usuario introduce una consulta de texto para buscar en tu sitio, la búsqueda ordena los posibles resultados en función de la relevancia, la popularidad, la posibilidad de compra y la personalización.
La búsqueda considera que una solicitud servingConfigs.search es una solicitud de búsqueda basada en texto si tiene un campo query no vacío.
Al subir eventos de usuario, envíe los eventos de búsqueda de consultas de texto generados por la búsqueda como eventos de usuario search. Si el evento tiene un campo userEvent.searchQuery no vacío y un campo userEvent.pageCategories vacío, la búsqueda lo considera un evento de búsqueda basado en texto.
Consultar búsquedas
Navegar usa la navegación del sitio para generar resultados de búsqueda de igual relevancia ordenados por los artículos más vendidos. La Búsqueda aprovecha la IA para optimizar la forma en que se ordenan los resultados de navegación teniendo en cuenta la popularidad, la capacidad de compra y la personalización.
Para obtener los resultados de búsqueda correctos, ten en cuenta lo siguiente:
Los valores
pageCategoriesyfilterde sus solicitudes de búsqueda deben coincidir exactamente con los valorespageCategoriesyfilterde los eventos de usuario que haya subido. Si los parámetros de las solicitudes no coinciden con los de los eventos, el modelo de reordenación basado en clics que se ha entrenado con los eventos no funcionará muy bien para esa consulta específica y afectará negativamente a la calidad de los resultados.Vertex AI Search for commerce clasifica un evento de usuario
searchcomo evento basado en la navegación si tiene un campouserEvent.searchQueryvacío y un campouserEvent.pageCategoriesno vacío. Por eso, debes asegurarte de enviar los eventos de navegación generados por Vertex AI Search for commerce comosearcheventos de usuario al subirlos.Un filtro de navegación debe ser válido e indicar en cada consulta de navegación qué productos pertenecen a la categoría de producto en la que está navegando el usuario. Para conseguir esta configuración, el ID de categoría debe definirse en los campos
filterypage_category. Por ejemplo, si quiere que los resultados de búsqueda se orienten a la categoría Casa y jardín. En primer lugar, si solo tiene un valor defilterde"in-stock", la búsqueda no se acotará lo suficiente para ofrecer resultados óptimos. Para ofrecer resultados de búsqueda restringidos a la categoría Casa y jardín, no solo debe definir"Home \& Garden"en la categoría de la página, sino también en el filtro concategories: ANY("Home & Garden"). Si no define la categoría en la parte del filtro, es probable que los resultados de la búsqueda sean demasiado amplios e incluyan muchos artículos que no sean de la categoría Casa y jardín.
Las solicitudes y los eventos de servicio con un campo de consulta vacío y campos page_categories rellenados se consideran solicitudes de navegación y eventos de usuario. El campo page_categories especifica la propia página de navegación. Cuando el método servingConfigs.search envía una solicitud, la búsqueda la considera una solicitud de búsqueda por exploración si el campo query está vacío.
En ese caso, los resultados se basan en los campos filter y pageCategories y, si están disponibles, en más optimización y personalización.
Puedes definir la categoría en ambos, como en este ejemplo:
JSON
page_category: "Home & Garden" filter: "(availability: ANY("IN_STOCK")) AND (categories: ANY("Home & Garden"))"
De lo contrario, como la función de búsqueda funciona con consultas de cadena vacía, los productos de una categoría determinada no se mostrarán automáticamente en los resultados de una categoría de página concreta. Es decir, si el usuario final navega sin especificar nada mediante una consulta de texto, es posible que la búsqueda no devuelva resultados segmentados de forma eficaz, aunque el usuario vaya a una página de categoría.
Usar solicitudes de búsqueda
Usa solicitudes de búsqueda para obtener resultados de búsquedas de texto y de búsquedas por exploración.
Para hacer una solicitud de búsqueda, usa el método servingConfigs.search.
Todas las solicitudes de búsqueda requieren placement, que identifica el nombre de recurso completo de la configuración de servicio que se va a usar. La configuración de servicio determina qué ajustes y controles asociados afectan a los resultados de búsqueda.
Las solicitudes de búsqueda de consultas de texto requieren un campo query que no esté vacío.
Las solicitudes de búsqueda de navegación requieren un campo pageCategories no vacío.
Java
De forma predeterminada, se devuelve un número razonable de resultados ordenados por relevancia.
Para que los atributos de producto se devuelvan con la respuesta de búsqueda, asegúrese de proporcionar valores de atributo al importar los datos de su catálogo.
Product tiene atributos de sistema predefinidos, como marca, color y talla, a los que puede asignar valores. También puede incluir atributos personalizados que defina con Product.attributes.
Tutorial de consultas
En este tutorial se explica cómo enviar una consulta de búsqueda basada en texto al servicio Vertex AI Search for commerce y analizar la respuesta.
Para seguir las instrucciones paso a paso de esta tarea directamente en el editor de Cloud Shell, haz clic en Ayúdame:
Paginación
Usa la paginación para reducir el tiempo de búsqueda y el tamaño de las respuestas que se envían.
Tutorial de paginación
En este tutorial se muestra cómo controlar la paginación en una solicitud de búsqueda basada en texto. Cuando un cliente busca productos en una tienda, puede mejorar su navegación a través de los resultados de búsqueda. Por ejemplo, pueden limitar el número de elementos de la respuesta de búsqueda mediante la función de tamaño de página o ir a la página que prefieran mediante la función de desplazamiento.
Para seguir las instrucciones paso a paso de esta tarea directamente en el editor de Cloud Shell, haz clic en Ayúdame:
Paginación
Para pasar de una página a otra, utiliza page_token o offset, según tu caso práctico.
Para ir a la página siguiente, puedes usar page_token. Por ejemplo, supongamos que envías el siguiente SearchRequest.
JSON
{ placement: 'projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/placements/default_search' visitor_id: 'VISITOR_ID' query: 'shoes' page_size: 5 }
Desde SearchResponse, puedes obtener los productos resultantes con las 5 primeras coincidencias, junto con un next_page_token.
JSON
{ results: [ products{...}, products{...}, products{...}, products{...}, products{...} ] next_page_token: "wY4ETNkBDOlVjZ0YWLzUmM40SMhVjMtADMwATL5UGN5MGZlVDJaIQ5LaYsQUw9fC6lIwgE1EgC" total_size: 100 search_token: "NtQKDAiXt4_3BRDCg_jnARABGiQ1ZWRjOTRlOC0wMDAwLTI1YTEtODJlMy1mNGY1ZTgwZDUxOGM" }
Para obtener los productos de los resultados con los cinco siguientes niveles de relevancia (del sexto al décimo), debe definir page_token con los mismos valores de placement, visitor_id y query que next_page_token del SearchResponse anterior.
Java
En este ejemplo, SearchRequest tiene este aspecto:
JSON
{ placement: 'projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/placements/default_search' visitor_id: 'VISITOR_ID' query: 'shoes' page_size: 5 page_token: "wY4ETNkBDOlVjZ0YWLzUmM40SMhVjMtADMwATL5UGN5MGZlVDJaIQ5LaYsQUw9fC6lIwgE1EgC" }
En otros casos, en lugar de ir de una página a otra o de obtener resultados con la máxima relevancia, puedes ir directamente a una posición concreta con offset.