Infrastructure de récupération et magasins vectoriels

Infrastructure de recherche vectorielle en production : choix du moteur, pipelines d'embeddings, cycle de vie des index, mise à l'échelle et fiabilité opérationnelle pour la récupération IA d'entreprise.

Un prototype de recherche vectorielle et un système de production qui tient sous un volume de requêtes réel sont deux problèmes d'ingénierie distincts. Nous construisons et exploitons la couche d'infrastructure de récupération qui sous-tend votre pipeline RAG, vos workflows agentiques ou votre produit de recherche sémantique — le moteur vectoriel, le pipeline d'embeddings qui l'alimente, la gestion du cycle de vie des index qui le maintient sain, et la pile d'observabilité qui détecte la dégradation de la qualité avant que les utilisateurs ne s'en aperçoivent.

Nous sommes neutres vis-à-vis du moteur. Notre pratique est agnostique quant au moteur, couvrant Qdrant, Milvus, Weaviate, pgvector et Elasticsearch kNN, et celui que nous recommandons dépend de votre nombre de vecteurs, de vos schémas de requêtes, de vos exigences de multi-tenancy et de votre capacité opérationnelle.

D'une démo à 50 K vecteurs à une production à 200 M de vecteurs

L'écart entre une démo et un système de production est presque entièrement un problème d'infrastructure. La démo charge 50 K vecteurs dans Pinecone, exécute une requête de similarité cosinus et renvoie des résultats en 40 ms. La production ne ressemble en rien à cela.

  • 200 M de vecteurs et 500 requêtes par seconde soutenues
  • 15 dimensions de filtres de métadonnées et des documents mis à jour toutes les heures
  • Trois équipes partageant un même cluster sous une stricte isolation des locataires

À cette échelle, les pics de compaction HNSW font exploser votre P99 à 800 ms, le rappel se dégrade silencieusement après une semaine de mises à jour incrémentielles, et le pipeline d'embeddings ne parvient pas à suivre votre rythme de modification des documents. C'est là que nous intervenons.

Le choix du moteur est un exercice de benchmarking, pas une décision de marque

Chaque fournisseur revendique des performances de premier ordre ; les benchmarks racontent une histoire plus nuancée. Nous ne choisissons pas une base de données à partir d'une matrice de fonctionnalités — nous chargeons vos vecteurs réels, exécutons vos requêtes réelles avec vos filtres de métadonnées réels, et mesurons le rappel à des valeurs de k pertinentes sur le plan opérationnel, aux côtés des latences P50/P95/P99 sous charge concurrente.

MoteurCapacité remarquable (telle que mesurée dans la source)
pgvector 0.8Les scans itératifs offrent 471 QPS à 99 % de rappel sur 50 M de vecteurs sur Aurora PostgreSQL ; les scans itératifs ont résolu le problème de la recherche filtrée qui rendait autrefois les moteurs dédiés nécessaires.
QdrantLa quantification scalaire dessert des index à un milliard de vecteurs depuis des SSD NVMe à un P95 inférieur à 20 ms; plus de 27 K étoiles GitHub et une cadence de publication agressive.
Elasticsearch 9.2DiskBBQ maintient une empreinte mémoire de 100 Mo quelle que soit la taille de l'index, changeant fondamentalement le modèle de coût des déploiements à grande échelle.
Milvus 2.5Recherche hybride native (texte intégral et vecteur) dans un seul moteur, avec indexation CAGRA accélérée par GPU.
WeaviateLa multi-tenancy gère 50 K shards actifs par nœud et 1 M de locataires simultanés sur environ 20 nœuds — bien que la complexité opérationnelle à cette échelle exige une expertise spécifique.

Les résultats contredisent régulièrement le marketing des fournisseurs. Le niveau serverless de Pinecone paraît économique jusqu'à ce que des charges soutenues à haut QPS poussent les coûts d'unités de lecture au-delà du seuil de rentabilité de l'auto-hébergement, et pgvector paraît limité jusqu'à ce que les scans itératifs comblent l'écart de la recherche filtrée.

Le pipeline d'embeddings est l'endroit où la récupération en production casse réellement

