RAG completo: Una arquitectura moderna para la hiperpersonalización
La personalización es la clave para la retención de clientes a largo plazo en muchos productos centrados en el usuario. Por ejemplo, Netflix o Disney pueden garantizar la satisfacción del usuario mediante recomendaciones de películas personalizadas; las aplicaciones de entrega de comida pueden sugerir restaurantes y platos según pedidos anteriores, etc. La Inteligencia Artificial proporciona diferentes técnicas para aprovechar los datos históricos del cliente y ofrecer personalización en los productos.
Mike Del Balso, CEO y cofundador de Tecton, recientemente dio una charla sobre el uso de la arquitectura RAG para mejorar la personalización de los motores de Recomendación de IA en el Unstructured Data Meetup organizado por Zilliz.
Mike compartió un dato interesante que había leído en un informe de consultoría: “Habrá 5 billones de dólares de valor agregado al PIB global derivado de la personalización impulsada por IA.” También presentó una arquitectura basada en Retrieval Augmented Generation(RAG) para lograr la hiperpersonalización.
Esta publicación resumirá sus ideas clave sobre las personalizaciones impulsadas por IA y cómo las empresas pueden potenciar sus productos con inteligencia artificial.
Mira la repetición de la charla de Mike
Personalización con modelos de IA generativa
Mike comienza con un ejemplo de caso de uso: crear un producto similar a Booking.com o MakeMyTrip, pero con recomendaciones de viaje hiperpersonalizadas.
Los Large Language Models (LLMs) como GPT se entrenan con vastos corpus de texto y pueden generar recomendaciones de viaje. Por ejemplo, si consultamos a un LLM: “¿Adónde debería ir este verano ?”, obtendremos respuestas basadas en los destinos de verano más populares, como París o Tokio. Pero necesitamos una forma de adaptar estas recomendaciones a clientes individuales.
Hay dos técnicas disponibles para mejorar tu modelo de recomendación: fine-tuning y prompt engineering.
Si bien estas técnicas pueden hacer que la respuesta del modelo sea más relevante según los datos de entrenamiento disponibles, no proporcionan una forma de incorporar los datos de entrada del cliente. Full-RAG es un método que puede resolver este problema. Antes de entender qué es Full-RAG y cómo funciona, recapitulemos cómo funciona el RAG tradicional.
Introducción a RAG
Retrieval Augmented Generation (RAG) es una técnica que mejora la respuesta de los modelos de lenguaje grandes en términos de calidad y relevancia. Un motor RAG generalmente consta de dos componentes clave: un Retriever y un Generator. Un retriever combina un modelo de embeddings y una base de datos vectorial como Milvus o Zilliz Cloud, y un generator es el LLM.
En la etapa de recuperación, buscamos en la base de datos vectorial que almacena todos los documentos y seleccionamos los más relevantes. Se seleccionan los documentos o candidatos Top-K y luego se proporcionan como entrada al modelo de IA generativa. El modelo genera una respuesta coherente utilizando la consulta y los candidatos Top-K.
El pipeline RAG a continuación explica cómo funciona el RAG tradicional.
Todos los documentos se transforman en vector embeddings y se almacenan en una base de datos vectorial.
La consulta del usuario también se convierte en un vector embedding.
Usamos este vector para recuperar los candidatos más similares de la base de datos vectorial.
Estos candidatos principales, como París y Tokio, se envían a un LLM, que genera la respuesta.
Sin embargo, los principales candidatos recuperados aquí no tienen contexto sobre los gustos y disgustos del usuario en particular, por lo que son “Candidatos no contextualizados.”
Full-RAG: Añadir contexto en el pipeline de recuperación
Dado que los candidatos recuperados en un pipeline RAG básico no están contextualizados, necesitamos añadir ese contexto para obtener mejores respuestas. El objetivo es crear un motor con alto contexto y experiencia.
Mike enfatiza cómo proporcionar contexto puede enriquecer la información recuperada: “_El contexto es la información relevante que los modelos de IA utilizan para comprender una situación y tomar decisiones.”
En el ejemplo anterior de caso de uso de creación de un agente de viajes con IA, podemos añadir contexto al modelo de dos maneras:
1: Añadir contexto de los candidatos (ubicaciones): Al recomendar una ciudad, el modelo debe conocer los detalles de la dinámica. Por ejemplo, el clima actual, el tipo de actividades, las cocinas locales famosas, un presupuesto aproximado, sitios históricos o patrimoniales que visitar, etc. Esta información ayuda a los usuarios a planificar sus vacaciones.
- Contexto personalizado del usuario: Se refiere a proporcionar información sobre quién es el usuario y cuáles son sus preferencias y restricciones. Esta información enriquece los principales candidatos recuperados con información a nivel de usuario. Por ejemplo, proporcionar contexto sobre preguntas como:
¿Está el usuario interesado en la historia?
¿Qué clima preferiría el usuario?
¿Estará el usuario interesado en actividades de deportes de aventura?
¿Qué tipo de alojamiento prefiere?
Con contexto sobre lo que ofrece una ciudad y lo que quiere el usuario, el modelo de IA puede emparejar mejor el destino adecuado. Además, puede sugerir actividades, eventos y opciones de alojamiento adaptadas a sus preferencias.
¿Cómo podemos crear contextos personalizados increíbles con Tecton?
Tecton ha desarrollado una plataforma de características para integrar diferentes fuentes de datos empresariales. Puedes crear y gestionar fácilmente el contexto personalizado que necesitamos proporcionar al algoritmo de recomendación. La plataforma de características toma el candidato y los datos relevantes del usuario y recupera candidatos contextualizados de una base de datos vectorial como Milvus.
Los contextos personalizados pueden crearse y gestionarse en cuatro niveles generales.
Nivel 0: Base
Esta es la capa base o el punto de partida, sin información adicional. El diagrama a continuación muestra cómo funciona un RAG con cero información contextual.
Nivel 1: Contexto por lotes
El siguiente nivel proporciona datos históricos, como historial de viajes, actividades favoritas, etc. Implementar este nivel es un desafío, ya que debes crear pipelines para recuperar y unir datos de diferentes almacenes de datos o lagos de datos. También necesitarías crear conjuntos de datos de evaluación históricos para benchmarking y desarrollo.
La plataforma de características de Tecton simplifica el proceso de crear contexto por lotes. Puedes empezar con una definición de contexto simple como “¿Cuáles son los últimos cinco lugares que ha visitado este usuario?”. La plataforma también proporciona un SDK de Python para programar tu definición y admite la lectura y evaluación de los datos en tiempo real.
En esta etapa, tu LLM de recomendación puede extraer información del contexto histórico y proporcionar sugerencias. Por ejemplo, si el usuario ha visitado muchos sitios históricos en el pasado, sugeriría visitar los templos de la antigua ciudad de Kioto.
Nivel 2: Contexto de datos por lotes + streaming
Agregar información de streaming sobre el usuario, como las películas, videos y blogs que ve y lee, puede ayudar a nuestro modelo a comprender sus intereses actuales. Esta información de streaming puede incluir los datos de búsqueda del usuario, datos de compra o interacciones de sesión en páginas web.
El desafío aquí es incorporar pipelines de datos de streaming y llevarlos a producción. Al implementarlo a escala, el costo tanto para la creación del modelo como para la inferencia en tiempo real puede ser mayor.
Tecton simplifica la creación de contexto de streaming. Por ejemplo, comienza con una definición de contexto simple: "En la última hora, ¿sobre qué temas vio el usuario un video?”. Esto se puede codificar en el SDK de Python de la plataforma. Podemos probarlo, desplegarlo en producción y usarlo en tiempo real. La recomendación en esta etapa es significativamente mejor que la anterior. Por ejemplo, si el usuario ha estado buscando vuelos a Japón y le encanta la alta cocina, el LLM seleccionará una experiencia gastronómica en Japón.
Nivel 3: Datos por lotes + Streaming + Contexto en tiempo real
La siguiente etapa consiste en incorporar datos en tiempo real para obtener una señal de alta calidad. Este contexto puede ayudar a tu modelo a comprender mejor la intención del usuario. Estos datos incluyen las consultas de búsqueda del usuario y la consulta de datos de otras aplicaciones en tiempo real. Por ejemplo, debemos consultar los precios de vuelos en tiempo real para sugerir la opción más barata.
El mayor desafío es integrar las fuentes de datos en tiempo real de terceros y gestionar el equilibrio entre velocidad y costos. Con recomendaciones personalizadas en tiempo real, los usuarios las encontrarán muy valiosas, ya que les ahorran tiempo en lugar de tener que investigar por su cuenta.
También podrías añadir una capa de contexto de retroalimentación además de esto. La retroalimentación del usuario sobre la recomendación proporcionada puede ayudar al modelo a orientarse en la dirección correcta.
Conclusión
El contexto puede mejorar la personalización de IA en numerosos casos, como experiencias de compra a medida, la creación de chatbots, la provisión de asesoramiento financiero personal o la recomendación de nuevas películas. Niveles más altos de personalización mejoran la experiencia del producto, pero la dificultad de construcción aumenta en paralelo.
RAG es una técnica importante para proporcionar a los LLMs información adicional específica del dominio para obtener información mejor y más relevante. También es clave para la retención de clientes a largo plazo para muchos productos de GenAI centrados en el usuario.
Un RAG estándar comprende un recuperador impulsado por una base de datos vectorial y un generador LLM. Toda la información adicional se almacena en una base de datos vectorial como Milvus, y el LLM genera respuestas basadas en la información recuperada que es relevante para las consultas de los usuarios.
Aunque es eficaz para abordar las alucinaciones, un sistema RAG estándar se queda corto en casos de uso como proporcionar recomendaciones hiperpersonalizadas. Esto se debe a que los candidatos top-k recuperados podrían no tener más contexto personalizado sobre los gustos y disgustos del usuario en particular.
Tecton proporciona una solución que reúne el contexto personalizado para los LLMs, agilizando el proceso para las empresas. Sin embargo, siguen existiendo desafíos importantes, como el control de versiones, la gobernanza del modelo y la depuración para encontrar la causa raíz.
Para obtener más información sobre este tema, mira la grabación del video del meetup de Mike.
Sigue leyendo

8 Latest RAG Advancements Every Developer Should Know
Explore eight advanced RAG variants that can solve real problems you might be facing: slow retrieval, poor context understanding, multimodal data handling, and resource optimization.

Vector Databases vs. Key-Value Databases
Use a vector database for AI-powered similarity search; use a key-value database for high-throughput, low-latency simple data lookups.

Milvus WebUI: A Visual Management Tool for Your Vector Database
Explore Milvus WebUI to monitor, manage, and optimize your vector database with real-time insights, performance tracking, and system health monitoring.


