Filtrage par métadonnées dans RAG (Metadata Filtering)
Technique de recherche combinée dans les bases de données vectorielles (Self-Querying Retriever). Permet de combiner la recherche sémantique avec des filtres stricts de base de données basés sur les métadonnées : date de publication, auteur du document, niveau d'accès, langue ou département de l'entreprise.
1. Vue d'ensemble du concept et de sa finalité
Imaginez une immense bibliothèque où tous les livres sont empilés en un tas géant au milieu de la salle. Vous vous approchez et dites : « Trouve-moi les règles de sécurité au travail ». Le bibliothécaire trouve une brochure... mais il s'avère qu'il s'agit d'une édition de 1978 ! Certes, le contenu correspond parfaitement au thème « sécurité au travail », mais ses règles ont cinquante ans de retard.
La recherche vectorielle pure souffre précisément de cette cécité : elle évalue uniquement la similarité sémantique des termes, ignorant totalement la date, l'auteur ou le statut du document.
Pour corriger ce défaut, on utilise le Filtrage par métadonnées (Metadata Filtering).
Analogie pratique : comme les filtres sur un site e-commerce : vous cherchez des « baskets » (recherche sémantique), mais vous cochez « taille 42 uniquement », « couleur noire » et « réduction de plus de 20 % » (métadonnées).
2. Fonctionnement de la recherche biphasée avec filtrage
┌─────────────────────────────────────────────────────────────┐
│ SCHÉMA DE FILTRAGE MÉTADONNÉES │
├─────────────────────────────────────────────────────────────┤
│ 👤 REQUÊTE HUMAINE : │
│ « Quelles sont les nouvelles instructions pour les │
│ coursiers publiées en 2026 ? » │
├─────────────────────────────────────────────────────────────┤
│ 🧠 LE LLM DIVISE AUTOMATIQUEMENT LA REQUÊTE EN DEUX PARTIES:│
│ 1. Vecteur sémantique : « instructions obligations │
│ livraison » │
│ 2. Filtre SQL strict : │
│ `WHERE year == 2026 AND category == 'logistics'` │
├─────────────────────────────────────────────────────────────┤
│ 🗄️ BASE DE DONNÉES VECTORIELLE (Qdrant / Pinecone) : │
│ - Élimine instantanément 95 % des anciens documents │
│ d'autres années │
│ - Recherche parmi les 5 % restants les vecteurs │
│ sémantiques les plus proches │
├─────────────────────────────────────────────────────────────┤
│ 🎯 RÉSULTAT : Uniquement les instructions actuelles de 2026!│
└─────────────────────────────────────────────────────────────┘
3. Les 4 champs de métadonnées qui sauveront votre projet
- Date de création / mise à jour (
updated_at) : privilégiez toujours les réglementations récentes aux archives. - Niveau de droits d'accès (
role_allowed) : protection contre le fait qu'un stagiaire voie dans les réponses du bot des fichiers marquésstrictly_confidential. - Statut de version (
status: 'active' | 'archived') : exclusion des brouillons et des projets obsolètes. - Langue du document (
lang: 'uk' | 'en') : éviter le mélange incohérent de réponses multilingues.
4. Conclusion pratique
Les vecteurs sans métadonnées ne représentent que la moitié du succès. Accompagnez systématiquement chaque chunk stocké en base d'un riche passeport de métadonnées — cela transformera un générateur de citations aléatoire en un système métier rigoureux et juridiquement fiable.
FAQ: Filtrage par métadonnées dans RAG (Metadata Filtering)
Termes associés
Recherche vectorielle vs Ctrl+F (Dense vs Sparse)
Comparaison de deux approches de recherche : la recherche sémantique par réseau neuronal (Dense Retrieval) et la recherche classique par correspondance de mots-clés (Sparse / BM25). Explique pourquoi la recherche vectorielle peut échouer lors de la recherche de références produits et comment fonctionne la recherche hybride.
Connexion des bases de connaissances (Google Drive, Notion, Confluence)
Technologie d'intégration des sources de données d'entreprise avec les modèles de langage via des connecteurs prêts à l'emploi (Connectors / ETL). Synchronise automatiquement les documents mis à jour depuis Google Drive, Notion, Confluence et Slack vers une base vectorielle, sans téléchargement manuel de fichiers.
Bases de données vectorielles (Vector DBs & ANN Search)
SGBD spécialisées et extensions (Qdrant, pgvector, Milvus, Chroma, Turso), optimisées pour le stockage de millions de vecteurs multidimensionnels et la recherche approximative des plus proches voisins (Approximate Nearest Neighbors) ultra-rapide.