Les équipes consacrent 60 % de leur effort d'ingénierie de recherche vectorielle au pipeline, pas au magasin de données. Le pipeline gère l'ingestion des documents, le découpage, l'inférence du modèle d'embeddings, la ré-indexation incrémentielle lors des mises à jour de documents, et la propagation des métadonnées — et chaque étape a des modes de défaillance qui dégradent silencieusement la qualité de la récupération.

  • Connaissances obsolètes — la deuxième défaillance la plus courante des RAG en production. Un document est mis à jour dans Confluence mais l'index dessert toujours l'ancien embedding. La solution passe par des déclencheurs de capture des changements de données qui réintègrent les embeddings de manière incrémentielle, et non par une ré-indexation par lots nocturne.
  • Documents fantômes — un document source est supprimé mais son vecteur demeure, renvoyant des résultats pour un contenu qui n'existe plus. Comme les transactions atomiques entre un système source de vérité et un magasin vectoriel sont quasi impossibles dans les architectures scindées, nous construisons des couches de réconciliation qui détectent et purgent les vecteurs orphelins.

Le choix du modèle d'embeddings compte plus que la plupart des équipes ne le réalisent, et en changer plus tard coûte cher : ré-intégrer les embeddings de 8 M de documents lorsque vous passez de text-embedding-ada-002 à text-embedding-3-large coûte des jours de calcul et nécessite une infrastructure de double écriture pour éviter les interruptions. Nous évaluons les modèles par rapport à votre jeu de requêtes propre à votre domaine avant que vous ne vous engagiez.

  • Cohere embed-v4 — domine la récupération multilingue à 0,01 $ par million de tokens dans plus de 100 langues.
  • Nomic Embed v2137 M de paramètres, s'exécute sur CPU, avec le meilleur rapport qualité-taille du marché.
  • OpenAI text-embedding-3-large — un excellent polyvalent.

Le bon choix dépend de votre combinaison linguistique, de vos exigences de latence, et selon que vous pouvez accepter une dépendance à une API ou avez besoin d'une inférence sur site.

Cycle de vie des index : le problème opérationnel dont personne ne vous prévient

Les index HNSW se dégradent — ce n'est pas un bug, mais une réalité architecturale. À 160 M de vecteurs, une reconstruction HNSW complète prend 3 à 6 heures. Les mises à jour incrémentielles rendent la structure du graphe sous-optimale et érodent le rappel au fil du temps ; les événements de compaction font grimper la latence des requêtes ; et chaque upsert, suppression et fusion de segments déclenche des reconstructions de sous-index qui consomment du CPU en maintenance au lieu de servir les requêtes. Le compromis est inévitable : passer d'un rappel de 0,8 à 0,95 augmente la latence HNSW d'environ 31 %.

Nous concevons une gestion du cycle de vie qui absorbe une ingestion continue sans perte de qualité :

  • Rotation d'index bleu-vert — reconstruire sur une infrastructure séparée et basculer de manière atomique sans aucune interruption.
  • Portes de validation automatisée du rappel — comparer un jeu de requêtes de référence à l'index courant après chaque opération majeure ; si le rappel passe sous le seuil, le basculement n'a pas lieu.
  • La construction HNSW accélérée par GPU dans Qdrant et Elasticsearch réduit les temps de reconstruction d'un ordre de grandeur, bien que l'orchestration du moment de reconstruire, de la manière de valider et de basculer relève d'une ingénierie sur mesure.

La quantification va plus loin encore. Qdrant propose désormais une quantification en 1,5 bit, 2 bits et asymétrique , et Elasticsearch BBQ réduit le tas de plus de 95 % par rapport au float32. Cela économise de la mémoire et améliore le débit, mais chaque schéma présente un profil de rappel différent selon les distributions de données — nous caractérisons donc l'impact sur le rappel de vos vecteurs spécifiques avant de déployer la quantification en production.

Multi-tenancy et isolation à l'échelle réelle

Les équipes de plateforme desservant plus de 200 équipes ML internes, ou les produits SaaS avec des milliers de locataires clients, ont besoin d'une infrastructure qui garantit l'isolation : les requêtes du locataire A ne doivent jamais renvoyer les données du locataire B, les journaux d'audit doivent tracer chaque requête jusqu'à une identité de locataire, et les locataires froids ne devraient pas consommer les ressources dont les locataires chauds ont besoin.

  • Weaviate — le modèle d'un shard par locataire avec des états de locataire (ACTIVE, INACTIVE, OFFLOADED vers S3) est l'implémentation la plus mature pour les déploiements à fort nombre de locataires.
  • Milvus — prend en charge l'isolation au niveau de la base de données, de la collection, de la partition ou de la clé de partition, adaptant la granularité à vos exigences de conformité.

Les deux nécessitent une orchestration sur mesure à l'échelle — le provisionnement des locataires, les transitions d'état, la gestion des quotas et la détection des fuites inter-locataires ne sont pas pris en charge par la base de données elle-même. Nous construisons la couche opérationnelle qui rend la multi-tenancy gérable pour les déploiements réglementés exigeant la conformité SOC 2 ou ISO 27001 .

