Home
Login

Système de génération augmentée par la récupération basé sur un graphe de connaissances, qui extrait automatiquement des graphes de connaissances structurés à partir de texte via un LLM et améliore les performances de RAG.

MITPython 25.9kmicrosoft Last Updated: 2025-06-18

Présentation détaillée du projet Microsoft GraphRAG

Aperçu du projet

GraphRAG (Graphs + Retrieval Augmented Generation) est un projet open source développé par Microsoft Research. Il s'agit d'un système modulaire de génération augmentée par la récupération basé sur des graphes. Le projet combine l'extraction de texte, l'analyse de réseau et l'invite de grands modèles de langage (LLM) avec la génération de résumés, formant un système de bout en bout spécialement conçu pour une compréhension approfondie des ensembles de données textuelles.

Principales caractéristiques techniques

1. Construction automatique de graphes de connaissances

GraphRAG utilise des grands modèles de langage (LLM) pour extraire automatiquement des graphes de connaissances riches à partir de n'importe quel ensemble de documents textuels. L'une des caractéristiques les plus intéressantes de cet index de données basé sur des graphes est sa capacité à signaler la structure sémantique des données avant toute requête de l'utilisateur.

2. Détection de communautés et hiérarchie

Le système extrait non seulement les entités et les relations, mais construit également une hiérarchie de communautés, génère des résumés de ces communautés, puis utilise ces structures lors de l'exécution de tâches basées sur RAG.

3. Capacité de récupération améliorée

En créant un graphe de connaissances basé sur le corpus d'entrée, GraphRAG améliore considérablement la partie "récupération" de RAG, en remplissant la fenêtre de contexte avec un contenu plus pertinent, ce qui permet d'obtenir de meilleures réponses et de capturer les sources de preuves.

Principaux modules fonctionnels

Pipeline de données et suite de transformation

Le projet GraphRAG est un pipeline de données et une suite de transformation spécialement conçus pour exploiter la puissance des grands modèles de langage afin d'extraire des données structurées significatives à partir de textes non structurés.

Système de requête

  • Recherche globale : Capable de répondre à des questions complexes nécessitant la connaissance de l'ensemble des données.
  • Recherche locale : Requêtes précises ciblant des entités ou des concepts spécifiques.
  • Comparaison Vector RAG : Comprend une implémentation simple de Vector RAG de base, facilitant la comparaison des résultats de recherche pour différents types de questions.

CLI et accélérateur

Le projet fournit une interface de ligne de commande (CLI) et une solution d'accélérateur GraphRAG, simplifiant l'expérience utilisateur pour les développeurs et les utilisateurs.

Architecture technique

Processus central

  1. Extraction de texte : Extraction des entités et des relations à partir du texte brut.
  2. Construction de graphes : Conversion des entités et des relations identifiées en format graphe.
  3. Analyse de la communauté : Identification des structures communautaires dans le graphe.
  4. Génération de résumés : Génération de résumés pour les communautés identifiées.
  5. Requête améliorée : Utilisation de ces structures pour améliorer les invites lors des requêtes.

Produits de sortie

GraphRAG crée plusieurs produits de sortie pour stocker le modèle de connaissances indexé, et ces produits seront continuellement mis à jour et itérés dans les futures versions.

Scénarios d'application

Découverte de données complexes

GraphRAG est particulièrement adapté aux scénarios nécessitant la découverte de modèles et de relations complexes à partir de grandes quantités de données textuelles, capable de répondre à des questions globales que les systèmes RAG traditionnels ont du mal à traiter.

Données privées narratives

Pour les ensembles de données privées contenant un contenu narratif riche, GraphRAG est capable de débloquer les capacités de découverte des LLM sur ces données.

Recherche et analyse

Le système peut générer des questions de recherche, optimiser les bases de connaissances, améliorer les invites des utilisateurs et créer des outils qui améliorent l'intelligence des agents d'IA.

Installation et utilisation

Démarrage rapide

Le projet offre une option simple d'installation à partir de PyPI, comprenant un exemple complet de bout en bout montrant comment utiliser le système pour indexer du texte et utiliser les données indexées pour répondre à des questions sur les documents.

Exigences de configuration

  • L'initialisation de l'espace de travail nécessite l'exécution de la commande graphrag init.
  • Création des fichiers de configuration .env et settings.yaml.
  • Nécessite la configuration des clés d'API LLM et des paramètres associés.

Préparation des données

Le système prend en charge l'entrée de plusieurs formats de texte, capable de traiter des ensembles de documents à grande échelle et d'établir les graphes de connaissances correspondants.

Avantages techniques

Améliorations par rapport au RAG traditionnel

  • Meilleure compréhension du contexte : Fournit des informations contextuelles plus riches grâce aux graphes de connaissances.
  • Capacité de raisonnement global : Capable de répondre à des questions complexes nécessitant l'intégration d'informations provenant de plusieurs documents.
  • Représentation structurée des connaissances : Convertit le texte non structuré en une représentation structurée des connaissances.
  • Interprétabilité : Fournit une traçabilité des sources de preuves et des chemins de raisonnement.

Écosystème open source

En tant que projet open source, GraphRAG favorise la collaboration et le développement dans les domaines universitaires et industriels en matière de technologies RAG améliorées par les graphes.

Conclusion

Microsoft GraphRAG représente une avancée significative dans la technologie de génération augmentée par la récupération. En combinant les graphes de connaissances avec les grands modèles de langage, il améliore considérablement les capacités de compréhension du texte et des systèmes de questions-réponses. Il ne s'agit pas seulement d'un outil technique, mais aussi d'une étape importante dans la promotion du développement de l'IA dans le domaine de l'analyse de textes complexes.