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

Gestiona las preguntas generativas y el filtrado de productos conversacional directamente en la API o en la consola de búsqueda para comercio, y configúralos en las secciones Calidad de los datos y Evaluar de la consola de búsqueda para comercio.

consola de Cloud

La consola permite a los comerciantes gestionar las preguntas generativas en una experiencia de filtrado de productos conversacional. Más información sobre cómo usar preguntas generativas en el filtrado de productos conversacional

Pasos para usar el servicio de preguntas generativas

  1. Cumplir los requisitos de datos.

  2. Configura las sustituciones manuales de preguntas.

  3. Activa la función.

  4. Vista previa y prueba

Requisitos de datos

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

Para habilitar el filtrado de productos conversacional, debe cumplir determinados requisitos de datos.

Se trata de las siguientes:

  • 1000 consultas al día: cuando alcances este primer umbral, se generará un plan de conversación que evalúa tus entradas y salidas:
  • Entradas: número de filtros en eventos
  • Resultados: cobertura conversacional
  • Cobertura de conversaciones del 25 %: calculada por los modelos de Vertex AI Search para el comercio, la cobertura de conversaciones es el porcentaje de consultas que tienen una pregunta. El 25 % de las consultas ponderadas por frecuencia (por volumen) deben tener al menos una primera pregunta que coincida con ella.

Si aún no tienes una cobertura conversacional del 25 %, pero cumples el primer requisito (1000 consultas al día), se empezarán a aplicar comprobaciones de bloqueo y de asesoramiento a tus salidas y entradas, respectivamente. En este punto, Vertex AI Search for commerce empieza a calcular en qué porcentaje deben aumentar los filtros aplicados a los eventos de usuario para alcanzar el umbral de cobertura conversacional del 25 %. Cuantos más filtros se suban, mayor será la cobertura alcanzada.

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

  1. Vaya a la pestaña Conversación de la página Calidad de los datos en la consola de búsqueda de comercio. De esta forma, puedes comprobar si al menos el 25% de las consultas de búsqueda tienen al menos una pregunta de seguimiento, así como consultar qué porcentaje de eventos de usuario con filtros válidos se necesita para alcanzar ese objetivo de cobertura conversacional.

Preparación para la conversación Imagen 4. Comprobación de la preparación para la conversación.

  1. Si superas la comprobación crítica y tienes suficientes eventos de usuario con filtros válidos, ve al siguiente paso.

  2. Para controlar cómo se ofrecen las preguntas generativas, vaya a la página de filtrado de productos y navegación conversacionales en la consola de Vertex AI Search para el comercio.

Controles de preguntas generativas

La IA generativa escribe una pregunta por cada atributo indexable del catálogo, usando tanto los nombres como los valores de los atributos del sistema y personalizados. Estas preguntas las genera un LLM y tienen como objetivo mejorar la experiencia de búsqueda. Por ejemplo, en el caso del tipo de mueble, los valores pueden ser de interior o de exterior. La IA sintetiza una pregunta sobre el tipo de mueble que estás buscando.

Cada faceta tiene una pregunta generada. Las preguntas se ordenan según la frecuencia esperada con la que aparecerán, en función de los eventos de usuario históricos y de la interacción con las facetas de los datos de eventos de búsqueda anteriores. La IA primero analiza las preguntas de la parte superior y, después, busca lo que es relevante por atributo. La lista de preguntas se genera una vez. Si se añade un atributo nuevo, se reflejará en la lista en un plazo de dos horas.

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

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

  2. En la pestaña Gestionar preguntas generadas por IA, puedes ver todas las preguntas ordenadas según la frecuencia con la que se usan, ponderada por las consultas, es decir, la frecuencia con la que se muestran con consultas habituales. La clasificación usa el campo de frecuencia de la configuración 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 de cada atributo.

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