Les workflows agentiques remodèlent les exigences d'infrastructure

La vague de l'IA agentique change ce que les magasins vectoriels doivent faire. Le RAG statique récupère des documents dans un corpus fixe. Les workflows agentiques nécessitent une mémoire épisodique (historique de conversation et raisonnement intermédiaire), une recherche sémantique sur un grand corpus de documents, et des couches de profil utilisateur — sollicitant souvent les trois en une seule étape d'agent. L'exigence de latence inférieure à 400 ms est plus stricte que celle du RAG par lots, et la prise en charge des transactions ACID devient essentielle pour les agents multi-étapes qui mettent à jour l'état sans écritures partielles.

Aucune base de données vectorielle ne gère bien à elle seule les trois couches de mémoire, alors les équipes assemblent des architectures multi-magasins : Redis pour l'état de session, Qdrant ou Milvus pour la recherche sémantique, et une base de données de graphes pour le suivi des relations. L'Unified Memory Core d'Oracle (mars 2026) cherche à faire converger les requêtes vectorielles, JSON, de graphe, relationnelles et spatiales dans un seul moteur. Nous concevons la couche de récupération pour les systèmes agentiques — quels magasins gèrent quels types de mémoire, comment les requêtes sont routées entre les magasins, et comment la cohérence tient lorsqu'un agent met à jour l'état sur plusieurs backends en une seule étape de raisonnement.

Ce que nous livrons

Chaque mission commence par une phase de benchmarking : nous chargeons vos vecteurs, exécutons vos requêtes et produisons des recommandations de moteur quantifiées. À partir de là, nous construisons l'infrastructure de production :

  • Le cluster de magasin vectoriel, avec planification de capacité et guides opérationnels de mise à l'échelle.
  • Le pipeline d'embeddings, avec ré-indexation incrémentielle déclenchée par CDC et gestion des versions de modèles.
  • L' automatisation du cycle de vie des index, avec rotation bleu-vert et portes de validation du rappel.
  • La couche d'orchestration de la multi-tenancy, lorsque vous avez besoin d'une isolation des locataires.
  • La pile d'observabilité, avec détection de dérive, alertes de régression du rappel et surveillance de la latence P95/P99.
  • Outillage de migration pour les équipes passant d'un moteur à un autre, utilisant des formats Parquet intermédiaires afin de préserver les embeddings lorsque la dimensionnalité correspond plutôt que de forcer une ré-intégration complète.

Nous cadrons chaque mission avec des projections mensuelles explicites de coûts d'infrastructure, afin que vous sachiez ce que coûtera la production avant de vous engager.

Points clés à retenir

  • L'écart entre la démo et la production est un problème d'infrastructure : 50 K vecteurs à 40 ms deviennent 200 M de vecteurs, 500 QPS, 15 dimensions de filtres et des mises à jour horaires.
  • Le choix du moteur est un exercice de benchmarking sur pgvector 0.8, Qdrant, Elasticsearch 9.2, Milvus 2.5 et Weaviate — mesuré sur vos vecteurs, pas sur une matrice de fonctionnalités.
  • 60 % de l'effort d'ingénierie porte sur le pipeline d'embeddings, où les connaissances obsolètes, les documents fantômes et les changements de modèle coûteux (ré-intégrations de 8 M de documents) érodent silencieusement la qualité.
  • Les index HNSW se dégradent ; la rotation bleu-vert, les portes de validation du rappel et la quantification maintiennent le rappel stable sans interruption.
  • La multi-tenancy et la récupération agentique en moins de 400 ms exigent une orchestration que la base de données ne fournit pas — conçue pour les déploiements SOC 2 / ISO 27001, avec des projections de coûts mensuelles annoncées d'emblée.

Infrastructure de récupération et magasins vectoriels

FAQ

Questions fréquentes

Combien coûte l'exploitation d'une infrastructure de recherche vectorielle en production ?

