La ampliación de consultas es la relajación incremental de las restricciones de las consultas para incluir más resultados cuando no se encuentran o se encuentran muy pocos inicialmente. Esto provoca un ajuste del tamaño de los resultados por consulta.
Cuando no hay documentos relevantes para una consulta, la ampliación de la consulta devuelve documentos menos relevantes para asegurarse de que no devuelve cero resultados de búsqueda.
A diferencia de la faceta dinámica o los controles de servicio, por ejemplo, la ampliación de consultas no se puede configurar directamente en la consola de Google Cloud . En su lugar, deberá configurar la ampliación de consultas mediante programación para cada solicitud de búsqueda. Sigue leyendo para saber cómo configurar la ampliación de consultas en la API.
Tutorial sobre la ampliación de consultas
En este tutorial se explica cómo habilitar la función de ampliación de consultas. Cuando un comprador usa una frase de búsqueda ambigua o de varias palabras, puede obtener una respuesta vacía. Una vez que se activa la ampliación de consultas, se analiza la solicitud y se devuelve la lista ampliada de productos basada en la consulta de búsqueda analizada.
Para seguir las instrucciones paso a paso de esta tarea directamente en el editor de Cloud Shell, haz clic en Ayúdame:
Información general sobre la ampliación de consultas
La ampliación de consultas es una función potente diseñada para mejorar la cobertura de la búsqueda y evitar situaciones en las que no se obtienen resultados, sobre todo en el caso de consultas de usuario complejas o de larga duración.
En lugar de no devolver ningún resultado cuando no se encuentra una coincidencia exacta en el catálogo de productos, la ampliación de la consulta identifica y muestra productos relacionados o alternativos. De esta forma, se mejora la experiencia de usuario y se pueden aumentar las tasas de conversión.
Estos son los principales casos prácticos de la ampliación de consultas:
- Consultas de larga cola: en el caso de búsquedas muy específicas, como leche ecológica rica en proteínas y baja en grasas para diabéticos,es posible que el catálogo no tenga una coincidencia perfecta. La ampliación de consultas puede devolver productos que coincidan con partes de la intención, como productos etiquetados con atributos o valores de atributos de leche apta para diabéticos o leche rica en proteínas.
- Productos alternativos: si los usuarios buscan una marca o un producto que no está en el catálogo (por ejemplo, café Starbucks de 100 ml), la ampliación de la consulta puede sugerir marcas de café alternativas que se puedan comprar, lo que evita que la búsqueda no dé resultados.
En las siguientes secciones se describe la funcionalidad, el mecanismo de activación y los matices de configuración de la función de ampliación de consultas en Vertex AI Search for commerce, con especial atención al papel fundamental del filtro canónico.
Mecanismo de activación de la ampliación de consultas
La decisión de activar la expansión de consultas o una consulta de búsqueda determinada se automatiza y se basa en una regla de filtro canónico que se puede configurar rápidamente.
- Condición de activación: la ampliación de la consulta solo se activa si la búsqueda inicial con la consulta de filtro canónica da como resultado menos de 3 productos.
- Umbral: este umbral de 3 se puede cambiar. Funciona bien en la mayoría de los casos prácticos de comercio electrónico, ya que se asegura de que la ampliación de la consulta se active solo si el conjunto de resultados inicial es realmente disperso.
Configurar la ampliación de consultas en la API
La ampliación de consultas se configura de forma programática por solicitud mediante la API de la siguiente manera:
Configuración de la API: puedes controlar la ampliación de la consulta incluyendo el objeto
queryExpansionSpecen tuSearchRequest.Ajustes: en
queryExpansionSpec, asigna el valorAUTOal campoconditionpara habilitar la función oDISABLEDpara inhabilitarla (este es el valor predeterminado si no se especifica).Fijar: puedes definir
pinUnexpandedResultscomotrueen la solicitud para asegurarte de que las concordancias exactas de la consulta original aparezcan en la parte superior de los resultados de búsqueda, seguidas de los resultados ampliados. Para obtener más información, consulta la página sobre fijación.
Configurar filtros canónicos
Para que la ampliación de consultas se active de forma eficaz, debe configurar correctamente el canonical_filter en su solicitud de búsqueda.
Para implementar correctamente la ampliación de consultas, es fundamental entender los dos parámetros de filtro principales de una solicitud de búsqueda: los filtros de nivel superior y los filtros canónicos.
Filtro de nivel superior (
filter): es el filtro principal que se aplica a los resultados de búsqueda antes de que se devuelvan al usuario. Es una combinación de dos capas posibles:Filtro empresarial o básico: reglas predefinidas que se aplican a todas las búsquedas, a menudo sin que los usuarios tengan que introducir nada, como
inStock=TRUE, category="groceries", storeId="XYZ".Filtros de faceta seleccionados por el usuario: filtros que aplica el usuario de forma dinámica mientras interactúa con la interfaz de búsqueda, como al seleccionar filtros de faceta para marca="Adidas", talla="L".
Filtros canónicos (
canonical_filter): se trata de un filtro específico que usa exclusivamente el módulo de decisión de ampliación de consultas. Su única tarea es definir la vista de catálogo con la que se evalúa la condición de activación de la ampliación de la consulta (menos de cinco resultados).
Funciones de filtro canónicas principales
El filtro canónico se ha diseñado para distinguir entre un resultado de búsqueda de baja calidad orgánica y un conjunto de resultados que el usuario ha acotado intencionadamente.
Caso 1
-
Recorrido del usuario: el usuario busca camiseta y obtiene miles de resultados. Hay un
business_filterpredeterminado que, por ejemplo, filtra solo los productos en stock y los productos que coinciden con un atributo personalizado a nivel de tienda. A continuación, el usuario aplica filtros de faceta para marca="Adidas" y talla="L", lo que reduce el número de resultados a dos. - Si
canonical_filteres igual quefilter: el sistema de decisión de ampliación de consultas solo vería dos resultados y activaría incorrectamente la ampliación de consultas, mostrando productos relacionados pero irrelevantes, como camisetas de Nike, lo que no respeta el filtro explícito del usuario. - El ajuste correcto es
canonical_filter = business filter: la decisión de ampliar la consulta debe tomarse en función de la consulta inicial, sin incluir las facetas seleccionadas por el usuario.
Caso 2
-
Recorrido del usuario: el usuario busca camiseta de adidas con estampados gráficos negros y solo obtiene uno o dos resultados, si es que obtiene alguno. Hay un
business_filterpredeterminado que, por ejemplo, filtra solo los productos en stock y los productos que coinciden con un atributo personalizado a nivel de tienda. - Si
canonical_filterno está definido o no se ha configurado correctamente, la búsqueda con el filtro canónico podría encontrar productos que coincidan con la consulta, pero que estén agotados o que sean de otra tienda, lo que significa que tienen un valor diferente del atributo de nivel de tienda personalizado. En este caso, no se activa la ampliación de la consulta. -
El ajuste correcto es
canonical_filter = business filter. Si la decisión de ampliación de la consulta encuentra menos de tres productos para la consulta larga dada, se activará una ampliación de la consulta y se mostrarán productos relacionados con la consulta original, es decir, productos que estén en stock y coincidan con el atributo de nivel de tienda. Por lo tanto, los resultados de búsqueda se ampliarían para incluir una camiseta gráfica negra estampada de otra marca, una camiseta gráfica estampada de otro color u otros productos de camisetas de la marca de la consulta.
Prácticas recomendadas para la ampliación de consultas
El filtro canónico casi siempre debe ser idéntico al filtro de empresa o al filtro base. De esta forma, el módulo de ampliación de consultas evalúa el potencial de la consulta en la misma vista de catálogo general que ven inicialmente los usuarios antes de empezar a aplicar facetas.
Flujo del proceso de búsqueda y expansión de consultas integral
Cuando se hace una solicitud de búsqueda, se producen varios procesos paralelos:
Solicitud recibida: la API recibe la solicitud de búsqueda que contiene la consulta, el
filterprincipal y elcanonical_filter.Búsqueda de decisiones de ampliación de consultas: en paralelo, el módulo de decisiones de ampliación de consultas realiza su propia búsqueda interna usando la consulta combinada con el filtro canónico.
Comprobación del número de resultados: el módulo comprueba el número de productos devueltos de su búsqueda interna.
- Si hay cinco o más resultados: no se activa la ampliación de la consulta. Los resultados de búsqueda estándar pasan al paso de filtrado final.
- Si los resultados son menos de cinco: se activa la ampliación de la consulta . El modelo afloja sistemáticamente la consulta para encontrar productos relacionados. Por ejemplo, el modelo puede buscar un teléfono Pixel 5, teléfonos Pixel 4, auriculares Pixel o incluso teléfonos Samsung.
- Filtrado final: el conjunto de productos (el conjunto original o el conjunto ampliado de la ampliación de la consulta) se transfiere a la fase final. En este caso, el filtro de nivel superior, que contiene reglas de negocio y las facetas seleccionadas por el usuario, se aplica estrictamente.
- Respuesta enviada: la lista final filtrada de productos se devuelve en la respuesta de la API.
Caso práctico avanzado de activación selectiva de la expansión de consultas
Puedes configurar los filtros de forma estratégica para habilitar o inhabilitar la ampliación de consultas en partes específicas de tu catálogo.
Imagina un catálogo grande que contenga productos de alimentación, electrónica y moda. En ese caso, debes tener en cuenta los siguientes aspectos.
Objetivo
Habilita la ampliación de consultas para las consultas de productos de alimentación difíciles de encontrar o escasos, pero muestra cero resultados para los artículos de electrónica o de moda. El objetivo es habilitar la ampliación de consultas solo en la parte de los productos de alimentación.
Configuración
En este caso práctico, la ampliación de consulta selectiva se puede configurar de la siguiente manera:
canonical_filter: elija la opción Amplio. Debe incluir todas las categorías: alimentación, electrónica y moda, además de las reglas básicas, como la disponibilidad de stock, que definen el filtro canónico concategory="groceries" OR category="electronics" OR category="fashion") AND inStock=TRUE.filter: defínelo como estrecho, en función del contexto del usuario. En el caso de un usuario de la sección de supermercado, el filtro seríacategory="groceries" AND inStock=TRUE.
Cómo funciona
La ampliación de consultas selectiva funciona de la siguiente manera en este caso:
- El usuario busca "iPhone 20": el módulo de ampliación de consultas usa el filtro canónico amplio, encuentra modelos de iPhone (< 5 resultados) y decide no activar la ampliación de consultas. Los resultados de búsqueda estándar (iPhones actuales) se transfieren al filtro principal, que los bloquea porque
category="electronics"no coincide concategory="groceries". El usuario ve correctamente cero resultados. - El usuario busca *leche para diabéticos con alto contenido proteico*: el módulo de ampliación de consultas usa la concordancia amplia
canonical_filtery encuentra menos de 5 resultados, lo que activa la ampliación de consultas para buscar productos lácteos relacionados. Estos productos se transfieren al filtro principal. Como coincidencategory="groceries", estos productos se devuelven correctamente al usuario.
Al manipular el ámbito de la canonical_filter (la vista de toma de decisiones) y la filter principal (la vista de resultados finales), obtienes un control preciso sobre la experiencia de búsqueda.
Conjunto de datos de ejemplo
En esta página se usa el siguiente conjunto de datos como ejemplo. Amplíelo para ver los campos del conjunto de datos de descripción de producto de muestra.
Conjunto de datos de producto de ejemplo
| ID | title | marcas | categorías | price_info.price |
|---|---|---|---|---|
| "nest_mini_2nd_gen" | "Nest Mini (2.ª gen.)" | ["Google", "Nest"] | ["Nest > altavoces y pantallas"] | 49 ILS |
| "nest_audio" | "Nest Audio" | ["Google", "Nest"] | ["Nest > altavoces y pantallas"] | 99,99 |
| "nest_hub_max" | "Nest Hub Max" | ["Google", "Nest"] | ["Nest > altavoces y pantallas"] | 229,00 |
| "nest_hub" | "Nest Hub" | ["Google", "Nest"] | ["Nest > altavoces y pantallas"] | 88,99 |
| "google_home_max" | "Google Home Max" | ["Google", "Nest"] | ["Nest > altavoces y pantallas"] | 299,00 |
| "google_home_mini" | "Google Home Mini" | ["Google", "Nest"] | ["Nest > altavoces y pantallas"] | 49 ILS |
| "google_pixel_5" | "Google Pixel 5" | ["Google", "Pixel"] | ["Pixel > teléfonos"] | 699,00 |
| "google_pixel_4a_with_5g" | "Google Pixel 4a con 5G" | ["Google", "Pixel"] | ["Pixel > teléfonos"] | 499,00 |
| "google_pixel_4a" | "Teléfonos Google Pixel 4a" | ["Google", "Pixel"] | ["Pixel > teléfonos"] | 349,00 |
| "google_pixel_stand" | "Google Pixel Stand" | ["Google", "Pixel"] | ["Pixel > accesorios destacados"] | 79,00 |
| "google_pixel_buds" | "Google Pixel Buds" | ["Google", "Pixel"] | ["Pixel > accesorios destacados"] | 179,00 |
| "google_pixel_5_case" | "Funda de Google Pixel 5" | ["Google", "Pixel"] | ["Pixel > accesorios destacados"] | 40,00 |
| "google_pixel_4a_5g_case" | "Funda de Google Pixel 4a (5G)" | ["Google", "Pixel"] | ["Pixel > accesorios destacados"] | 40,00 |
| "google_pixel_4a_case" | "Funda de Google Pixel 4a" | ["Google", "Pixel"] | ["Pixel > accesorios destacados"] | 40,00 |
Ampliación de consultas
La expansión de consultas aumenta la cobertura de los términos de consulta con pocos resultados, especialmente en las consultas de cola larga.
Esta función de búsqueda se basa en una especificación que determina las condiciones de ampliación de las consultas. Incluye una opción pinUnexpandedResults que está desactivada de forma predeterminada. Si se selecciona true, se muestran los productos sin expandir en la parte superior de los resultados de búsqueda. Después de la parte superior, se muestran los resultados ampliados.
Java
Por ejemplo, si buscas Google Pixel 5 sin expansión de consulta, el resultado se limita a los IDs de google_pixel_5. Sin embargo, con la ampliación de consultas, también puede obtener los IDs google_pixel_4a_with_5g, google_pixel_4a y google_pixel_5_case en el conjunto de datos de descripción de producto de ejemplo.