RAG complet : une architecture moderne pour l’hyperpersonnalisation
La personnalisation est la clé de la fidélisation client à long terme pour de nombreux produits centrés sur l’utilisateur. Par exemple, Netflix ou Disney peuvent garantir la satisfaction des utilisateurs grâce à des recommandations de films personnalisées ; les applications de livraison de repas peuvent suggérer des restaurants et des plats en fonction des commandes passées, etc. L’intelligence artificielle fournit différentes techniques pour exploiter les données historiques du client et offrir une personnalisation dans les produits.
Mike Del Balso, CEO et cofondateur de Tecton, a récemment donné une conférence sur l’utilisation de l’architecture RAG pour améliorer la personnalisation des moteurs de recommandation d’IA lors du Unstructured Data Meetup organisé par Zilliz.
Mike a partagé un fait intéressant qu’il avait lu dans un rapport de conseil : « There’s going to be 5 trillion dollars of value added to global GDP deriving from AI-powered personalization. » Il a également présenté une architecture basée sur la génération augmentée par récupération (Retrieval Augmented Generation, RAG) pour atteindre l’hyperpersonnalisation.
Cet article récapitulera ses principales perspectives sur les personnalisations alimentées par l’IA et la manière dont les entreprises peuvent alimenter leurs produits avec l’intelligence artificielle.
Regarder le replay de la conférence de Mike
Personnalisation avec des modèles d’IA générative
Mike commence par un exemple de cas d’utilisation : créer un produit similaire à Booking.com ou MakeMyTrip, mais avec des recommandations de voyage hyperpersonnalisées.
Les grands modèles de langage (LLMs) comme GPT sont entraînés sur de vastes corpus de textes et peuvent générer des recommandations de voyage. Par exemple, si nous interrogeons un LLM : « Où devrais-je aller cet été ? », nous obtiendrons des réponses basées sur les destinations estivales les plus populaires, comme Paris ou Tokyo. Mais nous avons besoin d’un moyen d’adapter ces recommandations à chaque client.
Deux techniques sont disponibles pour améliorer votre modèle de recommandation : le fine-tuning et le prompt engineering.
Bien que ces techniques puissent rendre la réponse du modèle plus pertinente en fonction des données d’entraînement disponibles, elles ne fournissent pas de moyen d’intégrer les données d’entrée du client. Full-RAG est une méthode qui peut résoudre ce problème. Avant de comprendre ce qu’est Full-RAG et comment il fonctionne, récapitulons le fonctionnement du RAG traditionnel.
Introduction à RAG
La génération augmentée par récupération (RAG) est une technique qui améliore la réponse des grands modèles de langage en termes de qualité et de pertinence. Un moteur RAG se compose généralement de deux composants clés : un récupérateur et un générateur. Un récupérateur combine un modèle d’embedding et une base de données vectorielle comme Milvus ou Zilliz Cloud, et un générateur est le LLM.
À l’étape de récupération, nous effectuons une recherche dans la base de données vectorielle qui stocke tous les documents et sélectionnons les plus pertinents. Les documents ou candidats Top-K sont sélectionnés puis fournis en entrée au modèle d’IA générative. Le modèle génère une réponse cohérente en utilisant la requête et les candidats Top-K.
Le pipeline RAG ci-dessous explique le fonctionnement du RAG traditionnel.
Tous les documents sont transformés en embeddings vectoriels et stockés dans une base de données vectorielle.
La requête utilisateur est également convertie en embedding vectoriel.
Nous utilisons ce vecteur pour récupérer les candidats les plus similaires dans la base de données vectorielle.
Ces meilleurs candidats, comme Paris et Tokyo, sont envoyés à un LLM, qui génère la réponse.
Cependant, les meilleurs candidats récupérés ici n’ont pas de contexte sur les goûts et les aversions de l’utilisateur particulier, ce sont donc des « Candidats non contextualisés ».
Full-RAG : ajouter du contexte dans le pipeline de récupération
Étant donné que les candidats récupérés dans un pipeline RAG de base ne sont pas contextualisés, nous devons ajouter ce contexte pour obtenir de meilleures réponses. L’objectif est de construire un moteur doté d’un contexte et d’une expertise élevés.
Mike souligne comment la fourniture de contexte peut enrichir les informations récupérées : « _Le contexte est l’information pertinente que les modèles d’IA utilisent pour comprendre une situation et prendre des décisions. »
Dans l’exemple précédent de cas d’utilisation consistant à créer un agent de voyage IA, nous pouvons ajouter du contexte au modèle de deux façons :
1: Ajouter le contexte des candidats (lieux) : Lors de la recommandation d’une ville, le modèle doit connaître les détails de la dynamique. Par exemple, la météo actuelle, le type d’activités, les cuisines locales célèbres, un budget approximatif, les sites historiques ou patrimoniaux à visiter, etc. Ces informations aident les utilisateurs à planifier leurs vacances.
- Contexte personnalisé de l’utilisateur : Il s’agit de fournir des informations sur l’identité de l’utilisateur ainsi que sur ses préférences et ses contraintes. Ces informations enrichissent les meilleurs candidats récupérés avec des informations au niveau de l’utilisateur. Par exemple, fournir du contexte sur des questions comme :
L’utilisateur s’intéresse-t-il à l’histoire ?
Quel climat l’utilisateur préférerait-il ?
L’utilisateur sera-t-il intéressé par les activités de sports d’aventure ?
Quel type d’hébergement préfère-t-il ?
Avec du contexte sur ce qu’une ville offre et sur ce que l’utilisateur souhaite, le modèle d’IA peut mieux faire correspondre la destination adaptée. En outre, il peut suggérer des activités, des événements et des options d’hébergement adaptés à ses préférences.
Comment pouvons-nous créer des contextes personnalisés remarquables avec Tecton ?
Tecton a développé une plateforme de fonctionnalités pour intégrer différentes sources de données métier. Vous pouvez facilement créer et gérer le contexte personnalisé dont nous avons besoin pour fournir l’algorithme de recommandation. La plateforme de fonctionnalités prend les données du candidat et les données utilisateur pertinentes, puis récupère des candidats contextualisés à partir d’une base de données vectorielle comme Milvus.
Les contextes personnalisés peuvent être construits et gérés à quatre grands niveaux.
Niveau 0 : base
Il s’agit de la couche de base ou du point de départ, sans information supplémentaire. Le diagramme ci-dessous montre comment un RAG fonctionne avec zéro information contextuelle.
Niveau 1 : contexte par lots
Le niveau suivant fournit des données historiques, telles que l’historique des voyages, les activités favorites, etc. La mise en œuvre de ce niveau est difficile, car vous devez créer des pipelines pour récupérer et joindre des données provenant de différents entrepôts ou lacs de données. Vous devrez également créer des jeux de données d’évaluation historiques pour l’analyse comparative et le développement.
La plateforme de fonctionnalités de Tecton simplifie le processus de création d’un contexte par lots. Vous pouvez commencer par une définition de contexte simple comme « Quels sont les cinq derniers endroits que cet utilisateur a visités ? ». La plateforme fournit également un SDK Python pour coder votre définition et prend en charge la lecture et l’évaluation des données en temps réel.
À ce stade, votre LLM de recommandation peut tirer des enseignements du contexte historique et fournir des suggestions. Par exemple, si l’utilisateur a visité de nombreux sites historiques par le passé, il suggérerait de visiter les temples de l’ancienne ville de Kyoto.
Niveau 2 : contexte de données par lots + en streaming
L’ajout d’informations en streaming sur l’utilisateur, telles que les films, les vidéos et les blogs qu’il regarde et lit, peut aider notre modèle à comprendre ses intérêts actuels. Ces informations en streaming peuvent inclure les données de recherche de l’utilisateur, ses données d’achat ou ses interactions de session sur des pages web.
Le défi ici consiste à intégrer des pipelines de données en streaming et à les mettre en production. Lors d’une mise en œuvre à grande échelle, le coût de la création du modèle comme de l’inférence en temps réel peut être plus élevé.
Tecton simplifie la création de contexte en streaming. Par exemple, cela commence par une définition de contexte simple : « Au cours de la dernière heure, sur quels sujets l’utilisateur a-t-il regardé une vidéo ? ». Cela peut être codé dans le SDK Python de la plateforme. Nous pouvons le tester, le déployer en production et l’utiliser en temps réel. La recommandation à ce stade est nettement meilleure que la précédente. Par exemple, si l’utilisateur a recherché des vols pour le Japon et aime la haute gastronomie, le LLM organisera une expérience gastronomique au Japon.
Niveau 3 : Données batch + streaming + contexte en temps réel
L’étape suivante consiste à intégrer des données en temps réel afin d’obtenir un signal de haute qualité. Ce contexte peut aider votre modèle à mieux comprendre l’intention de l’utilisateur. Ces données incluent les requêtes de recherche de l’utilisateur et la consultation de données provenant d’autres applications en temps réel. Par exemple, nous devons consulter les prix des vols en temps réel pour suggérer l’option la moins chère.
Le plus grand défi consiste à intégrer les sources de données tierces en temps réel et à gérer le compromis entre vitesse et coûts. Avec des recommandations personnalisées en temps réel, les utilisateurs les trouveront très utiles, car elles leur font gagner du temps au lieu de faire des recherches seuls.
Vous pourriez également ajouter un contexte de niveau feedback par-dessus cela. Le feedback de l’utilisateur sur la recommandation fournie peut aider le modèle à s’orienter dans la bonne direction.
Conclusion
Le contexte peut améliorer la personnalisation de l’IA dans de nombreux cas, comme des expériences d’achat sur mesure, la création de chatbots, la fourniture de conseils en finances personnelles ou la recommandation de nouveaux films. Des niveaux de personnalisation plus élevés améliorent l’expérience produit, mais la difficulté de construction augmente en parallèle.
RAG est une technique importante pour fournir aux LLM des informations supplémentaires spécifiques à un domaine, afin d’obtenir des informations meilleures et plus pertinentes. C’est également la clé de la fidélisation à long terme des clients pour de nombreux produits GenAI centrés sur l’utilisateur.
Un RAG standard comprend un récupérateur alimenté par une base de données vectorielle et un générateur LLM. Toutes les informations supplémentaires sont stockées dans une base de données vectorielle comme Milvus, et le LLM génère des réponses à partir des informations récupérées qui sont pertinentes pour les requêtes des utilisateurs.
Bien qu’efficace pour traiter les hallucinations, un système RAG standard montre ses limites dans des cas d’utilisation comme la fourniture de recommandations hyperpersonnalisées. Cela s’explique par le fait que les candidats top-k récupérés peuvent ne pas disposer d’un contexte plus personnalisé sur les goûts et les aversions de l’utilisateur particulier.
Tecton fournit une solution qui assemble le contexte personnalisé pour les LLM, simplifiant ainsi le processus pour les entreprises. Cependant, des défis importants subsistent, tels que le contrôle de version, la gouvernance des modèles et le débogage pour trouver la cause racine.
Pour plus d’informations sur ce sujet, regardez l’enregistrement vidéo du meetup de Mike.
Continuer à lire

Introducing Zilliz CLI and Agent Skills for Zilliz Cloud
Manage your vector database from your terminal or AI coding agent. Zilliz CLI and Agent Skills work with Claude Code, Cursor, Codex, and Copilot.

Vector Databases vs. Object-Relational Databases
Use a vector database for AI-powered similarity search; use an object-relational database for complex data modeling with both relational integrity and object-oriented features.

Optimizing Embedding Model Selection with TDA Clustering: A Strategic Guide for Vector Databases
Discover how Topological Data Analysis (TDA) reveals hidden embedding model weaknesses and helps optimize vector database performance.