Les coûts dépendent du nombre de vecteurs, du volume de requêtes et de l'utilisation d'une infrastructure gérée ou auto-hébergée. Pinecone démarre à 50 $/mois minimum (Standard) avec 8,25 $ par million d'unités de lecture et 0,33 $/Go/mois de stockage. À 60-100 M de requêtes par mois, l'auto-hébergement devient 50 à 75 % moins cher. Les coûts d'embeddings s'élèvent à 0,01-0,02 $ par million de tokens pour les modèles basés sur API (Cohere embed-v4, OpenAI text-embedding-3-small) ou aux coûts d'instances GPU pour l'inférence sur site. Les coûts cachés sont opérationnels : les reconstructions d'index HNSW à 160 M de vecteurs prennent 3 à 6 heures de calcul, les changements de modèle d'embeddings nécessitent de ré-intégrer les embeddings de l'ensemble du corpus, et la gestion du cycle de vie des index (compaction, validation du rappel, rotation bleu-vert) exige une capacité d'ingénierie dédiée. Nous cadrons chaque mission avec des projections de coûts mensuels couvrant le stockage, le calcul, l'inférence d'embeddings et les frais opérationnels.

Devrions-nous utiliser pgvector, Qdrant, Milvus, Weaviate ou Elasticsearch pour la recherche vectorielle ?

Nous benchmarkons vos vecteurs et requêtes réels par rapport aux candidats avant de recommander. pgvector 0.8 avec scans itératifs offre 471 QPS à 99 % de rappel sur 50 M de vecteurs et ne coûte rien de plus si vous utilisez déjà PostgreSQL. La quantification scalaire de Qdrant dessert des index à un milliard de vecteurs depuis des SSD NVMe à un P95 inférieur à 20 ms, avec construction HNSW accélérée par GPU pour une construction d'index plus rapide. Elasticsearch 9.2 DiskBBQ maintient 100 Mo de mémoire quelle que soit la taille de l'index, changeant l'économie des très grands déploiements. Milvus 2.5 propose une recherche hybride native avec indexation GPU CAGRA. Weaviate gère 50 K shards actifs par nœud pour les charges SaaS à fort nombre de locataires. Le bon choix dépend de votre nombre de vecteurs, de la complexité des filtres de métadonnées, de vos besoins de multi-tenancy et de la capacité de votre équipe à exploiter des clusters Kubernetes ou à recourir à un service géré.

Pourquoi la qualité de notre recherche vectorielle se dégrade-t-elle au fil du temps en production ?

Trois causes courantes. Premièrement, la dérive des embeddings : la distribution de vos données évolue mais l'index a été construit sur l'ancienne distribution. Les techniques Drift-Adapter récupèrent 95-99 % des performances d'origine sans reconstruction complète. Deuxièmement, les connaissances obsolètes : les documents sont mis à jour dans le système source mais l'index vectoriel dessert toujours les anciens embeddings parce que votre ré-indexation s'exécute par lots nocturnes au lieu de déclencheurs CDC. Troisièmement, la dégradation du graphe HNSW due aux mises à jour incrémentielles. La structure du graphe devient sous-optimale à mesure que des vecteurs sont ajoutés et supprimés au fil du temps, et le rappel se dégrade sans aucun signal d'erreur. La solution nécessite une validation automatisée du rappel par rapport à un jeu de requêtes de référence, une ré-indexation incrémentielle déclenchée par les événements de changement de documents, et une rotation d'index bleu-vert périodique pour restaurer la qualité du graphe.

Comment migrer entre bases de données vectorielles sans tout ré-intégrer ?

Aucun format standard de données vectorielles n'existe, et la plupart des bases de données vectorielles ne prennent pas en charge l'export de données d'une manière qui préserve les embeddings de façon portable. Les outils ETL grand public comme Airbyte et SeaTunnel ne gèrent pas les migrations vectorielles. Si votre source et votre cible utilisent les mêmes dimensions d'embeddings, vous pouvez exporter les vecteurs vers un format intermédiaire Parquet ou HDF5 et les recharger dans le nouveau moteur sans ré-intégration. Si vous changez également de modèle d'embeddings, la ré-intégration depuis la source est inévitable. Nous construisons un outillage de migration avec capacité de double écriture afin que votre système de production continue de servir depuis l'ancien magasin pendant que le nouveau rattrape son retard. La migration de Pinecone vers l'auto-hébergement prend généralement 2 à 4 semaines selon le nombre de vecteurs et la complexité des métadonnées.

Comment gérer la multi-tenancy et l'isolation des données dans la recherche vectorielle ?

