Guía para desarrolladores sobre el filtrado conversacional

A continuación, se incluye una guía para desarrolladores sobre cómo integrar el filtrado de productos conversacional en tu API.

Experiencia del administrador

Administra las preguntas generativas y el filtrado de productos conversacional directamente en la API o en la consola de Search for commerce, y configúralos en las secciones Calidad de los datos y Evaluar de la consola de Search for commerce.

Consola de Cloud

La consola permite que los comercios minoristas administren las preguntas generativas en una experiencia de filtrado de productos conversacional. Obtén más información para usar preguntas generativas en el filtrado de productos conversacional.

Pasos para usar el servicio de preguntas generativas

  1. Cumplir con los requisitos de datos

  2. Configura anulaciones manuales de preguntas.

  3. Activa la función.

  4. Vista previa y prueba

Requisitos de los datos

Para saber si tus datos de búsqueda están listos para el filtrado de productos conversacional, en la consola, ve a la pestaña Verificaciones de cobertura en Filtrado y navegación de productos conversacionales o en Calidad de los datos > Conversación.

Para habilitar el filtrado de productos conversacional, debes cumplir con ciertos requisitos de datos.

Debes realizar las siguientes acciones:

  • 1,000 búsquedas por día: Después de alcanzar este primer límite, se genera un plan de conversación que evalúa tus entradas y salidas:
  • Entradas: Recuento de filtros en eventos
  • Salidas: Cobertura de conversación
  • Cobertura de conversación del 25%: Calculada por los modelos de Vertex AI Search for Commerce, la cobertura de conversación significa el porcentaje de búsquedas que tienen una pregunta. Al menos el 25% (por volumen) de las búsquedas ponderadas por frecuencia deben tener al menos una primera pregunta que coincida con ellas.

Si aún no tienes una cobertura conversacional del 25%, pero cumples con el primer requisito de 1,000 preguntas por día, se comenzarán a aplicar las verificaciones de bloqueo y de asesoramiento a tus resultados y entradas, respectivamente. Aquí, Vertex AI Search for Commerce comienza a calcular en qué porcentaje deben aumentar los filtros aplicados por eventos del usuario para alcanzar el umbral de cobertura conversacional del 25%. Cuantos más filtros se suban, mayor será la cobertura alcanzada.

Para ver tu preparación para las conversaciones, sigue estos pasos:

  1. Ve a la pestaña Conversación en la página Calidad de los datos de la consola de Search for commerce. Esto te permite verificar de forma crítica si, al menos, el 25% de las búsquedas tienen al menos una pregunta de seguimiento, así como realizar verificaciones de asesoramiento sobre qué porcentaje de eventos del usuario con filtros válidos se necesita para alcanzar ese objetivo de cobertura conversacional.

Preparación conversacional Figura 4: Verificación de preparación conversacional.

  1. Si pasas la verificación crítica, con suficientes eventos de usuario con filtros válidos, continúa con el siguiente paso.

  2. Para controlar cómo se publican las preguntas generativas, ve a la página de filtrado de productos conversacionales y de navegación en la consola de Vertex AI Search for Commerce.

Controles de preguntas generativas

La IA generativa escribe una pregunta para cada atributo indexable del catálogo, usando tanto los nombres como los valores de los atributos del sistema y los atributos personalizados. Estas preguntas se generan con un LLM y tienen como objetivo mejorar la experiencia de búsqueda. Por ejemplo, para el tipo de mueble, los valores pueden ser para interiores o exteriores. La IA sintetiza una pregunta sobre qué tipo de mueble buscas.

