Select Page

Vector Database

Une Vector Database, ou base de données vectorielle, est un système de stockage, d’indexation et de recherche conçu pour exploiter des données représentées sous forme de vecteurs numériques, généralement produits par des modèles d’intelligence artificielle appelés Embeddings.

Contrairement aux systèmes de recherche traditionnels principalement fondés sur des correspondances exactes ou lexicales, une base vectorielle permet de rechercher des informations selon leur proximité mathématique dans un espace multidimensionnel.

Cette propriété permet notamment d’identifier des textes, images, produits ou documents présentant des caractéristiques similaires, même lorsqu’ils ne partagent pas les mêmes mots ou attributs explicites.

Les bases vectorielles sont devenues une composante importante des architectures d’intelligence artificielle générative, notamment pour les systèmes RAG (Retrieval-Augmented Generation), la recherche sémantique, les moteurs de recommandation et certains agents IA.

Comment fonctionne une Vector Database ?

Le fonctionnement d’une base vectorielle repose sur la transformation des informations en représentations numériques, leur indexation et leur comparaison avec de nouvelles requêtes.

1. La transformation des données en embeddings

Un modèle d’embedding convertit un contenu — par exemple une fiche produit, un document PDF, un avis client ou une image — en un vecteur numérique.

Ce vecteur comporte plusieurs dimensions dont les valeurs représentent des caractéristiques apprises par le modèle.

Deux contenus présentant des similarités sémantiques ou structurelles peuvent ainsi obtenir des représentations proches.

2. Le stockage des vecteurs

Les embeddings sont enregistrés dans la base, généralement avec un identifiant et des métadonnées.

Ces métadonnées peuvent inclure le titre du document, sa catégorie, sa date de modification, son origine ou les droits d’accès applicables.

Selon l’architecture, la base stocke également le contenu d’origine, un extrait du document ou une référence permettant de le récupérer dans un autre système.

3. L’indexation vectorielle

Pour accélérer les recherches, la base peut construire des index spécialisés permettant d’identifier efficacement les vecteurs proches d’une requête.

Cette étape est particulièrement importante lorsque la base contient plusieurs millions de vecteurs.

4. La recherche de similarité

Lorsqu’un utilisateur effectue une recherche, sa demande est transformée en vecteur au moyen d’un modèle compatible avec celui utilisé pour indexer les données.

La base recherche ensuite les représentations les plus proches et retourne les contenus correspondants, éventuellement après application de filtres métier.

Schéma simplifié

Documents et données → Modèle d’embedding → Vecteurs numériques → Index vectoriel

Question utilisateur → Embedding de la question → Recherche de similarité → Résultats pertinents

À retenir : la base vectorielle retrouve les informations. Elle ne génère pas elle-même les réponses rédigées par un LLM.

Qu’est-ce qu’une recherche de similarité vectorielle ?

La Vector Similarity Search consiste à rechercher des vecteurs proches d’un vecteur de référence selon une métrique mathématique.

Cette proximité peut être mesurée de différentes façons :

  • Cosine Similarity : comparaison de l’orientation des vecteurs.
  • Euclidean Distance : mesure de la distance géométrique entre deux vecteurs.
  • Dot Product : comparaison reposant sur le produit scalaire des vecteurs.

La métrique choisie dépend notamment du modèle d’embedding et de la manière dont ses vecteurs sont normalisés.

Exemple : recherche sémantique

Un internaute recherche : « Comment réduire les abandons de panier ? »

Une base vectorielle peut retrouver des documents intitulés « Optimisation du tunnel de conversion » ou « Stratégies de relance e-commerce », même lorsque l’expression exacte n’apparaît pas dans leurs titres.

La pertinence dépend néanmoins du modèle d’embedding, des données indexées et de la méthode de classement utilisée.

Comment fonctionne l’indexation vectorielle ?

Une base contenant un petit nombre de vecteurs peut comparer directement la requête à chaque élément enregistré. Cette méthode exhaustive est appelée Exact Nearest Neighbor Search.

Lorsque le volume augmente, une recherche exhaustive peut devenir trop coûteuse en temps de calcul.

Les bases vectorielles utilisent alors souvent des techniques d’Approximate Nearest Neighbor (ANN), qui privilégient une recherche plus rapide au prix d’une éventuelle perte de précision dans l’identification des voisins les plus proches.

HNSW (Hierarchical Navigable Small World)

HNSW est une méthode d’indexation qui organise les vecteurs au sein de graphes comportant plusieurs niveaux.

Ces graphes permettent de parcourir efficacement les relations de proximité entre les vecteurs afin d’identifier rapidement des résultats similaires.

HNSW est largement utilisé pour les recherches vectorielles à grande échelle, mais sa construction et son fonctionnement peuvent nécessiter des ressources mémoire importantes.

IVFFlat (Inverted File Flat)

IVFFlat organise les vecteurs en groupes. Lors d’une recherche, le système explore prioritairement les groupes les plus proches du vecteur recherché.

