Ir al contenido principal

Recomendaciones de productos con sentido común mediante modelos de lenguaje grandes

por Avinash Sooriyarchchi, Sam Sawyer, Colton Peltier y Bryan Smith

Una imagen de glosario para AI generativa, que presenta varios términos y conceptos relacionados con la tecnología.

Eche un vistazo a nuestros LLM Solution Accelerators para el comercio minorista para obtener más detalles y descargar los notebooks.

Las recomendaciones de productos son una función principal de la experiencia del cliente moderna. Cuando los usuarios regresan a un sitio con el que han interactuado anteriormente, esperan ser recibidos con recomendaciones relacionadas con esas interacciones previas que les ayuden a retomar el camino donde lo dejaron. Cuando los usuarios interactúan con un artículo específico, esperan que se les sugieran alternativas similares y relevantes para ayudarles a encontrar el artículo adecuado para satisfacer sus necesidades. Y a medida que se colocan artículos en el carrito, los usuarios esperan que se les sugieran productos adicionales que completen y mejoren su experiencia de compra general. Cuando se hacen bien, estas recomendaciones de productos no solo facilitan el proceso de compra, sino que también hacen que el cliente se sienta reconocido y comprendido por la tienda.

Aunque existen muchos enfoques diferentes para generar recomendaciones de productos, la mayoría de los motores de recomendación actuales se basan en patrones históricos de interacción entre productos y clientes, aprendidos mediante la aplicación de técnicas sofisticadas a grandes colecciones de datos específicos del comercio minorista. Estos motores son sorprendentemente robustos a la hora de reforzar los patrones aprendidos a partir de interacciones exitosas con los clientes, pero a veces necesitamos romper con estos patrones históricos para ofrecer una experiencia diferente.

Considere el escenario en el que se ha introducido un nuevo producto para el cual solo hay un número limitado de interacciones en nuestros datos. Los recomendadores que requieren conocimientos aprendidos a partir de numerosas interacciones con los clientes pueden no sugerir el producto hasta que se recopilen suficientes datos para respaldar una recomendación.

O considere otro escenario en el que un solo producto atrae una cantidad desmesurada de atención. En este escenario, el recomendador corre el riesgo de caer en la trampa de sugerir siempre este único artículo debido a su abrumadora popularidad, en detrimento de otros productos viables de la cartera.

Para evitar estos y otros desafíos similares, los minoristas podrían incorporar una táctica que emplee patrones de asociación de productos ampliamente reconocidos basados en el conocimiento común. Al igual que un vendedor servicial, este tipo de recomendador podría examinar los artículos por los que el cliente parece tener interés y sugerir artículos adicionales que parezcan alinearse con el camino o los caminos que esas combinaciones de productos puedan indicar.

Uso de un modelo de lenguaje grande para hacer recomendaciones

Considere el escenario en el que un cliente compra bufandas de invierno, gorros y mitones. Claramente, este cliente se está preparando para una salida con clima frío. Supongamos que el minorista ha introducido recientemente calcetines de lana gruesos y botas de invierno en su cartera de productos. Mientras que otros recomendadores podrían no detectar aún la asociación de estos artículos con los que el cliente está buscando debido a la falta de interacciones en los datos históricos, el conocimiento común vincula estos artículos.

Este tipo de conocimiento suele ser capturado por los modelos de lenguaje grande (LLMs), entrenados en grandes volúmenes de texto general. En ese texto, los mitones y las botas podrían estar vinculados directamente por personas que se ponen ambos artículos antes de salir al aire libre, y asociarse con conceptos como “frío”, “nieve” e “invierno” que refuerzan la relación y atraen otros artículos relacionados.

Cuando luego se le pregunta al LLM qué otros artículos podrían estar asociados con una bufanda, un gorro y unos mitones, todo este conocimiento, capturado en miles de millones de parámetros internos, se utiliza para sugerir una lista priorizada de artículos adicionales que probablemente sean de interés. (Figura 1)

Figura 1. Artículos adicionales sugeridos por el LLM Llama2-70b dado el interés de un cliente en bufandas de invierno, gorros y mitones
">

La belleza de este enfoque es que no nos limitamos a pedirle al LLM que considere solo los artículos del carrito de forma aislada. Podríamos reconocer que un cliente que compra estos artículos de invierno en el sur de Texas puede tener un cierto conjunto de preferencias que difieren de las de un cliente que compra estos mismos artículos en el norte de Minnesota, e incorporar esa información geográfica en el prompt del LLM. También podríamos incorporar información sobre campañas promocionales o eventos para animar al LLM a sugerir artículos asociados con esos esfuerzos. Una vez más, al igual que un empleado de la tienda, el LLM puede equilibrar una variedad de entradas para llegar a un conjunto de recomendaciones significativo pero relevante.