Cada faceta tiene una pregunta generada. Según los eventos históricos del usuario y la participación en facetas de los datos de eventos de búsqueda anteriores, las preguntas se ordenan según la frecuencia esperada con la que aparecerán. Primero, la IA analiza las preguntas que aparecen en la parte superior y, luego, busca lo que es pertinente según el atributo. La lista de preguntas se genera una sola vez. Si se agrega un atributo nuevo, se reflejará en la lista en un plazo de dos horas.

  1. Ve a la página Búsqueda y exploración conversacionales en la consola de Search for Commerce.

    Ve a la página Búsqueda conversacional y exploración.

  2. En la pestaña Administrar preguntas generadas por IA, puedes ver todas las preguntas ordenadas según la frecuencia con la que se usan, en frecuencia ponderada por consultas, lo que significa la frecuencia con la que se muestran con consultas comunes. La clasificación usa el campo de frecuencia en la configuración de GenerativeQuestionConfig. Este campo se encarga de ordenar las preguntas generadas por IA según la frecuencia con la que se usan.

  3. Puedes usar la opción de filtro para filtrar las preguntas.

  4. Marca la casilla para habilitar la visibilidad de las preguntas para cada atributo.

  5. Haz clic en al final de cada fila para abrir un panel de edición para cada pregunta.

Para realizar ediciones masivas, sigue estos pasos:

  1. Selecciona o desmarca las casillas junto a las preguntas que deseas incluir o excluir en la conversación.

  2. Haz clic en los botones Permitir en la conversación o No permitir en la conversación que aparecen en la parte superior de la lista. Como alternativa, para editar una pregunta individual, haz clic en y marca o desmarca la casilla junto a Permitida en la conversación en el panel que se abre:

Edita cada pregunta Figura 5: Edita cada pregunta generada por IA.

Usa preguntas generativas en el filtrado de productos conversacional

La API del servicio de preguntas generativas proporciona controles para mitigar posibles incoherencias en el resultado del LLM. Se pueden administrar desde la consola. Aquí, los minoristas también pueden configurar el filtrado de productos conversacional. Para ello, deben activar o desactivar su estado habilitado y establecer la cantidad mínima de productos necesarios para activarlo.

Puedes definir las preguntas, especificar la pregunta en sí, las posibles respuestas y si se permite la pregunta en la conversación. Un LLM puede generar preguntas individuales, o bien el comercio puede anularlas. La consola permite revisar las preguntas generadas por IA, lo que permite a los minoristas anularlas o activar o desactivar su estado conversacional. Las preguntas también se pueden editar de forma masiva.

Cómo editar preguntas individuales

También puedes usar controles para seleccionar las preguntas individuales. Te recomendamos que lo hagas antes de activar el filtrado de productos conversacional.

Para cada pregunta, hay dos opciones. Haz clic en en la última columna para acceder al panel de preguntas visibles para los usuarios:

  1. Desactiva una pregunta para todas las búsquedas: La pregunta está habilitada de forma predeterminada. Borra (o vuelve a marcar) la casilla junto a Permitido en la conversación. Esta opción omite la pregunta por completo. Un comercio puede optar por inhabilitar una pregunta por completo si no se relaciona con los atributos consultados o si se puede malinterpretar como inapropiada de alguna manera (una pregunta como "¿Qué talla de vestido busca?" se puede percibir como una intromisión en el peso de un comprador).
  2. Reescribe una pregunta: En el panel, puedes ver la pregunta generada por IA, a qué atributo está adjunta y qué valores tiene el atributo. Haz clic en el lápiz para volver a escribirla.

Cómo activar el filtrado conversacional

Después de editar tus preguntas de IA generativa en la consola, podrás activar el filtrado de productos conversacional.

Para habilitar el filtrado conversacional de productos, ve a la página de filtrado conversacional de productos y de exploración en la consola de Search for commerce.

  1. Ve a la página Búsqueda y exploración conversacionales en la consola de Search for Commerce.

    Ve a la página Búsqueda conversacional y exploración.

  2. Considera la cantidad mínima de productos de tu catálogo que deseas que se muestren en la búsqueda antes de que se generen las preguntas. Este número puede ser mayor, pero nunca inferior a 2. Una fila por página suele ser la cantidad adecuada para iniciar una conversación.

  3. Configura el número y mueve el interruptor a Activado. Si menos productos coinciden con el número, se filtran.