Para hacer cambios en bloque, sigue estos pasos:

  1. Marca o desmarca las casillas situadas junto a las preguntas que quieras incluir o excluir de la conversación.

  2. Haz clic en el botón Permitir en la conversación o en el botón No permitir en la conversación que aparece en la parte superior de la lista. También puedes editar una pregunta concreta haciendo clic en y desmarcando o volviendo a marcar la casilla situada junto a Permitido en la conversación en el panel que se abre:

Editar cada pregunta Imagen 5. Edita cada pregunta generada por IA.

Usar preguntas generativas en el filtrado de productos conversacional

La API del servicio de preguntas generativas proporciona controles para mitigar las posibles incoherencias en la salida del LLM. Se pueden gestionar desde la consola. En esta sección, los comerciantes también pueden configurar el filtro de productos conversacional activando o desactivando su estado y definiendo el número mínimo de productos necesarios para activarlo.

Puedes definir las preguntas, especificando la pregunta en sí, las posibles respuestas y si se permite la pregunta en la conversación. Las preguntas individuales pueden generarse mediante un LLM o ser anuladas por el comercio. La consola permite revisar las preguntas generadas por IA, lo que da a los comerciantes la opción de anularlas o cambiar su estado de conversación. Las preguntas también se pueden editar en bloque.

Editar preguntas concretas

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

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

  1. Desactivar una pregunta para todas las consultas: la pregunta está habilitada de forma predeterminada. Desmarca (o vuelve a marcar) la casilla situada junto a Permitido en la conversación. Con esta opción, se omite la pregunta por completo. Un comercio puede inhabilitar una pregunta por completo si no está relacionada con los atributos consultados o si se puede interpretar de forma inapropiada (por ejemplo, la pregunta "¿Qué talla de vestido buscas?" se puede percibir como una intromisión en el peso de un comprador).
  2. Reescribir una pregunta: en el panel, puedes ver la pregunta generada por IA, el atributo al que está asociada y los valores que tiene el atributo. Haz clic en el lápiz para volver a escribirla.

Activar el filtrado conversacional

Una vez que hayas editado tus preguntas de IA generativa en la consola, podrás activar el filtrado de productos conversacional.

Para habilitar el filtrado de productos conversacional, vaya a la página Filtrado de productos conversacional y de navegación de la consola de Search for commerce.

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

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

  2. Ten en cuenta la cantidad mínima de productos de tu catálogo que quieres que se devuelvan en la búsqueda antes de que se generen las preguntas. Este número puede ser superior, 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 activa el interruptor. Si hay menos productos que coinciden con el número, se filtran.

Activar Imagen 6. Activa el interruptor para Habilitar la búsqueda conversacional.

En esta página se indica el estado de las comprobaciones de bloqueo y de aviso. Si tienes suficientes consultas de búsqueda con al menos una pregunta de seguimiento, tu sitio ya tiene habilitada la búsqueda conversacional.

Evaluar y probar

Evaluar te permite previsualizar la experiencia de servicio realizando una búsqueda de prueba y probando tus preguntas con las facetas mostradas. Esta parte de la consola te ofrece una vista previa de tu experiencia de servicio con el filtrado de productos conversacional.

Para evaluar y probar, sigue estos pasos. En la sección Evaluar de las pestañas Buscar o Navegar de la página Evaluar de la consola de búsqueda de comercio.

  1. Ve a la página Evaluar de la consola de búsqueda para comercio.

    Ve a la página Evaluar.

  2. Haz clic en Buscar o en Explorar.

  3. En el campo Evaluación de la búsqueda, introduzca una consulta de prueba que tenga sentido en función del catálogo que haya subido para buscar (por ejemplo, zapatos si su catálogo consta de prendas de ropa).

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

Evaluar los resultados de búsqueda Imagen 7. Previsualiza los resultados.

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

API Generative Question

En esta sección se describe cómo usar la API de preguntas generativas para integrar la API Conversational en tu interfaz de usuario, gestionar las preguntas generativas y ofrecer la función en tu sitio.