Conexión de las recomendaciones con los productos disponibles

¿Pero cómo relacionamos las sugerencias de productos generales proporcionadas por el LLM con los artículos específicos de nuestro catálogo de productos? Los LLM entrenados en conjuntos de datos disponibles públicamente no suelen tener conocimiento de los artículos específicos de la cartera de productos de un minorista, y entrenar un modelo de este tipo con información específica del minorista requiere mucho tiempo y es costoso.

La solución a este problema es relativamente sencilla. Utilizando un modelo de embedding ligero, como uno de los muchos modelos de código abierto disponibles gratuitamente en línea, podemos traducir la información descriptiva y otros metadatos de cada uno de nuestros productos en lo que se conoce como embeddings. (Figura 2)

Figura 2. Un embedding muy abreviado para la descripción del producto asociado con un par de botas de invierno producido utilizando el modelo all-MiniLM-L6-v2.

El concepto de embedding se vuelve un poco técnico, pero en pocas palabras, es una representación numérica del texto y de cómo mapea un conjunto de conceptos y relaciones reconocidos que se encuentran dentro de un idioma determinado. Dos artículos conceptualmente similares entre sí, como las botas de invierno generales y las Acme Troopers específicas que permiten a quien las lleva caminar por calles urbanas nevadas o por senderos de montaña con la comodidad de una parte superior de lona impermeable y cuero para soportar lo peor del invierno, tendrían representaciones numéricas muy similares cuando se pasan a través de un LLM adecuado. Si calculamos la diferencia matemática (distancia) entre los embeddings asociados con cada artículo, veríamos que habría relativamente poca separación entre ellos. Esto indicaría que estos artículos están estrechamente relacionados.

Para poner en práctica este concepto, todo lo que tendríamos que hacer es convertir todas nuestras descripciones de productos específicas y metadatos en embeddings y almacenarlos en un índice de búsqueda, lo que a menudo se denomina vector store. A medida que el LLM realiza recomendaciones generales de productos, traduciríamos cada una de estas en sus propios embeddings y buscaríamos en el vector store los artículos más estrechamente relacionados, lo que nos proporcionaría artículos específicos de nuestra cartera para presentar a nuestro cliente. (Figura 3)

Figura 3. Flujo de trabajo conceptual para realizar recomendaciones de productos específicas utilizando un LLM
">

Integración de la solución con Databricks

El patrón de recomendador presentado aquí puede ser una excelente adición al conjunto de recomendadores utilizados por las organizaciones en escenarios donde se puede aprovechar el conocimiento general de las asociaciones de productos para hacer sugerencias útiles a los clientes. Para poner en marcha la solución, las organizaciones deben tener la capacidad de acceder a un modelo de lenguaje grande, así como a un modelo de embedding ligero, y reunir la funcionalidad de ambos con su propia información patentada. Una vez hecho esto, la organización necesita la capacidad de convertir todos estos activos en una solución que pueda integrarse y escalarse fácilmente en toda la gama de interfaces orientadas al cliente donde se necesitan estas recomendaciones.

A través de la Databricks Data Intelligence Platform, las organizaciones pueden abordar cada uno de estos desafíos mediante un entorno único, coherente y unificado que facilita la implementación y el despliegue de manera rentable, al tiempo que preserva la privacidad de los datos. Con la nueva capacidad AI Search de Databricks, los desarrolladores pueden aprovechar un almacén de vectores integrado con flujos de trabajo complementarios que garantizan que los embeddings alojados en su interior estén actualizados. A través de las nuevas Foundation Model APIs, los desarrolladores pueden acceder a una amplia gama de modelos de lenguaje grande de código abierto y propietarios con una configuración mínima. Y gracias a las capacidades mejoradas de Model Serving, el flujo de trabajo de recomendación de extremo a extremo se puede empaquetar para su despliegue detrás de un endpoint abierto y seguro que permite la integración en la más amplia gama de aplicaciones modernas.

Pero no se quede solo con nuestra palabra. Compruébelo usted mismo. En nuestro acelerador de soluciones más reciente, hemos creado un recomendador de productos basado en LLM que implementa el patrón que se muestra aquí y demuestra cómo se pueden unificar estas capacidades para pasar del concepto al despliegue operativo. Todo el código está disponible de forma gratuita y lo invitamos a explorar esta solución en su propio entorno como parte de nuestro compromiso de ayudar a las organizaciones a maximizar el potencial de sus datos.

Descargue los notebooks

(Esta entrada del blog ha sido traducida utilizando herramientas basadas en inteligencia artificial) Publicación original

Recibe las últimas publicaciones en tu bandeja de entrada

Suscríbete a nuestro blog y recibe las últimas publicaciones directamente en tu bandeja de entrada.