Encender Figura 6: Activa el botón de activación para Habilitar la búsqueda conversacional.

En esta página, se proporciona información sobre el estado de tus verificaciones de bloqueo y de advertencia. Si tienes suficientes búsquedas con al menos una pregunta de seguimiento, tu sitio ya está habilitado para la búsqueda conversacional.

Evaluar y probar

Evaluar te permite obtener una vista previa de la experiencia de publicación ejecutando una búsqueda de prueba y probando tus preguntas con las facetas que se muestran. Esta parte de la consola te proporciona una vista previa de tu experiencia de entrega con el filtrado de productos conversacional.

Para evaluar y probar, sigue estos pasos. En la sección Evaluar de las pestañas Buscar o Explorar de la página Evaluar de la consola de Search for commerce

  1. Ve a la página Evaluar en la consola de Search for commerce.

    Ir a la página Evaluación

  2. Haz clic en Buscar o Explorar.

  3. En el campo Evaluación de la búsqueda, ingresa una búsqueda de prueba que tenga sentido según el catálogo que subiste para la búsqueda, como zapatos si tu catálogo consta de prendas de vestir.

  4. Haz clic en Vista previa de la búsqueda para ver los resultados de la búsqueda.

Evalúa los resultados de la búsqueda Figura 7: Obtener una vista previa de los resultados

Si tienes habilitado el filtrado de productos conversacional, las preguntas generativas también estarán habilitadas.

API de Generative Question

En esta sección, se describe cómo usar la API de preguntas generativas para integrar la API de Conversational en tu IU, administrar las preguntas generativas y publicar la función en tu sitio.

Integración de APIs

Objetos:

  • GenerativeQuestionsFeatureConfig
  • GenerativeQuestionConfig
  • Servicio de GenerativeQuestions
    • UpdateGenerativeQuestionsFeatureConfiguration
    • UpdateGenerativeQuestionConfig
    • ListGenerativeQuestionConfigs
    • GetGenerativeQuestionFeatureConfig
    • BatchUpdateGenerativeQuestionConfigs

La clave para integrar esta función es definir el recurso question. Esto incluye la pregunta en sí y si se permite en la conversación. De forma predeterminada, la pregunta la genera un LLM, pero el administrador puede anularla.

Habilita el filtrado de productos conversacional

Objeto:

  • GenerativeQuestionsFeatureConfig

Este objeto es un archivo de configuración de control para habilitar la función de preguntas generativas y administrar la experiencia general de publicación del filtrado de productos conversacional. GenerativeQuestionsFeatureConfig usa un método GET para obtener información sobre los atributos y si estos son indexables o no desde el catálogo asociado al proyecto.

El parámetro de configuración feature_enabled determina si se usan preguntas en el momento de la publicación. Administra los botones de activación de nivel superior en la consola.

Experiencia de entrega

El filtrado de productos conversacional se basa en involucrar a tu usuario en una conversación continua de varios turnos. Por lo tanto, se requiere al menos una segunda respuesta para que funcione el filtrado de productos conversacional. En la respuesta, se le presenta al usuario una pregunta de seguimiento y respuestas sugeridas, y el usuario puede responder a esta pregunta ingresando su respuesta o haciendo clic en una respuesta sugerida (opción de opción múltiple).

La opción de opción múltiple funciona en segundo plano como una faceta (un filtro de tipo de evento), que reduce la búsqueda con el filtrado. En segundo plano, cuando el usuario hace clic en una respuesta de opción múltiple, se aplica un filtro a la búsqueda. Aplicar un filtro con la selección múltiple conversacional es idéntico a aplicar el mismo filtro con facetas o tarjetas dinámicas.

Servicio habilitado por la función

El servicio de preguntas generativas (service GenerativeQuestionService{...}) se usa para administrar las preguntas generadas por LLM. Su objeto principal es el catálogo, desde el que recupera información para devolver preguntas sobre un catálogo determinado. El servicio se usa para administrar el estado general de la función de preguntas generativas, realizar cambios individuales o por lotes, y activar o desactivar preguntas. Se deben cumplir los requisitos de datos para interactuar con la API del servicio, y las preguntas se deben inicializar antes de que se puedan administrar.

