Glossaire

Base de données vectorielle

Découvrez comment les bases de données vectorielles révolutionnent l'IA en permettant des recherches de similarité efficaces, des recherches sémantiques et la détection d'anomalies pour les systèmes intelligents.

Une base de données vectorielle est un type de base de données spécialisé conçu pour stocker, gérer et rechercher des données à haute dimension connues sous le nom d'encastrements vectoriels. Contrairement aux bases de données relationnelles traditionnelles qui sont optimisées pour les données structurées et les correspondances exactes, les bases de données vectorielles excellent dans la recherche d'éléments sur la base de leur similarité. Cette capacité est fondamentale pour un large éventail d'applications modernes d'intelligence artificielle, des moteurs de recommandation à la recherche visuelle, ce qui en fait un élément essentiel de l'infrastructure d'apprentissage automatique. Elles servent de mémoire à long terme pour les modèles d'intelligence artificielle, leur permettant d'exploiter les modèles complexes appris au cours de la formation.

Fonctionnement des bases de données vectorielles

La fonction principale d'une base de données vectorielle est d'exécuter efficacement une recherche vectorielle. Le processus commence lorsque des données non structurées - telles qu'une image, un bloc de texte ou un clip audio - passent par un modèle d'apprentissage profond pour créer une représentation numérique appelée encastrement vectoriel. Ces encastrements capturent la signification sémantique des données d'origine.

La base de données vectorielles stocke ensuite ces encastrements et les indexe à l'aide d'algorithmes spécialisés. Lorsqu'une requête est effectuée (par exemple, une recherche sur une image), les données de la requête sont également converties en vecteur. La base de données compare ensuite ce vecteur de requête aux vecteurs stockés en utilisant des mesures de similarité telles que la similarité cosinusoïdale ou la distance euclidienne pour trouver les éléments les plus "proches" ou les plus similaires. Pour réaliser cette opération à grande échelle avec des millions ou des milliards de vecteurs, les bases de données s'appuient souvent sur des algorithmes ANN (Approximate Nearest Neighbor) très efficaces.

Applications dans le monde réel

Les bases de données vectorielles sont à l'origine de nombreuses fonctions intelligentes avec lesquelles les utilisateurs interagissent quotidiennement.

  1. Recherche visuelle dans le commerce électronique : Un utilisateur peut télécharger la photo d'un produit qu'il aime. Un modèle de vision artificielle, tel que le modèle YOLO11 d'Ultralytics, génère une intégration pour l'image. Cette intégration est utilisée pour interroger la base de données vectorielles du site de commerce électronique, qui contient des intégrations pour l'ensemble de son catalogue de produits. La base de données renvoie les vecteurs les plus similaires, ce qui permet au site d'afficher des produits visuellement identiques ou stylistiquement proches, une caractéristique essentielle de l'IA pour le commerce de détail.
  2. Recherche sémantique de documents : Une entreprise peut créer des enchâssements pour tous ses documents internes, tels que les rapports et les tickets d'assistance. Un employé peut alors effectuer une recherche à l'aide d'une question en langage naturel telle que "Quels ont été nos bénéfices au cours du dernier trimestre ?" au lieu de mots clés spécifiques. Le modèle de traitement du langage naturel (NLP) convertit cette requête en un embedding, et la base de données vectorielle trouve les documents dont les embeddings sont sémantiquement les plus proches, fournissant des informations pertinentes même si la formulation exacte ne correspond pas. Il s'agit d'un élément essentiel des systèmes de génération augmentée de recherche (RAG).

Bases de données vectorielles et concepts connexes

Il est utile de différencier les bases de données vectorielles des termes étroitement liés :

  • Embeddings : Les embeddings sont les représentations vectorielles des données. La base de données vectorielle est le système spécialisé conçu pour stocker, indexer et interroger efficacement ces données intégrées. Les embeddings sont les livres et la base de données vectorielle est la bibliothèque intelligente qui les organise.
  • Recherche vectorielle : La recherche vectorielle consiste à trouver les vecteurs les plus similaires dans un ensemble de données. Une base de données vectorielle est la technologie sous-jacente qui rend ce processus rapide et évolutif, en particulier pour l'inférence en temps réel.

Ces composants sont gérés dans le cadre d'un flux de travail MLOps complet, souvent facilité par des plateformes comme Ultralytics HUB pour la gestion de bout en bout des modèles et des ensembles de données.

Bases de données vectorielles populaires

Plusieurs bases de données vectorielles commerciales et à code source ouvert sont disponibles, chacune présentant des atouts différents en termes d'évolutivité, de déploiement et de fonctionnalités. Parmi les plus utilisées, on peut citer

  • Pomme de pin: Un service de base de données vectorielles populaire et entièrement géré.
  • Milvus: Une base de données vectorielle open-source conçue pour de hautes performances et une grande évolutivité.
  • Weaviate: Une base de données open-source native pour l'IA avec des capacités graphiques.
  • Chroma DB: une base de données d'intégration open-source axée sur la simplicité et l'expérience des développeurs.
  • Qdrant: Une base de données vectorielles et un moteur de recherche de similarités open-source écrits en Rust pour des raisons de performance et de sécurité.

Rejoindre la communauté Ultralytics

Rejoignez l'avenir de l'IA. Connectez-vous, collaborez et évoluez avec des innovateurs mondiaux.

S'inscrire
Lien copié dans le presse-papiers