Dévoilement de Milvus 2.4 : recherche multivectorielle, vecteur épars, index CAGRA, et plus encore !
Nous sommes heureux d'annoncer le lancement de Milvus 2.4, une avancée majeure dans l'amélioration des capacités de recherche pour les ensembles de données à grande échelle. Cette dernière version ajoute de nouvelles fonctionnalités, telles que la prise en charge de l'index CAGRA basé sur le GPU, la prise en charge bêta des encastrements épars, la recherche de groupe et diverses autres améliorations des capacités de recherche. Ces développements renforcent notre engagement envers la communauté en offrant aux développeurs comme vous un outil puissant et efficace pour manipuler et interroger les données vectorielles. Voyons ensemble les principaux avantages de Milvus 2.4.
Recherche multi-vectorielle activée pour des recherches multimodales simplifiées
Milvus 2.4 offre une capacité de recherche multivectorielle, permettant la recherche et le reclassement simultanés de différents types de vecteurs dans le même système Milvus. Cette fonctionnalité rationalise les recherches multimodales, améliorant considérablement les taux de rappel et permettant aux développeurs de gérer sans effort des applications d'IA complexes avec des types de données variés. En outre, cette fonctionnalité simplifie l'intégration et la mise au point de modèles de reclassement personnalisés, contribuant à la création de fonctions de recherche avancées telles que des systèmes de recommandation précis qui utilisent des informations provenant de données multidimensionnelles.
Fonctionnement de la fonction de recherche multivectorielle
La prise en charge multivectorielle dans Milvus comporte deux éléments :
la possibilité de stocker et d'interroger plusieurs vecteurs pour une seule entité au sein d'une collection, ce qui est une manière plus naturelle d'organiser les données
La possibilité de construire/optimiser un algorithme de reclassement en tirant parti des algorithmes de reclassement préconstruits dans Milvus.
Outre le fait qu'il s'agit d'une fonctionnalité très demandée, nous l'avons développée parce que l'industrie évolue vers des modèles multimodaux avec la publication de GPT-4 et Claude 3. Le reclassement est une technique couramment utilisée pour améliorer les performances des requêtes dans le domaine de la recherche. Notre objectif est de permettre aux développeurs de créer et d'optimiser facilement leurs rerankers au sein de l'écosystème Milvus.
Prise en charge de la recherche groupée pour une meilleure efficacité de calcul
La recherche groupée est une autre fonctionnalité souvent demandée que nous avons ajoutée à Milvus 2.4. Elle intègre une opération de groupage conçue pour les champs de type BOOL, INT ou VARCHAR, comblant ainsi un manque d'efficacité crucial dans l'exécution de requêtes de groupage à grande échelle.
Traditionnellement, les développeurs s'appuyaient sur des recherches Top-K approfondies suivies d'un post-traitement manuel pour distiller des résultats spécifiques à un groupe, une méthode gourmande en ressources informatiques et en code. La recherche par regroupement affine ce processus en reliant efficacement les résultats des requêtes à des identifiants de groupe agrégés, tels que les noms de documents ou de vidéos, ce qui rationalise le traitement des entités segmentées au sein d'ensembles de données plus importants.
Milvus distingue son Grouping Search par une mise en œuvre basée sur des itérateurs, offrant une nette amélioration de l'efficacité de calcul par rapport à des technologies similaires. Ce choix garantit une évolutivité supérieure des performances, en particulier dans les environnements de production où l'optimisation des ressources informatiques est primordiale. En réduisant la traversée des données et les frais généraux de calcul, Milvus permet un traitement plus efficace des requêtes, ce qui réduit considérablement les temps de réponse et les coûts d'exploitation par rapport à d'autres bases de données vectorielles.
La recherche groupée renforce la capacité de Milvus à gérer des requêtes complexes et volumineuses et s'aligne sur les pratiques de calcul haute performance pour les solutions de gestion de données robustes.
Prise en charge bêta des encastrements de vecteurs épars
Lesencastrements de vecteursépars représentent un changement de paradigme par rapport aux approches vectorielles denses traditionnelles, car ils prennent en compte les nuances de la similarité sémantique plutôt que la simple fréquence des mots clés. Cette distinction permet une capacité de recherche plus nuancée, s'alignant étroitement sur le contenu sémantique de la requête et des documents. Les modèles vectoriels épars, particulièrement utiles dans la recherche d'informations et le traitement du langage naturel, offrent de puissantes capacités de recherche hors domaine et une grande facilité d'interprétation par rapport à leurs homologues denses.
Dans Milvus 2.4, nous avons étendu la recherche hybride pour inclure les encastrements épars générés par des modèles neuronaux avancés tels que SPLADEv2 ou des modèles statistiques tels que BM25. Dans Milvus, les vecteurs épars sont traités sur un pied d'égalité avec les vecteurs denses, ce qui permet de créer des collections avec des champs de vecteurs épars, d'insérer des données, de construire des index et d'effectuer des recherches de similarité. Notamment, les encastrements épars dans Milvus prennent en charge la métrique de distance du produit intérieur (IP), ce qui est avantageux compte tenu de leur nature hautement dimensionnelle, qui rend les autres métriques moins efficaces. Cette fonctionnalité prend également en charge les types de données dont la dimension est un entier non signé de 32 bits et un flottant de 32 bits pour la valeur, ce qui facilite un large éventail d'applications, depuis les recherches textuelles nuancées jusqu'aux systèmes élaborés de recherche d'informations.
Grâce à cette nouvelle fonctionnalité, Milvus permet des méthodologies de recherche hybrides qui combinent des techniques basées sur les mots-clés et l'intégration, offrant une transition transparente aux utilisateurs qui abandonnent les cadres de recherche centrés sur les mots-clés et qui recherchent une solution complète et nécessitant peu de maintenance.
Nous qualifions cette fonctionnalité de "Beta" afin de poursuivre nos tests de performance et de recueillir les commentaires de la communauté. La disponibilité générale (GA) de la prise en charge des vecteurs épars est prévue avec la sortie de Milvus 3.0.
Prise en charge de l'index CAGRA pour l'indexation graphique accélérée par le GPU
Développé par NVIDIA, CAGRA (Cuda Anns GRAph-based) est une technologie d'indexation graphique basée sur le GPU qui surpasse de manière significative les méthodes traditionnelles basées sur le CPU telles que l'index HNSW en termes d'efficacité et de performance, en particulier dans les environnements à haut débit.
Avec l'introduction de l'index CAGRA, Milvus 2.4 offre une capacité améliorée d'indexation de graphes accélérée par le GPU. Cette amélioration est idéale pour la création d'applications de recherche de similarités nécessitant une latence minimale. En outre, Milvus 2.4 intègre une recherche par force brute avec l'index CAGRA pour atteindre des taux de rappel maximum dans les applications. Pour obtenir des informations détaillées, consultez le blog d'introduction sur CAGRA.
Milvus Raft CAGRA vs. Milvus HNSW
Améliorations et fonctionnalités supplémentaires
Milvus 2.4 comprend également d'autres améliorations clés, telles que la prise en charge des expressions régulières pour une meilleure correspondance des sous-chaînes dans le filtrage des métadonnées, un nouvel index scalaire inversé pour un filtrage efficace des types de données scalaires et un outil de capture des données de modification pour surveiller et répliquer les modifications dans les collections Milvus. Ces mises à jour améliorent collectivement les performances et la polyvalence de Milvus, ce qui en fait une solution complète pour les opérations de données complexes.
Pour plus de détails, voir la documentation Milvus 2.4.
Restez connecté !
Vous souhaitez en savoir plus sur Milvus 2.4 ? Rejoignez notre prochain webinaire avec James Luan, vice-président de l'ingénierie de Zilliz, pour une discussion approfondie sur les capacités de cette dernière version. Si vous avez des questions ou des commentaires, rejoignez notre canal Discord pour échanger avec nos ingénieurs et les membres de la communauté. N'oubliez pas de nous suivre sur Twitter ou LinkedIn pour connaître les dernières nouvelles et mises à jour concernant Milvus.
- Recherche multi-vectorielle activée pour des recherches multimodales simplifiées
- Prise en charge de la recherche groupée pour une meilleure efficacité de calcul
- Prise en charge bêta des encastrements de vecteurs épars
- Prise en charge de l'index CAGRA pour l'indexation graphique accélérée par le GPU
- Améliorations et fonctionnalités supplémentaires
- Restez connecté !
On This Page
Try Managed Milvus for Free
Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.
Get StartedLike the article? Spread the word