El servicio interactúa con los archivos de configuración a nivel de la función y de la pregunta con dos conjuntos de controladores:

  • Controladores de GenerativeQuestionsFeatureConfig (a nivel de la función):

    1. Actualizar: Te permite cambiar los productos mínimos y habilitar campos.
    2. Get devuelve un objeto.
  • Controladores de configuración de GenerativeQuestion (a nivel de la pregunta):

    1. List devuelve todas las preguntas de un catálogo determinado.
    2. Update: Realiza la administración de preguntas individuales.
    3. Actualización por lotes: Realiza la administración de preguntas agrupadas.

El servicio devuelve una pregunta semánticamente adecuada en función de la búsqueda inicial.

El modelo de LLM genera una pregunta de seguimiento que se puede anular. Las preguntas se muestran en función de la probabilidad de que los clientes las usen, para lo cual se llama al historial de eventos de búsqueda. Si no hay historial de eventos de búsqueda, se recurre a los registros de búsqueda de comercio.

Se generan diferentes preguntas en función de la búsqueda anterior. No hay pesos fijos. La IA que impulsa las preguntas generadas por el LLM aprende de las búsquedas y cambia la ponderación para cada una, de modo que "camisa", por ejemplo, pondera la categoría de forma muy significativa, pero "camisa roja XL" pondera la categoría, el tamaño y el color.

Configura la experiencia de entrega

Configura la experiencia de publicación integrando la API de configuración del filtrado conversacional con la API de Search.

La API de configuración ConversationalFilteringSpec de la función se encuentra sobre la API de Conversational. Puedes llamar a ambas APIs en paralelo o en este orden:

  1. API de conversación
  2. API de Búsqueda
  • ConversationalFilteringSpec: Este campo opcional se agregó a ConversationalSearchRequest, pero es obligatorio si deseas usar la función de filtrado conversacional. El campo reutiliza los campos SearchRequest, la consulta y el filtro. También incluye un campo para habilitar una pregunta de seguimiento que se le muestra al usuario después de una búsqueda inicial y un `conversation_id` para mantener el estado de la conversación entre el cliente y el servidor.
  • ConversationalFilteringResult: Un archivo .proto contiene información adicional que se debe devolver para el flujo de CRS conversacional en ConversationalSearchResponse. Esto incluye conversation_id, refined_query, additional_filters, follow_up_question y suggested_answers.

Recorrido del usuario con la API de flujo de conversación

El usuario inicia una búsqueda con una consulta inicial y establece la marca mode en CONVERSATIONAL_FILTER_ONLY. Luego, el usuario selecciona una respuesta, que se envía de vuelta a la API con el campo user_answer.

La API de Conversational proporciona el campo additional_filter en la respuesta. El usuario debe aplicar estos filtros a la solicitud de seguimiento de la API de Search. Los resultados de la búsqueda se basan en la entrada del usuario y proporcionan una nueva pregunta de seguimiento, lo que genera una consulta de seguimiento y continúa la conversación en varios turnos hasta que el usuario encuentra lo que busca en el sitio web del comercio.

Suponiendo que el filtrado conversacional de productos esté habilitado en el sitio web, el recorrido del usuario y la interacción posterior con Vertex AI Search for Commerce siguen esta ruta:

  • Paso 1: La primera consulta proviene del usuario a la API de Search y a la API de Conversational. La API de Search solo devuelve resultados de la búsqueda. La API de Conversational devuelve las respuestas sugeridas y las preguntas de seguimiento. Llama a la API de Search para la misma búsqueda o page_category y recupera los resultados de la búsqueda.
  • Paso 2: La conversación de seguimiento solicitada se envía a la búsqueda conversacional. Llama a la API de Conversational con el modo de filtrado de conversaciones correcto.
  • Paso 3: Respuesta inicial de la búsqueda que solo incluye resultados de la búsqueda. La API de Conversational refina la búsqueda devolviendo las respuestas sugeridas y las preguntas de seguimiento.
  • Selección del usuario: El usuario selecciona una opción múltiple.
    • El filtro de respuestas seleccionado se envía a la API de Conversational.
    • Las APIs de Conversation y Search se ejecutan con el filtro aplicado.

