Les bases de données vectorielles sont la base de la récupération RAG
Pourquoi RAG restera-t-il malgré les avancées des LLM ?
La mise en œuvre d’un chatbot alimenté par la technologie de génération augmentée par récupération (RAG) change la donne pour les entreprises qui cherchent à améliorer leur support client. Cette approche combine les capacités conversationnelles des grands modèles de langage avec les connaissances stockées dans une base de données RAG provenant de domaines variés, tels que le conseil juridique, les bots de support client, l’assistance éducative, la santé, et bien plus encore.
Un cadre standard de génération augmentée par récupération se compose de deux systèmes principaux : le Retriever et le Generator. Le Retriever segmente les données (comme les documents), encode les données en vector embeddings, crée des index (vecteurs de segments) et récupère les résultats sémantiquement pertinents en effectuant une recherche sémantique avec les vector embeddings. Le Generator, quant à lui, utilise le contexte tiré du processus de récupération pour fournir une invite aux grands modèles de langage (LLM), qui génèrent ensuite des réponses précises.
Une architecture RAG générique. Les requêtes des utilisateurs, couvrant différentes modalités, servent d’entrée à la fois au retriever et au generator. Le retriever extrait les informations pertinentes des sources de données. Le generator interagit avec les résultats de récupération et produit finalement des résultats de diverses modalités. Source : https://arxiv.org/pdf/2402.19473
L’efficacité des systèmes de génération augmentée par récupération découle de leur combinaison synergique de systèmes de récupération et de modèles génératifs. Les systèmes de récupération fournissent des informations, des faits et des données précis et pertinents, tandis que les modèles génératifs élaborent des réponses flexibles et enrichies contextuellement. Cette double approche permet à RAG de traiter des demandes complexes et de produire efficacement des réponses riches et informatives, ce qui s’avère inestimable dans les systèmes nécessitant un traitement, une compréhension et une génération nuancés du langage naturel.
La technologie de génération augmentée par récupération présente des avantages par rapport aux grands modèles de langage traditionnels, notamment :
Réduction des problèmes d’« hallucination » : La génération augmentée par récupération exploite des données externes pertinentes pour aider les LLM à générer des réponses plus exactes, améliorant ainsi la fiabilité et la traçabilité du résultat.
Confidentialité et sécurité des données renforcées : RAG peut gérer en toute sécurité des données privées comme une extension externe de la base de connaissances, empêchant d’éventuelles violations de données après l’entraînement du modèle.
Récupération d’informations en temps réel : RAG facilite l’acquisition en temps réel d’informations pertinentes, à jour et propres à un domaine, répondant ainsi au défi des informations obsolètes.
Bien que les avancées continues des LLM répondent également à ces problèmes grâce à des stratégies telles que l’affinage sur des jeux de données privés et la fourniture de données d’entraînement avec des fenêtres de texte plus longues, RAG demeure une solution robuste, fiable et rentable dans des applications GenAI plus larges grâce à :
Transparence et opérabilité : Contrairement aux processus opaques de l’affinage et de la gestion de textes longs, RAG offre des relations de modules plus claires et plus interconnectées, améliorant l’ajustabilité et l’interprétabilité.
Efficacité des coûts et rapidité de réponse : RAG nécessite moins de temps d’entraînement et entraîne des coûts plus faibles que les modèles affinés. Il surpasse également les LLM à traitement de contexte long en termes de vitesse de réponse et de coûts opérationnels.
Gestion des données privées : En séparant la base de connaissances des LLM, RAG sécurise un terrain de mise en œuvre pratique et gère efficacement les connaissances d’entreprise existantes et nouvellement acquises.
Même si beaucoup prédisent que RAG est au bord de la disparition à mesure que les LLM continuent d’évoluer et de progresser, je continue de croire que la technologie RAG perdurera. RAG est intrinsèquement complémentaire aux LLM, ce qui garantit sa pertinence prolongée et son succès dans de multiples applications.
Les bases de données vectorielles sont la base de la récupération RAG
Dans les applications de production réelles, la récupération RAG est souvent étroitement intégrée aux bases de données vectorielles, conduisant au développement d’une solution populaire de génération augmentée par récupération connue sous le nom de pile CVP, comprenant les technologies ChatGPT, Vector Database et Prompt-as-code. Cette solution innovante exploite les capacités efficaces de récupération par similarité des vector dbs afin d’améliorer les performances des LLM. Le système RAG peut récupérer rapidement des entrées de connaissances pertinentes dans la base de données vectorielle en transformant les requêtes des utilisateurs en embeddings vectoriels. Cette approche permet aux LLM d’accéder aux informations les plus récentes stockées dans la base de données lorsqu’ils répondent aux requêtes des utilisateurs, traitant efficacement des problèmes tels que les retards dans les mises à jour des connaissances et les inexactitudes occasionnelles dans le contenu généré, souvent appelées « hallucinations ».
De nombreuses autres technologies de récupération, notamment les moteurs de recherche, les bases de données relationnelles et les bases de données documentaires, sont disponibles sur le marché en plus des bases de données vectorielles populaires et des dbs. Cependant, les bases de données vectorielles constituent l’option la plus privilégiée dans les implémentations RAG en raison de leurs capacités supérieures à stocker et récupérer efficacement de vastes quantités d’embeddings vectoriels. Produits par des modèles d’apprentissage automatique, ces vecteurs représentent un large éventail de types de données, notamment le texte, les images, les vidéos et les sons, tout en capturant des détails sémantiques complexes.
Voici une analyse comparative des bases de données vectorielles par rapport à d’autres options technologiques en recherche d’information, soulignant pourquoi les bases de données vectorielles sont devenues le choix privilégié pour créer des applications RAG.
| Catégorie | Moteurs de recherche | Bases de données relationnelles | Bases de données documentaires | Bases de données vectorielles |
| Produits principaux | Elasticsearch | MySQL | MongoDB | Milvus |
| Principe de mise en œuvre | Utilise l’indexation inverséepour des recherches textuelles rapides avec des capacités limitées de recherche vectorielle | Emploie des modèles de données standardisés et SQL pour un traitement optimal des transactions, peine à gérer les données non structurées | Stocke les données au format JSON, offrant des modèles de données flexibles et une recherche plein texte de base, mais des capacités limitées de recherche sémantique | Conçue spécifiquement pour les vecteurs de grande dimension, utilise des algorithmes de plus proche voisin approximatif (ANN) pour des recherches de similarité sémantique efficaces |
| Cas d’utilisation | Idéal pour les recherches plein texte et l’analyse de données simple | Idéal pour les applications exigeant une forte cohérence et une gestion complexe des transactions | Bien adapté au développement rapide et aux environnements avec des changements fréquents de modèle de données | Optimal pour la recherche basée sur des données non structurées, comme les recherches d’images et de textes sémantiques |
| Efficacité de récupération de grands jeux de vecteurs (plus elle est élevée, mieux c’est) | Moyenne | Faible | Faible | Élevée |
| Capacité de généralisation multimodale (plus elle est élevée, mieux c’est) | Moyenne | Faible | Faible | Élevée |
| Adéquation à la récupération RAG(plus elle est élevée, mieux c’est) | Moyenne | Faible | Faible | Élevée |
| Coûts totaux(plus ils sont faibles, mieux c’est) | Élevés | Élevés | Moyens | Faibles |
Comparez les bases de données vectorielles avec d’autres technologies de recherche d’informations
Comme le montre le tableau ci-dessus, les bases de données vectorielles sont avantageuses dans les domaines suivants :
Principe de mise en œuvre : Les vecteurs encodent des significations sémantiques, et les bases de données vectorielles décodent la sémantique des requêtes à l’aide de modèles de deep learning, allant au-delà des simples recherches par mots-clés. La précision de la compréhension sémantique s’est améliorée avec les avancées de l’IA, faisant de la distance vectorielle une mesure standard de la similarité sémantique en NLP et positionnant les embeddings comme le format privilégié pour gérer divers types de données.
Efficacité de la recherche : Les vecteurs de grande dimension permettent des techniques avancées d’indexation et de quantification qui augmentent considérablement la vitesse de recherche et réduisent les besoins de stockage. Les bases de données vectorielles peuvent évoluer horizontalement pour gérer des volumes de données croissants tout en maintenant des temps de réponse rapides, essentiels pour les systèmes RAG traitant de nouvelles données, avec de vastes données pertinentes.
Capacité de généralisation : Contrairement aux bases de données traditionnelles qui traitent principalement du texte, les bases de données vectorielles stockent et traitent divers types de données non structurées, notamment des images, des vidéos et de l’audio. Cette polyvalence améliore la flexibilité et la fonctionnalité des systèmes RAG.
Coût total de possession : Les bases de données vectorielles sont plus faciles à déployer et à intégrer aux frameworks de machine learning existants grâce à leur configuration simple et à leurs API complètes. Cette accessibilité, associée à des coûts globaux plus faibles, en fait un choix privilégié parmi les développeurs d’applications RAG.
Améliorer les bases de données vectorielles pour des applications RAG plus performantes
Les bases de données vectorielles ont été une technologie de recherche fondamentale dans les systèmes RAG. Cependant, à mesure que les développeurs créent des applications RAG de plus en plus complexes et les utilisent dans des environnements de production, leur demande de réponses de meilleure qualité et plus précises aux requêtes des utilisateurs augmente, ce qui pose des défis aux bases de données vectorielles.
RAG use case.png
Un processus standard de construction de génération augmentée par recherche implique généralement plusieurs étapes : le prétraitement des données par segmentation, nettoyage des données et embedding ; la création et la gestion des index ; et l’utilisation de la recherche vectorielle pour localiser des segments similaires afin d’améliorer la génération de prompts. La plupart des bases de données vectorielles gèrent la création et la gestion des index ainsi que la récupération des données vectorielles, seules quelques-unes, comme Milvus, fournissant des fonctions d’embedding intégrées. Par conséquent, la qualité de la récupération des données vectorielles a un impact direct sur la pertinence et l’efficacité du contenu généré par le LLM.
De nombreuses optimisations d’ingénierie émergent pour améliorer la qualité de récupération des bases de données vectorielles, notamment le choix de tailles de chunks appropriées, la décision quant à la nécessité de segments qui se chevauchent, le choix de modèles d’embedding appropriés, l’ajout de balises de contenu, l’intégration d’une recherche basée sur le lexique pour une approche de recherche sémantique hybride, et le choix de rerankers. Nous pourrions intégrer bon nombre de ces tâches dans les bases de données vectorielles.
Plus précisément, les bases de données vectorielles devraient améliorer les domaines suivants :
Haute précision dans la recherche : Les bases de données vectorielles doivent exceller dans la récupération précise des documents ou extraits de données les plus pertinents sur la base des requêtes des utilisateurs grâce à des recherches de similarité vectorielle. Cela implique de traiter et d’interpréter des relations sémantiques complexes au sein d’espaces vectoriels de grande dimension afin de garantir que le contenu récupéré soit précisément aligné sur la requête de l’utilisateur.
Réponse rapide : Pour garantir une expérience utilisateur optimale, les bases de données vectorielles doivent fournir des résultats de recherche en quelques millisecondes. Cela exige la capacité d’accéder rapidement à des informations issues de vastes jeux de données et de les extraire. À mesure que les volumes de données augmentent et que les complexités des requêtes s’accroissent, ces bases de données doivent pouvoir évoluer de manière flexible, en gérant des jeux de données plus volumineux et des requêtes plus sophistiquées tout en maintenant systématiquement des performances de rappel fiables.
Gestion des données multimodales : Compte tenu de l’élargissement de l’éventail des cas d’usage, les bases de données vectorielles doivent non seulement gérer des données textuelles, mais aussi prendre en charge des images, des vidéos et d’autres types de données multimodales. Cela nécessite la prise en charge d’embeddings provenant de divers types de données et la capacité à récupérer efficacement des informations sur la base de requêtes modales variées.
Interprétabilité et débogabilité : Il est également essentiel que les bases de données vectorielles offrent des outils robustes de diagnostic et d’optimisation afin de résoudre les problèmes lorsque les résultats ne sont pas récupérés efficacement.
Conclusion
À mesure que la demande pour les applications de Retrieval Augmented Generation (RAG) continue d’augmenter, les développeurs utilisent de plus en plus la technologie RAG à diverses fins, notamment pour la collecte d’informations contextuellement pertinentes. Cette adoption croissante est appelée à transformer de nombreux secteurs en améliorant considérablement l’efficacité et l’exactitude factuelle de la récupération d’informations et de l’acquisition de connaissances, redéfinissant ainsi la manière dont les organisations accèdent aux données et les utilisent.
Les bases de données vectorielles, bien qu’encore relativement sous-utilisées, recèlent un immense potentiel en tant qu’infrastructure fondamentale des systèmes RAG. Parmi celles-ci, la base de données vectorielle Milvus se distingue, en s’attaquant activement aux défis associés au développement et à l’amélioration des applications RAG et en les surmontant. En tirant parti des enseignements des développeurs d’IA générative, Milvus affine continuellement ses capacités afin de mieux répondre aux besoins de l’industrie de l’intelligence artificielle.
Dans mon prochain article, je me pencherai sur la base de données vectorielle open source Milvus, en mettant en avant ses dernières fonctionnalités et en expliquant pourquoi elle constitue le choix idéal pour créer des applications RAG prêtes pour l’entreprise. Restez à l’écoute pour davantage d’analyses.
Continuer à lire

Migrating Self-Managed Milvus to Zilliz Cloud for >99% Latency Reduction
Step-by-step guide to migrating 50M vectors from self-managed Milvus to Zilliz Cloud using milvus-backup. Achieve >99% query latency reduction with zero data loss.

Why Context Engineering Is Becoming the Full Stack of AI Agents
Discover how context engineering unifies prompts, RAG, and tools to build smarter, production-ready AI agents powered by Milvus.

1 Table = 1000 Words? Foundation Models for Tabular Data
TableGPT2 automates tabular data insights, overcoming schema variability, while Milvus accelerates vector search for efficient, scalable decision-making.