Le modèle d'un shard par locataire de Weaviate est le plus mature pour les déploiements à fort nombre de locataires : 50 K shards actifs par nœud, 1 M de locataires simultanés sur environ 20 nœuds, avec des états de locataire (ACTIVE, INACTIVE, OFFLOADED vers S3) pour la gestion des coûts. Milvus prend en charge l'isolation au niveau de la base de données, de la collection, de la partition ou de la clé de partition. Les deux nécessitent une orchestration sur mesure à l'échelle : le provisionnement des locataires, les transitions d'état, l'application des quotas et la journalisation d'audit ne sont pas pris en charge par la base de données elle-même. Pour la conformité SOC 2 ou ISO 27001, vous avez aussi besoin d'un traçage des accès au niveau des requêtes et d'une détection des fuites inter-locataires. Nous construisons la couche opérationnelle autour du magasin vectoriel qui gère le cycle de vie des locataires et fournit la piste d'audit qu'exigent les déploiements réglementés.

Quel modèle d'embeddings devrions-nous utiliser pour la récupération en production ?

Par défaut, évaluez par rapport à vos requêtes propres à votre domaine, et non aux classements du leaderboard MTEB. Cohere embed-v4 domine la récupération multilingue à 0,01 $ par million de tokens avec 1 024 dimensions dans plus de 100 langues. OpenAI text-embedding-3-large est une solution polyvalente solide. Nomic Embed v2 à 137 M de paramètres offre le meilleur rapport qualité-taille et s'exécute sur CPU, éliminant les coûts d'inférence GPU. Pour la récupération multimodale, Qwen3-VL-2B gère le texte, les images et les documents dans un seul modèle. Le consensus en production est de 768 à 1 024 dimensions pour les charges RAG. La considération critique est le coût de changement : changer de modèle plus tard signifie ré-intégrer les embeddings de l'ensemble de votre corpus, ce qui, à 8 M de documents, coûte des jours de calcul et nécessite une infrastructure de double écriture. Nous benchmarkons les candidats par rapport à vos schémas de requêtes avant que vous ne vous engagiez.

Comment gérer les reconstructions d'index HNSW sans interruption ?

Les reconstructions d'index HNSW à 160 M de vecteurs prennent 3 à 6 heures avec un matériel CPU uniquement. La construction HNSW accélérée par GPU dans Qdrant et Elasticsearch 9.3 (via NVIDIA cuVS) réduit cela d'un ordre de grandeur au maximum. Mais le temps de reconstruction n'est que la moitié du problème. Le véritable défi est de reconstruire sans mettre l'index de production hors ligne. Nous mettons en œuvre une rotation d'index bleu-vert : un index neuf se construit sur une infrastructure séparée pendant que l'index existant continue de servir les requêtes. Une fois la construction terminée, une validation automatisée du rappel s'exécute par rapport à un jeu de requêtes de référence. Si le rappel atteint le seuil, le trafic bascule de manière atomique. Sinon, l'ancien index continue de servir et nous enquêtons. Cela résout aussi le problème du pic de latence de compaction, puisque le nouvel index possède une structure de graphe optimale sans la fragmentation issue des mises à jour incrémentielles.

De quelle infrastructure vectorielle un système d'IA agentique a-t-il besoin ?

Les workflows agentiques nécessitent plusieurs couches de mémoire au-delà de la récupération statique de documents : une mémoire épisodique pour l'historique de conversation et le raisonnement intermédiaire, une recherche sémantique sur un corpus de documents, et des magasins de profil ou de préférences utilisateur. L'exigence de latence inférieure à 400 ms pour la récupération agentique est plus stricte que celle du RAG par lots, et la prise en charge des transactions ACID compte pour les agents multi-étapes qui mettent à jour l'état sans écritures partielles. Aucune base de données vectorielle ne gère bien à elle seule toutes les couches. Les implémentations en production utilisent des architectures multi-magasins : Redis ou DynamoDB pour l'état de session, Qdrant ou Milvus pour la recherche sémantique, et une base de données de graphes pour le suivi des relations. L'Unified Memory Core d'Oracle (mars 2026) fait converger les requêtes vectorielles, de graphe et relationnelles dans un seul moteur. Nous concevons la couche d'infrastructure de récupération pour les systèmes agentiques, gérant le routage des requêtes entre les magasins et la gestion de la cohérence lorsque les agents mettent à jour plusieurs backends en une seule étape de raisonnement.

Développez votre IA en toute confiance.

Collaborez avec une équipe forte d'une solide expérience dans la conception de la prochaine génération d'IA d'entreprise. Nous vous aidons à concevoir, développer et déployer une stratégie d'IA digne de confiance.

Veriprajna société de conseil en Deep Tech est spécialisée dans la conception de systèmes d'IA critiques pour la sûreté destinés aux secteurs de la santé, de la finance et de la réglementation. Nos architectures sont validées au regard de protocoles établis et accompagnées d'une documentation de conformité complète.