Cette approche permet de réduire le nombre de comparaisons, avec un compromis entre vitesse de recherche et qualité des résultats.

Le choix entre HNSW, IVFFlat et d’autres méthodes dépend du volume de données, de la fréquence des mises à jour, des contraintes mémoire et du niveau de précision attendu.

Quel rôle joue une Vector Database dans une architecture RAG ?

Une base vectorielle constitue l’une des solutions couramment utilisées pour la phase de récupération documentaire d’une architecture RAG (Retrieval-Augmented Generation).

Dans un système RAG, les documents sont généralement préparés, découpés en fragments puis transformés en embeddings.

Les vecteurs sont ensuite indexés pour permettre de retrouver rapidement les passages les plus pertinents lorsqu’une question est posée.

Les étapes d’une recherche RAG

  1. Un utilisateur pose une question à un assistant IA.
  2. La question est transformée en embedding.
  3. La base vectorielle recherche les fragments documentaires les plus proches.
  4. Les résultats peuvent être filtrés ou reclassés selon leur pertinence.
  5. Les informations sélectionnées sont ajoutées au contexte du LLM.
  6. Le modèle génère une réponse à partir de la question et des informations récupérées.

Exemple : assistant CRM connecté à une base documentaire

Un commercial demande : « Quelles garanties sont incluses dans notre offre Premium ? »

Le système recherche les passages pertinents dans les documents contractuels, récupère les informations disponibles et les transmet au LLM.

L’assistant peut alors proposer une réponse accompagnée de références aux documents utilisés.

Il faut toutefois souligner qu’une architecture RAG n’exige pas obligatoirement une base vectorielle : elle peut également utiliser des moteurs de recherche lexicale, des systèmes hybrides ou d’autres mécanismes de récupération.

Quels usages des bases vectorielles dans les MarTech ?

Recherche sémantique dans les catalogues e-commerce

Une Vector Database permet de rechercher des produits à partir de leur description sémantique, et pas seulement de mots-clés exacts.

Par exemple, une recherche portant sur des « vêtements adaptés aux randonnées en montagne » peut faire apparaître des équipements décrits comme respirants, imperméables ou conçus pour les activités outdoor.

Recommandation de produits et de contenus

Des produits, articles ou contenus peuvent être représentés par des embeddings afin d’identifier des éléments présentant des caractéristiques similaires.

Les bases vectorielles facilitent alors la recherche de recommandations candidates qui peuvent ensuite être classées selon des critères commerciaux ou comportementaux.

Personnalisation de l’expérience client

Les représentations vectorielles peuvent contribuer à rapprocher les centres d’intérêt d’un utilisateur de contenus, produits ou services pertinents.

Dans un moteur de personnalisation, elles peuvent compléter les règles métier, les données transactionnelles et les modèles prédictifs.

Analyse des avis et retours clients

Les entreprises peuvent indexer des milliers de commentaires, enquêtes et verbatims clients pour retrouver des messages proches sur le plan sémantique.

Cette approche est particulièrement utile dans les dispositifs de Voice of Customer, pour analyser les réclamations ou identifier des thématiques récurrentes.

Agents IA et bases de connaissances

Un agent IA peut interroger une base vectorielle afin de récupérer des informations utiles à l’exécution d’une tâche.

Il peut ainsi rechercher des procédures, des informations commerciales ou des documents techniques avant de formuler une recommandation ou de déclencher une action autorisée.

Vector Database, Embedding et LLM : quelles différences ?

Ces trois notions remplissent des fonctions distinctes dans une architecture d’intelligence artificielle.

  • Embedding : représentation numérique d’une information sous forme de vecteur.
  • Vector Database : système permettant de stocker, indexer et rechercher des vecteurs.
  • LLM : modèle de langage capable notamment de comprendre des instructions et de générer des réponses textuelles.

Dans une application RAG, le modèle d’embedding produit les représentations numériques, la base vectorielle identifie les informations pertinentes et le LLM utilise les informations retrouvées pour générer une réponse.

Une base vectorielle peut-elle remplacer une base de données relationnelle ?

Une base relationnelle traditionnelle organise les informations en tables et permet d’effectuer des recherches, jointures, agrégations et transactions structurées.

Une base vectorielle est optimisée pour retrouver des représentations proches selon une métrique de similarité.

Ces deux approches sont complémentaires plutôt que mutuellement exclusives.

Une application MarTech peut utiliser une base relationnelle pour conserver les commandes, clients et consentements, et un index vectoriel pour rechercher des produits ou documents similaires.

Il n’est d’ailleurs pas toujours nécessaire de déployer une base vectorielle indépendante. Des systèmes comme PostgreSQL, grâce à l’extension pgvector, proposent des capacités de recherche vectorielle au sein d’une base relationnelle existante.

Qu’est-ce que la recherche hybride (Hybrid Search) ?

La Hybrid Search combine généralement une recherche lexicale traditionnelle avec une recherche vectorielle sémantique.

La recherche lexicale est particulièrement utile lorsqu’il faut retrouver des identifiants exacts, références produits ou expressions spécifiques.