Integración de APIs

Objetos:

  • GenerativeQuestionsFeatureConfig
  • GenerativeQuestionConfig
  • Servicio 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. La pregunta se genera de forma predeterminada mediante un LLM, pero el administrador puede cambiarla.

Habilitar el filtrado de productos conversacional

Objeto:

  • GenerativeQuestionsFeatureConfig

Este objeto es un archivo de configuración de control que permite habilitar la función de preguntas generativas para gestionar la experiencia de servicio general del filtrado de productos conversacional. GenerativeQuestionsFeatureConfig usa el método GET para obtener información sobre los atributos y si estos se pueden indexar o no del catálogo asociado al proyecto.

El interruptor feature_enabled determina si las preguntas se usan en el momento de servir. Gestiona los interruptores de nivel superior de la consola.

Experiencia de publicación

El filtrado de productos conversacional se basa en mantener una conversación con el usuario en la que se suceden varias interacciones. Por lo tanto, se necesita al menos una segunda respuesta para que funcione el filtrado de productos conversacional. En la respuesta, se le muestra al usuario una pregunta de seguimiento y respuestas sugeridas. El usuario puede responder a esta pregunta escribiendo su respuesta o haciendo clic en una de las respuestas sugeridas (opción de respuesta múltiple).

La opción de selección múltiple funciona en segundo plano como una faceta (un filtro de tipo de evento), que acota la consulta mediante el filtrado. En segundo plano, cuando el usuario hace clic en una respuesta de varias opciones, se aplica un filtro a la consulta. Aplicar un filtro mediante una conversación con varias opciones es lo mismo que aplicar el mismo filtro mediante facetas o baldosas dinámicas.

Servicio habilitado por la función

El servicio de preguntas generativas (service GenerativeQuestionService{...}) se usa para gestionar las preguntas generadas por LLMs. Su objeto principal es el catálogo, del que obtiene información para devolver preguntas de un catálogo concreto. El servicio se usa para gestionar el estado general de la función de preguntas generativas, hacer cambios individuales o por lotes y activar o desactivar preguntas. Para interactuar con la API de servicio, se deben cumplir los requisitos de datos y las preguntas deben inicializarse antes de poder gestionarlas.

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

  • Gestores de GenerativeQuestionsFeatureConfig (a nivel de función):

    1. Actualizar: permite cambiar el número mínimo de productos y habilitar campos.
    2. Get devuelve un objeto.
  • Gestores de configuración de GenerativeQuestion (a nivel de pregunta):

    1. List: devuelve todas las preguntas de un catálogo determinado.
    2. Actualizar: permite gestionar las preguntas de forma individual.
    3. Actualización por lotes: permite gestionar preguntas agrupadas.

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

El modelo 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 utilicen llamando 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 preguntas diferentes en función de la consulta anterior. No hay pesos fijos. La IA que controla las preguntas generadas por el LLM aprende de las consultas y cambia la ponderación de cada una de ellas. Por ejemplo, "camiseta" pondera mucho la categoría, mientras que "camiseta roja XL" pondera la categoría, la talla y el color.

Configurar la experiencia de publicación

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

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

  1. API Conversation
  2. API Search
  • ConversationalFilteringSpec: este campo opcional se ha añadido a ConversationalSearchRequest, pero es obligatorio si quieres usar la función de filtrado conversacional. El campo reutiliza los campos SearchRequest, query y filter. También incluye un campo para habilitar una pregunta de seguimiento que se le hace al usuario después de una consulta 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 respuestas predefinidas conversacionales en ConversationalSearchResponse. Esto incluye conversation_id, refined_query, additional_filters, follow_up_question y suggested_answers.

Recorrido del usuario con la API de flujo conversacional

El usuario inicia una búsqueda con una consulta inicial y asigna el valor CONVERSATIONAL_FILTER_ONLY a la marca mode. A continuación, el usuario selecciona una respuesta, que se envía de vuelta a la API mediante el campo user_answer.