La primera consulta proviene del usuario que inicia la conversación.

La primera consulta se realiza cuando el usuario inicia una conversación en Vertex AI Search for Commerce y busca dress en el cuadro de búsqueda.

Envía una solicitud a la API de búsqueda creando la siguiente solicitud de búsqueda configurando dress como la consulta (o la consulta real):

No hay cambios en la solicitud de la API de búsqueda como parte del filtrado de productos conversacional.

Para enviar una solicitud a la API de Conversational, haz lo siguiente:

  • Crea una solicitud de búsqueda conversacional configurando dress como la búsqueda (o la búsqueda real).

  • Establece mode en CONVERSATIONAL_FILTER_ONLY para obtener una respuesta conversacional. Si se establece en DISABLED, no se proporciona ninguna pregunta de seguimiento.

  • Propaga SearchParams en la solicitud de búsqueda conversacional. Los parámetros de búsqueda deben ser los mismos que los de la llamada a la API de Search.

Tu respuesta de la API de Conversational se verá de la siguiente manera:

Qué debes hacer con la respuesta:

  • conversation_id: Este ID se puede almacenar en el almacenamiento de sesión del navegador y se puede usar para continuar la búsqueda conversacional con el servidor. Dado que un comprador puede tener varias pestañas abiertas con más de una conversación, se usa conversation_id para hacer un seguimiento de las conversaciones.
  • refined_query: Identifica la búsqueda actual. Debes usar esta respuesta para llamar a la API de Search y recuperar los resultados de los productos.
  • followup_question: Identifica la pregunta que se le mostrará al usuario.
  • suggested_answers: Es una lista ordenada de las respuestas de opción múltiple que se deben mostrar a los usuarios. Si quieres mostrar menos respuestas, solo muestra los primeros N resultados. La lista se ordena según el orden en que se deben mostrar los resultados.

Envía la consulta inicial del usuario con la conversación habilitada

La búsqueda envía parámetros de conversación

El filtrado de productos conversacional ofrece estas opciones para una participación conversacional continua, lo que permite definir mejor la búsqueda más rápido:

Selección del usuario

Cuando se le muestran resultados de búsqueda al usuario, este puede seleccionar una opción de respuesta múltiple.

En este muestra de código,se muestra que el usuario seleccionó la respuesta de opción múltiple amarillo y que se envía una nueva solicitud conversacional a la API de Search volviendo a enviar la búsqueda junto con el filtro de usuario correcto aplicado.

Para enviar una solicitud a la API de Conversational, haz lo siguiente:

  1. Restablece el conversation_id del almacenamiento de sesión.
  2. Establece mode como CONVERSATIONAL_FILTER_ONLY.
  3. Establece user_answer para lo que selecciona el usuario.

La respuesta de la API de Conversational se ve de la siguiente manera:

Qué debes hacer con la respuesta:

  • La respuesta de Google es básicamente idéntica a la respuesta de la primera búsqueda, excepto que el campo additional_filter se puede usar para marcar la casilla de verificación del filtro para color = yellow y se debe agregar a cualquier otro filtro que haya seleccionado el usuario.
  • El additional_filter también se debe agregar al evento del campo de filtro que se envía a Google para esta búsqueda de seguimiento y la solicitud de búsqueda de seguimiento. Se debe aplicar en la solicitud de búsqueda para recuperar productos de búsqueda y también en la solicitud de búsqueda conversacional para recuperar la conversación de seguimiento.
  • El refined_query se debe enviar a la API de Search para recuperar productos más relevantes.