Définition express
Une base de données optimisée pour stocker et interroger des vecteurs (embeddings), permettant une recherche basée sur le sens plutôt que sur des mots-clés exacts.
Points clés
- Stocke des embeddings (listes de nombres)
- Permet la recherche sémantique (sens)
- Indispensable pour le RAG (Retrieval Augmented Generation)
- Gère textes, images et sons
Le point différenciant
Contrairement aux bases SQL (lignes/colonnes) ou NoSQL (documents), elle organise les données dans un espace multidimensionnel selon leur proximité sémantique.
En résumé
Imaginez une bibliothèque traditionnelle où les livres sont rangés par ordre alphabétique ou par auteur. Si vous cherchez un livre sur la ‘tristesse’ sans connaître le titre, c’est difficile. Une base de données vectorielle, elle, range les livres par ‘concepts’. Tous les livres tristes sont au même endroit, proches des livres sur la mélancolie, mais loin des livres sur la joie. Concrètement, elle transforme les données (textes, images) en suites de nombres (vecteurs) et les place dans un espace mathématique : plus deux idées sont proches par le sens, plus leurs vecteurs sont voisins.
Pourquoi c’est important ?
La différence fondamentale réside dans la méthode de recherche. Une base de données classique (SQL) ou un moteur de recherche par mots-clés (comme les premières versions de Google) cherche une correspondance exacte : si vous tapez ‘voiture’, elle cherche le mot ‘voiture’. Une base vectorielle utilise la ‘recherche de plus proche voisin’ (Nearest Neighbor Search). Si vous tapez ‘voiture’, elle trouvera aussi ‘automobile’, ‘véhicule’ ou ‘conduite’, car ces concepts sont mathématiquement proches dans l’espace vectoriel créé par le modèle d’embedding.
Détails & Concepts liés
Fonctionnement technique : Embeddings et Dimensions
Tout commence par un modèle d’embedding (comme OpenAI text-embedding-3) qui transforme une donnée brute (ex: une phrase) en un vecteur, une liste de centaines ou milliers de nombres flottants (ex: [0.12, -0.45, 0.88…]). Chaque nombre représente une dimension, une caractéristique sémantique abstraite. La Vector DB stocke ces vecteurs et utilise des calculs de distance (comme la similarité cosinus) pour mesurer la pertinence entre la requête de l’utilisateur et les données stockées.
L’Indexation HNSW et ANN
Parcourir des millions de vecteurs pour trouver le plus proche serait trop lent. Les Vector DB utilisent des algorithmes ANN (Approximate Nearest Neighbor), souvent via une structure appelée HNSW (Hierarchical Navigable Small World). C’est comme un système de raccourcis ou d’autoroutes dans l’espace des données qui permet de zoomer très vite vers la zone pertinente sans avoir à comparer la requête avec chaque donnée individuellement.
Rôle central dans le RAG
Dans une architecture RAG (Retrieval-Augmented Generation), la Vector DB agit comme la mémoire long-terme. L’utilisateur pose une question, le système la transforme en vecteur, interroge la base pour trouver les 3 à 5 passages les plus pertinents (le contexte), et envoie le tout au LLM (comme GPT-4) pour générer une réponse précise basée sur vos propres données, réduisant ainsi les hallucinations.
Cas d’usage concrets
- ✓
Recherche sémantique avancée (trouver des documents par le sens).
- ✓
Systèmes de recommandation (Netflix/Spotify : ‘si tu aimes ceci, tu aimeras cela’).
- ✓
Mémoire à long terme pour les chatbots et agents IA.
- ✓
Détection d’anomalies (trouver ce qui ne ressemble pas au reste).
- ✓
Recherche multimodale (trouver une image à partir d’une description textuelle).
Méthode & Prompting
À éviter
Stocker des vecteurs sans métadonnées (perte de contexte sur la source), ou utiliser une base vectorielle pour des requêtes de filtrage exact simples (ex: trouver tous les utilisateurs nommés ‘Thomas’).
Bon usage
Utiliser la ‘recherche hybride’ (Hybrid Search) qui combine la recherche vectorielle (sens) et la recherche par mots-clés (précision), et bien découper ses textes (chunking) avant de les vectoriser.
Impact & Rentabilité
Limites & Points d’attention
Les coûts de stockage et de calcul peuvent être élevés pour de très grands volumes de données. La qualité des résultats dépend entièrement de la qualité du modèle d’embedding utilisé en amont. De plus, la mise à jour des données (ré-indexer) est parfois plus complexe que dans une base SQL classique.
L’essentiel à retenir
- Stocke le ‘sens’ des données sous forme de vecteurs mathématiques.
- Technologie pilier du RAG pour connecter les LLM aux données d’entreprise.
- Utilise la similarité (cosinus, euclidienne) plutôt que la correspondance exacte.
- Indispensable pour créer une mémoire IA personnalisée.
Questions Fréquentes
PROMPT-LAB.FR
Comprendre • Prompter • Accélérer