GraphRAG : quand le graphe de connaissances remplace (ou complète) la base vectorielle
Le RAG classique fonctionne bien quand la question porte sur un passage précis d’un document. Il échoue dès qu’il faut relier plusieurs informations dispersées : « quels sont les sujets récurrents dans ce corpus ? », « qui collabore avec qui ? », « comment tel acteur influence-t-il tel autre ? ». GraphRAG répond à ce besoin en indexant le corpus sous forme de graphe : entités, relations, communautés, plutôt que (ou en plus de) chunks vectorisés. Microsoft Research a popularisé l’approche en 2024 avec son projet open source ; l’écosystème s’est depuis élargi à Neo4j, LlamaIndex et LangChain, tous disponibles en licence « permissive ».
Ce que le vecteur ne sait pas faire
Une base vectorielle répond très bien aux questions locales (quel paragraphe parle de X), mais elle échoue sur les questions globales qui exigent d’agréger des dizaines de documents. Exemple : sur un corpus de comptes-rendus de projet, retrouver « les trois risques structurels qui reviennent depuis deux ans » suppose de regrouper les signaux faibles, pas de pointer un chunk isolé. Un graphe résout ce problème en rendant les relations explicites et navigables.
Anatomie d’un pipeline GraphRAG
Le schéma classique, quel que soit l’outillage, comporte quatre étapes :
- Extraction : un LLM parcourt chaque document et en extrait entités (personnes, lieux, concepts, organisations) et relations ( « A finance B », « B dépend de C »). Sortie typique : triplets sujet-prédicat-objet.
- Construction du graphe : les triplets sont consolidés (déduplication des entités, fusion des alias) et persistés dans une base graphe : Neo4j, Memgraph, ou un simple format JSON/Parquet pour les petits volumes.
- Détection de communautés : un algorithme comme Leiden regroupe les nœuds fortement connectés en clusters thématiques. Chaque communauté reçoit ensuite un résumé généré par LLM, c’est la brique-clé qui permet les questions globales.
- Interrogation hybride : selon la question, le système choisit une recherche locale (voisinage d’un nœud), globale (résumés de communautés) ou mixte.
Trois implémentations open source crédibles
- Microsoft GraphRAG (licence MIT) : l’implémentation de référence, très complète mais coûteuse en tokens à l’indexation. Idéale pour explorer l’approche sur un corpus fermé.
- Neo4j + LLM Graph Builder : pile mature, graphe natif, requêtes Cypher pour les questions complexes, intégration directe avec LangChain et LlamaIndex. Plus artisanale mais plus contrôlable.
- LightRAG (licence MIT, HKU) : alternative plus légère à Microsoft GraphRAG, incrémentale (on peut ajouter des documents sans tout réindexer) et moins gourmande en LLM calls.
Coûts et limites à connaître
GraphRAG n’est pas gratuit. L’étape d’extraction consomme beaucoup de tokens, il faut compter plusieurs appels LLM par document, ce qui rend une version 100 % auto-hébergée (Ollama, vLLM) très recommandée. La détection de communautés et leurs résumés ajoutent un coût d’indexation non négligeable, mais qui s’amortit sur la durée d’exploitation. Sur un petit corpus (< 100 documents), un RAG vectoriel classique suffit souvent ; GraphRAG prend tout son sens sur des corpus volumineux, hétérogènes, ou quand la valeur est dans les liens entre documents.
Hybrider plutôt que remplacer
Le pattern qui émerge en 2025 n’est pas « graphe contre vecteur » mais les deux simultanément : un pgvector ou un Qdrant pour le retrieval local classique, un Neo4j pour la navigation relationnelle, et un orchestrateur (LangGraph, Dify) qui route la requête vers la bonne stratégie selon son type. Le reranker vu dans le sujet précédent trouve sa place naturellement en sortie du retrieval vectoriel, tandis que le graphe alimente les questions agrégées.
Par où commencer
Pour un POC rapide : Neo4j Community Edition en Docker, LlamaIndex ou LangChain comme couche d’intégration, Ollama en backend LLM pour la phase d’extraction. Prévoir un premier corpus de test bien délimité (quelques dizaines de documents thématiques) et mesurer la valeur ajoutée sur trois à cinq questions typiques qui sont aujourd’hui mal traitées par le RAG vectoriel. Si la réponse est nettement meilleure, c’est un signal fort pour passer à l’échelle.
GraphRAG n’est pas une énième mode : c’est le moment où le RAG sort de la logique « chercher un passage » pour entrer dans celle de « comprendre un ensemble ». Un passage obligé pour toute organisation qui veut exploiter sérieusement un patrimoine documentaire.