La API Conversational proporciona el campo additional_filter en la respuesta. El usuario debe aplicar estos filtros a la solicitud de seguimiento de la API Search. Los resultados de búsqueda se basan en la entrada del usuario y proporcionan una nueva pregunta de seguimiento, lo que da lugar a 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.

Si el filtrado de productos conversacional está habilitado en el sitio web, el recorrido del usuario y la interacción posterior con Vertex AI Search para el sector del comercio siguen este proceso:

  • Paso 1. El usuario envía la primera consulta a las APIs Search y Conversational. La API Search solo devuelve resultados de búsqueda. La API Conversational devuelve las respuestas sugeridas y las preguntas de seguimiento. Llama a la API Search para la misma consulta o page_category y obtiene los resultados de búsqueda.
  • Paso 2. Se envía a la búsqueda conversacional la conversación de seguimiento solicitada. Llama a la API Conversational con el modo de filtrado de conversaciones adecuado.
  • Paso 3. Respuesta de búsqueda inicial con solo resultados de búsqueda. La API Conversational perfecciona la consulta devolviendo las respuestas sugeridas y las preguntas de seguimiento.
  • Selección de usuario: el usuario selecciona una opción entre varias.
    • El filtro de respuesta seleccionado se envía a la API Conversational.
    • Las APIs Conversation y Search se ejecutan con el filtro aplicado.

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

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

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

No se ha producido ningún cambio en la solicitud de la API de búsqueda como parte del filtrado de productos conversacional.

Envía una solicitud a la API Conversational haciendo lo siguiente:

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

  • Define mode como CONVERSATIONAL_FILTER_ONLY para obtener una respuesta conversacional. Si se define como DISABLED, no se proporciona ninguna pregunta de seguimiento.

  • Rellena 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 Search.

La respuesta de la API Conversational sería la siguiente:

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. Como 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 consulta actual. Debe usar esta respuesta para llamar a la API Search y obtener los resultados de los productos.
  • followup_question: identifica la pregunta que se debe mostrar al usuario.
  • suggested_answers: lista ordenada de las respuestas de opción múltiple que se deben mostrar a los usuarios. Si quieres mostrar menos respuestas, muestra solo los primeros N resultados. La lista se ordena según el orden en el que se deben mostrar los resultados.

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

La búsqueda devuelve parámetros de conversación

El filtrado de productos conversacional ofrece estas opciones para mantener la interacción conversacional, lo que permite acotar las búsquedas más rápidamente:

Selección del usuario

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

Este ejemplo de código muestra que el usuario ha seleccionado la respuesta amarillo a la pregunta de selección múltiple y que se envía una nueva solicitud conversacional a la API de búsqueda. Para ello,se vuelve a enviar la consulta junto con el filtro de usuario correcto.

Para enviar una solicitud a la API Conversational, sigue estos pasos:

  1. Restaura el conversation_id del almacenamiento de sesión.
  2. Asigna el valor CONVERSATIONAL_FILTER_ONLY a mode.
  3. Define user_answer para lo que seleccione el usuario.

La respuesta de la API Conversational tiene este aspecto:

Qué debes hacer con la respuesta:

  • La respuesta de Google es prácticamente idéntica a la de la primera consulta, excepto que el campo additional_filter se puede usar para marcar la casilla del filtro color = yellow y se debe añadir a cualquier otro filtro que haya seleccionado el usuario.
  • El additional_filter también debe añadirse al evento de campo de filtro enviado a Google para esta consulta de seguimiento y la solicitud de búsqueda de seguimiento. Debe aplicarse en la solicitud de búsqueda para obtener productos de búsqueda y también en la solicitud de búsqueda conversacional para obtener la conversación de seguimiento.
  • El refined_query se debe enviar a la API Search para obtener productos más relevantes.