La recherche vectorielle peut mieux identifier certaines formulations proches sur le plan sémantique.

Leurs résultats peuvent être fusionnés ou reclassés afin de tirer parti des avantages des deux approches.

Exemple e-commerce

Un utilisateur recherche : « Batterie compatible modèle ZX-450 avec autonomie renforcée ».

La recherche lexicale identifie la référence exacte « ZX-450 », tandis que la recherche vectorielle contribue à interpréter le besoin d’autonomie.

La combinaison des deux méthodes peut améliorer la sélection des produits pertinents.

Quelles solutions de bases vectorielles existe-t-il ?

Le marché regroupe des bases spécialisées et des plateformes généralistes intégrant des capacités de recherche vectorielle.

Pinecone

Pinecone propose une infrastructure spécialisée dans la recherche vectorielle et la récupération d’informations pour les applications d’intelligence artificielle.

Weaviate

Weaviate est une base de données orientée recherche vectorielle et sémantique, proposant également des mécanismes de recherche hybride.

Milvus

Milvus est une base vectorielle open source conçue pour la recherche de similarité sur de grands ensembles de données.

Qdrant

Qdrant propose un moteur de recherche vectorielle avec prise en charge des métadonnées et des filtres associés.

PostgreSQL et pgvector

L’extension pgvector apporte à PostgreSQL des types vectoriels, des opérations de distance et des méthodes d’indexation adaptées à la recherche de similarité.

Les bases de données et moteurs de recherche généralistes

Des plateformes comme MongoDB et certains services de recherche cloud proposent également des fonctions de stockage et de recherche vectorielle.

Le choix dépend des exigences de performance, de souveraineté, de coûts, de sécurité et d’intégration avec l’architecture Data existante.

Quels indicateurs permettent d’évaluer une Vector Database ?

Les performances d’une base vectorielle ne se résument pas à sa capacité de stockage.

Plusieurs indicateurs permettent d’évaluer son fonctionnement :

  • Latency : temps nécessaire pour traiter une recherche.
  • Recall@K : proportion des véritables voisins les plus proches retrouvés parmi les K résultats d’une recherche approximative.
  • Throughput : nombre de requêtes pouvant être traitées sur une période donnée.
  • Indexing Time : temps nécessaire à la construction ou à la mise à jour de l’index.
  • Memory Usage : ressources mémoire nécessaires au stockage et à la recherche.
  • Filtering Performance : efficacité de la recherche lorsque des restrictions métier ou des métadonnées sont appliquées.

Un système rapide n’est pas nécessairement le plus pertinent. Le choix d’une solution doit prendre en compte le compromis entre latence, qualité de récupération et coût.

Quels sont les risques et les limites des bases vectorielles ?

Une similarité ne garantit pas l’exactitude

Une base vectorielle retrouve des contenus proches selon le modèle d’embedding utilisé. Elle ne vérifie pas automatiquement leur exactitude, leur actualité ou leur conformité aux besoins métier.

Les erreurs de récupération

Les index approximatifs peuvent manquer certains résultats pertinents. Les choix d’indexation, de métrique et de filtrage peuvent également influencer la qualité de récupération.

La confidentialité des embeddings

Les vecteurs peuvent conserver des informations révélatrices sur les données d’origine. Ils ne doivent donc pas être considérés comme anonymes par défaut.

Le contrôle des accès

Une recherche vectorielle ne doit pas permettre de récupérer des informations auxquelles l’utilisateur n’est pas autorisé à accéder.

Dans une architecture multi-entreprise ou multi-utilisateur, les règles de filtrage et d’isolation doivent être appliquées de manière fiable.

Les coûts et la maintenance

La croissance du volume de vecteurs entraîne des besoins en stockage, en mémoire et en calcul. Les mises à jour de données et les changements de modèles d’embedding peuvent nécessiter une réindexation partielle ou complète.

Pourquoi les bases vectorielles deviennent-elles stratégiques pour les MarTech ?

Les bases vectorielles participent à une évolution majeure des systèmes d’information : la capacité à rechercher et exploiter des données à partir de leur proximité sémantique, et non uniquement de règles ou de correspondances exactes.

Elles permettent de développer des applications combinant données clients, contenus, catalogues produits, recherche sémantique et intelligence artificielle générative.

Pour les MarTech, leur intérêt réside notamment dans l’amélioration de la découverte de produits, la personnalisation, l’analyse des interactions clients et l’accès aux connaissances métiers.

Leur déploiement doit cependant répondre à un besoin concret et s’intégrer à une architecture Data cohérente. Une base vectorielle n’est pas systématiquement nécessaire et ne remplace ni une stratégie de gouvernance des données ni les contrôles de qualité.

Avec la progression des architectures RAG et des agents IA, les capacités de recherche vectorielle constituent néanmoins une brique importante de l’infrastructure technologique des applications d’intelligence artificielle.

Quelques références


Synonymes :
Base vectorielle
« Retour au Glossaire

Newsletter

Dernières vidéos

Loading...

Suivez-nous