Glossaire
IAData

Vector Database

Aussi : Vector Store, Vector DB, Embedding Database, Similarity Search Database

Une vector database stocke les données sous forme de vecteurs numériques à haute dimension (embeddings) et retrouve les éléments par similarité plutôt que par correspondance exacte, ce qui rend possible la recherche sémantique et les applications d'IA.

De quoi il s'agit

Une vector database est un système conçu pour stocker, indexer et interroger des données représentées sous forme de vecteurs : des tableaux de nombres (souvent des centaines ou des milliers de dimensions) appelés embeddings. Ces embeddings sont produits par des modèles de machine learning qui traduisent du texte, des images, de l'audio ou d'autres contenus dans une forme numérique où les éléments similaires se retrouvent proches les uns des autres dans l'espace vectoriel.

Contrairement à une base de données relationnelle classique qui retrouve des lignes par valeurs exactes (par exemple `WHERE country = 'France'`), une vector database répond à des questions du type « trouve les éléments dont le sens est le plus proche de celui-ci ». Elle procède par recherche des plus proches voisins (nearest neighbor search) à partir de métriques de distance comme la similarité cosinus ou la distance euclidienne.

Pourquoi c'est important

La majorité des données d'entreprise sont non structurées : documents, tickets de support, descriptions produit, images. La recherche par mots-clés passe à côté du sens : une requête « le portable ne s'allume pas » devrait remonter « l'ordinateur ne démarre pas ». La recherche vectorielle capte la similarité sémantique et renvoie des résultats pertinents même quand la formulation diffère.

Les vector databases sont un composant central des systèmes d'IA actuels, en particulier du Retrieval Augmented Generation (RAG), où un large language model est ancré dans vos propres données pour réduire les hallucinations et fournir des réponses sourcées.

Comment on l'utilise en pratique

  • Ingestion : le contenu est découpé en chunks puis passé dans un modèle d'embedding pour créer des vecteurs.
  • Indexation : les vecteurs sont stockés avec un index de type approximate nearest neighbor (HNSW ou IVF, par exemple) pour une recherche rapide à grande échelle.
  • Requête : la requête de l'utilisateur est embarquée dans le même espace, et la base renvoie les vecteurs les plus proches ainsi que leur contenu d'origine et leurs métadonnées.
  • Filtrage : les métadonnées (date, auteur, catégorie) affinent les résultats en complément de la similarité.

Parmi les applications courantes : recherche sémantique, moteurs de recommandation, chatbots, déduplication, détection d'anomalies et recherche d'images.

Exemple concret

Une équipe finance construit un assistant interne sur des milliers de PDF réglementaires. Chaque paragraphe est transformé en embedding et stocké. Quand un analyste demande « Quelles sont les exigences en capital pour les petites banques ? », la question est embarquée, la base renvoie les passages les plus pertinents et un modèle de langage rédige une réponse en citant ces sources.

Arbitrages à considérer

  • La recherche approximative est rapide mais peut sacrifier un peu de précision au profit de la vitesse.
  • La qualité des embeddings dépend fortement du modèle retenu.
  • Les coûts augmentent avec le volume de vecteurs et le nombre de dimensions.
From content to similarity searchDocuments,images, textEmbeddingmodel[0.12, 0.84,0.31, ...]Vector database (vector space)nearest neighborsQuery text
Content and queries become embeddings; the database returns the closest vectors by similarity.

Voir aussi

Questions fréquentes

Qu'est-ce qu'une base de données vectorielle, concrètement ?

Une base de données vectorielle stocke les contenus sous forme d'embeddings, des tableaux de nombres produits par des modèles de machine learning, et retrouve les éléments par similarité plutôt que par correspondance exacte. Là où une base relationnelle répond à « WHERE country = 'France' », une base vectorielle répond à « trouve ce qui est le plus proche par le sens ». Elle s'appuie sur une recherche de plus proches voisins avec des métriques comme la similarité cosinus ou la distance euclidienne.

Quelle différence entre une base vectorielle et une base relationnelle classique ?

Une base relationnelle compare des valeurs exactes dans des colonnes structurées ; une base vectorielle mesure une distance entre représentations numériques du sens. La conséquence est concrète : une recherche par mots-clés sur « le portable ne s'allume pas » ratera le document qui dit « l'ordinateur ne démarre plus », alors que la recherche vectorielle le remonte. Les bases vectorielles traitent aussi des contenus non structurés (documents, tickets de support, fiches produit, images) que les schémas relationnels n'ont jamais été conçus pour interroger sémantiquement.

Pourquoi un système RAG a-t-il besoin d'une base vectorielle ?

Le RAG (Retrieval Augmented Generation) ancre un modèle de langage dans vos propres données, et c'est la base vectorielle qui retrouve les passages pertinents à lui transmettre. La question de l'utilisateur est transformée en vecteur dans le même espace que les contenus stockés, les vecteurs les plus proches sont renvoyés avec leur texte d'origine et leurs métadonnées, puis le modèle rédige une réponse en citant ces sources. C'est cette étape de retrieval qui réduit les hallucinations et rend les réponses traçables.

Quelles sont les étapes pour alimenter une base vectorielle ?

Quatre étapes : ingestion, indexation, interrogation, filtrage. Le contenu est découpé en chunks puis passé dans un modèle d'embedding pour produire des vecteurs ; ces vecteurs sont stockés avec un index de plus proches voisins approximatif comme HNSW ou IVF pour rester rapide à grande échelle ; la requête est vectorisée dans le même espace pour renvoyer les vecteurs les plus proches et leur contenu ; et les métadonnées (date, auteur, catégorie) affinent les résultats en complément de la similarité.

Quels arbitrages surveiller avant de passer une base vectorielle à l'échelle ?

Trois points méritent attention. La recherche de plus proches voisins approximative est rapide mais sacrifie un peu de précision au profit de la vitesse : le recall se mesure, il ne se suppose pas. La qualité du retrieval dépend fortement du modèle d'embedding retenu, et les coûts augmentent avec le volume de vecteurs et leur dimensionnalité, ce qui fait de la stratégie de chunking et du choix du modèle des décisions budgétaires autant que techniques.