Aaron Ricadela | Rédacteur senior | 18 mars 2025
Tout comme l'IA générative repense la façon dont les utilisateurs interagissent avec les ordinateurs, elle impose de nouvelles exigences aux bases de données qui stockent et extraient des informations sous-jacentes aux réponses des systèmes. Les bases de données vectorielles, conçues pour les développeurs qui travaillent avec de très grands ensembles de données non structurées ou semi-structurées, stockent les incorporations ou les positions dans un espace mathématique de milliards de vecteurs potentiellement calculés à partir des données brutes. Les bases de données peuvent renvoyer des réponses qui améliorent les connaissances des modèles d'IA en calculant rapidement les relations entre les vecteurs.
Contrairement aux bases de données traditionnelles, qui excellent pour trouver des correspondances de requêtes exactes, les bases de données vectorielles, telles que Weaviate (ainsi que Milvus, Pinecone, Chroma et Qdrant), représentent la similarité entre les objets stockés par leur distance les uns des autres dans un espace vectoriel multidimensionnel. Les bases de données peuvent trouver rapidement des informations connexes et renvoyer des réponses en fonction de ce que les modèles supposent qu'un utilisateur signifie, même si elles sont approximativement proches et ne correspondent pas exactement à une requête.
Cela rend Weaviate et d'autres bases de données vectorielles puissants outils de traitement du langage naturel pour des applications telles que les recommandations pour les services de commerce électronique et de streaming, les recherches sémantiques ou de similarité, la détection des fraudes et la génération augmentée par extraction (RAG).
Weaviate, propriété de la start-up néerlandaise du même nom, est une base de données vectorielle spécialisée qui excelle lors de recherches rapides sur des milliards de vecteurs. Son architecture de recherche utilise le sharding de base de données, une technique qui répartit les informations sur de nombreux serveurs, pour augmenter l'évolutivité et les performances.
Weaviate utilise différents types d'index de base de données pour améliorer les performances en fonction de la taille de l'ensemble de données. Son index plat stocke les emplacements vectoriels et convient aux petits ensembles de données. Son index HNSW (hierarchical navigable small world) est plus lent à créer, mais il convient mieux aux ensembles de données volumineux.
Weaviate met l'accent sur la productivité des développeurs en offrant une gamme d'outils et d'interfaces, y compris des bibliothèques client en Python, JavaScript, Go et Java, et une API pour le langage de requête GraphQL. La base de données est distribuée sous la licence open source BSD-3-Clause. Sa force est la recherche approximative des voisins les plus proches (ANN), dont les résultats améliorent les requêtes d'IA générative.
Les clients peuvent exécuter Weaviate sur leurs propres ordinateurs, dans un service de cloud public selon un modèle sans serveur ou via le service de cloud géré de l'entreprise avec du matériel dédié.
Oracle Database 23ai fournit également une recherche de vecteurs d'IA, qui lui permet de stocker et de rechercher des vecteurs comme le fait Weaviate, avec des temps de réponse inférieurs à la seconde. Cependant, au lieu de stocker et d'extraire des données à partir d'une base de données vectorielle à usage unique, les équipes de développement utilisant Oracle Database 23ai peuvent stocker et rechercher des données relationnelles, graphiques, spatiales, JSON et Internet of Things, ainsi que des données de recherche vectorielle. Avec la base de données Oracle, les groupes informatiques n'ont pas besoin de gérer plusieurs bases de données et copies de données, ce qui réduit la complexité.
Bien que Weaviate prenne en charge le clustering pour améliorer la disponibilité des bases de données, Oracle Database 23ai offre un plus large éventail d'options de haute disponibilité, notamment Oracle Real Application Clusters, qui permettent aux instances de base de données de s'exécuter sur des serveurs distincts pour la tolérance aux pannes et l'équilibrage de charge ; Oracle Active Data Guard, pour la réplication immédiate vers une base de données de secours afin qu'aucune donnée ne soit perdue pendant une coupure non planifiée ; et Oracle GoldenGate, pour la cohérence des données sur plusieurs sites. Pour plus d'évolutivité, Oracle Globally Distributed Database prend en charge le sharding pour les recherches vectorielles, le routage des requêtes et les opérations de mise à jour, d'insertion et de suppression des shards.
Les bases de données vectorielles spécialisées peuvent s'appuyer sur des mises à jour périodiques par lots pour des données en évolution rapide, ce qui peut entraîner des ensembles de données incohérents. Avec Oracle Database 23ai, le pipeline RAG et les sources de données sous-jacentes restent synchronisés. En ce qui concerne les requêtes, Oracle Autonomous Database Select AI transforme les requêtes en langage naturel en commandes SQL, à l'aide de LLM d'Anthropic, Cohere, Google, Meta, Microsoft et OpenAI. Oracle Database 23ai permet également aux développeurs d'exploiter les services d'IA d'autres grands fournisseurs de cloud, y compris les modèles Gemini de Google, les services d'IA Azure de Microsoft et les LLM d'OpenAI, pour les utiliser avec les données d'entreprise stockées dans Oracle.
Découvrez comment la recherche vectorielle Oracle Database 23ai peut fonctionner avec votre application.
Comment Weaviate gère-t-il la recherche sémantique et vectorielle ?
La base de données Weaviate permet des recherches à faible latence d'intégrations de vecteurs construites à partir de données non structurées pour une variété d'applications. Ceux-ci comprennent les moteurs de recommandation et RAG, ainsi que les recherches hybrides qui combinent la compréhension sémantique des relations entre le texte, les images, l'audio et la vidéo avec la recherche par mot clé conventionnelle.
Quelle est la différence entre Pinecone et Weaviate ?
Weaviate est livré avec une licence BSD-3-Clause et peut être exécuté sur site ou dans un service de cloud public. Pinecone est distribué sous licence propriétaire et s'exécute dans le cloud (ainsi que via un lien vers un cloud privé AWS). Pinecone prend en charge un large éventail de types de données, tandis que Weaviate peut être personnalisé en raison de sa licence open source.
Weaviate peut-il être utilisé avec les modèles NLP ?
Oui, Weaviate permet aux utilisateurs d'exécuter et d'adapter leurs propres modèles de traitement du langage naturel, en plus d'utiliser des modèles livrés avec le logiciel.
Qu'est-ce qui distingue Weaviate des autres bases de données vectorielles ?
Weaviate se concentre sur l'attraction des développeurs vers son produit grâce à la prise en charge de divers langages de programmation et outils d'IA. Son architecture est conçue pour une évolutivité horizontale via le sharding de données.