Comment créer des pipelines de génération de graphes de connaissances à partir de texte avec kg-gen, NetworkX et des visualisations interactives
Une équipe de chercheurs de l'Université Stanford a publié un tutoriel complet présentant kg-gen, une bibliothèque Python open source permettant de générer automatiquement des graphes de connaissances à partir de texte non structuré. Le workflow décrit s'appuie sur trois outils principaux : kg-gen pour l'extraction des entités et relations, NetworkX pour l'analyse des structures de graphes, et PyVis ainsi que Matplotlib pour la visualisation interactive. Le processus repose sur un modèle de langage configuré via LiteLLM, une couche d'abstraction qui permet de brancher indifféremment GPT-4o-mini d'OpenAI, Claude d'Anthropic, Gemini de Google ou des modèles locaux via Ollama. À partir d'un texte simple, « Linda est la mère de Josh, Ben est son frère, Andrew son père, Josh étudie à Stanford », kg-gen identifie automatiquement les entités (Linda, Josh, Ben, Stanford) et les relations sémantiques qui les lient sous forme de triplets sujet-prédicat-objet. Pour les passages plus longs, la bibliothèque intègre un mécanisme de découpage par chunks de 800 caractères et un algorithme de clustering qui regroupe les entités synonymes, évitant ainsi les doublons lorsqu'un même concept apparaît sous plusieurs formes dans le texte source.
L'intérêt concret de cet outil réside dans sa capacité à transformer des corpus textuels volumineux et désordonnés en structures de données navigables et interrogeables. Pour les équipes data, les chercheurs ou les développeurs travaillant sur des bases documentaires, cela représente un gain significatif : là où il fallait annoter manuellement les relations entre concepts, kg-gen automatise l'extraction en quelques lignes de code. Le graphe résultant peut ensuite être analysé avec NetworkX pour identifier les nœuds les plus connectés, détecter des communautés thématiques, ou mesurer la centralité de certains acteurs dans un corpus. La visualisation interactive via PyVis permet de naviguer dans le graphe directement dans un notebook Jupyter ou un navigateur, ce qui ouvre des usages en veille technologique, en analyse de réseaux d'influence ou en construction de bases de connaissances pour des systèmes RAG.
kg-gen a été développé à Stanford et s'appuie en interne sur DSPy, un framework de programmation déclarative pour les LLM, pour garantir des sorties structurées et reproductibles. LiteLLM, qui sert de couche de routage, supporte une quarantaine de fournisseurs de modèles, ce qui rend le pipeline indépendant d'un prestataire unique. Ce tutoriel s'inscrit dans une tendance plus large visant à combiner les grands modèles de langage avec des représentations symboliques du savoir, à mi-chemin entre les approches purement neuronales et les systèmes expert classiques. Plusieurs grandes entreprises tech explorent cette direction pour améliorer la fiabilité des réponses de leurs IA, notamment en réduisant les hallucinations en ancrant le raisonnement dans un graphe de faits vérifiables. La prochaine étape naturelle du projet consiste à fusionner des graphes issus de sources multiples, un problème d'alignement d'entités que kg-gen aborde également dans les sections avancées du tutoriel.
Dans nos dossiers
Vu une erreur factuelle dans cet article ? Signalez-la. Toutes les corrections valides sont publiées sur /corrections.




