Aller au contenu principal
Comment construire une intelligence de code au niveau dépôt avec Repowise : analyse de graphe, détection de code mort et contexte IA
OutilsMarkTechPost6sem· 2 min de lecture

Comment construire une intelligence de code au niveau dépôt avec Repowise : analyse de graphe, détection de code mort et contexte IA

Source originale ↗·

Repowise est un outil d'analyse de code qui propose une approche nouvelle pour comprendre la structure interne d'un dépôt logiciel à l'échelle du projet entier. Dans ce tutoriel pratique, les auteurs l'appliquent à itsdangerous, une bibliothèque Python de référence maintenue par Pallets, afin de démontrer comment configurer l'outil, connecter un modèle de langage (Claude Sonnet 4.5 d'Anthropic ou GPT-4o mini d'OpenAI selon les clés API disponibles), puis lancer le pipeline d'indexation qui génère un ensemble d'artefacts dans un répertoire .repowise/. L'outil peut également fonctionner en mode --index-only, sans LLM, pour les environnements sans accès à une API externe. Une fois initialisé, Repowise produit un graphe de dépendances entre fichiers et modules, qu'il analyse ensuite avec des algorithmes de théorie des graphes issus de la bibliothèque NetworkX, dont PageRank pour identifier les nœuds les plus influents et la détection de communautés pour regrouper les fichiers par cluster fonctionnel.

Ce type d'intelligence repository-level répond à un problème concret que rencontrent les équipes de développement sur les bases de code volumineuses : savoir quels fichiers sont critiques, lesquels sont obsolètes, et comment les modifications en cascade se propagent. La détection de code mort, paramétrée ici avec un seuil de confiance à 0,7, permet d'identifier automatiquement les fichiers supprimables sans risque. La fonctionnalité de maintenance cascade_budget limite à 10 le nombre de fichiers touchés en cascade lors d'une modification, ce qui aide à estimer l'effort réel d'un refactoring avant de le commencer. La génération automatique d'un fichier CLAUDE.md, format de documentation structurée utilisé nativement par Claude Code d'Anthropic, facilite l'intégration du contexte architectural dans les workflows assistés par IA, en donnant au modèle une carte du projet plutôt qu'un tas de fichiers bruts.

L'émergence d'outils comme Repowise s'inscrit dans une tendance plus large : donner aux LLMs une compréhension structurelle du code plutôt qu'une lecture séquentielle naïve. Là où les assistants classiques lisent fichier par fichier, une approche par graphes permet de raisonner sur les dépendances, la centralité et les clusters de responsabilité. Le protocole MCP (Model Context Protocol), sur lequel s'appuie Repowise pour exposer ses outils en CLI, est l'un des standards en cours d'adoption dans l'écosystème des agents de code. Le fait que l'outil génère directement un CLAUDE.md exploitable par Claude Code suggère une intégration croissante entre les outils d'analyse statique et les agents IA, une convergence qui pourrait redéfinir la façon dont les développeurs documentent et maintiennent les grandes bases de code à l'ère des assistants intelligents.

💬 L'analyse de Mathieu

Analyser un dépôt via un graphe de dépendances pour repérer le code mort et estimer l'impact d'un refactoring avant de le lancer, c'est exactement ce qu'il manque sur les grandes codebases. Ce qui m'intéresse le plus, c'est la génération auto du CLAUDE.md : si tu travailles avec Claude Code au quotidien, avoir une carte architecturale du projet plutôt qu'un tas de fichiers à parcourir un par un, ça change vraiment la façon dont le modèle raisonne. Reste à voir si ça tient sur 500k lignes, mais le concept est là.

Cet article vous a été utile ?

Vu une erreur factuelle dans cet article ? Signalez-la. Toutes les corrections valides sont publiées sur /corrections.

À lire aussi

Comment construire un système d'agents IA avec routage dynamique des outils, planification et injection de contexte
1MarkTechPost 

Comment construire un système d'agents IA avec routage dynamique des outils, planification et injection de contexte

Un tutoriel récemment publié détaille la construction complète d'un système d'agent IA de type MCP (Model Context Protocol) en Python, depuis la configuration jusqu'à l'exécution de tâches réelles. Le système repose sur un serveur d'outils modulaire qui expose des capacités structurées : recherche web via DuckDuckGo, récupération de documents locaux par similarité TF-IDF, chargement de jeux de données et exécution de code Python. Le tout s'appuie sur l'API OpenAI avec le modèle gpt-4.1-mini, et mobilise des bibliothèques comme Pydantic pour la validation des schémas, scikit-learn pour la recherche vectorielle, et Rich pour l'affichage console. Les paramètres globaux limitent volontairement l'agent à trois appels d'outils maximum par tâche, cinq résultats web, et trois documents récupérés, afin de maintenir des performances prévisibles. Ce que ce tutoriel apporte de concret, c'est une réponse au problème central des agents IA en production : comment éviter qu'un agent appelle n'importe quel outil dans n'importe quel contexte. Le système implémente un routeur hybride qui combine des heuristiques simples et du raisonnement LLM pour décider dynamiquement quels outils rendre visibles selon la tâche en cours. Un agent qui répond à une question factuelle simple ne voit pas les outils d'exécution de code ; un agent qui analyse des données n'a pas accès à la recherche web si elle est inutile. Cette exposition sélective réduit les coûts d'inférence, améliore la traçabilité des décisions, et limite la surface d'erreur, trois enjeux critiques pour quiconque déploie des agents dans un environnement professionnel. Le Model Context Protocol, popularisé par Anthropic en novembre 2024 comme standard ouvert pour connecter les LLM à des outils externes, cherche à résoudre un problème de fragmentation : chaque développeur réinventait sa propre façon de brancher des modèles à des APIs ou des bases de données. Ce tutoriel illustre comment les principes MCP, notamment l'injection de contexte structuré, les politiques de routage et le contrôle d'accès aux outils, peuvent être implémentés sans framework propriétaire, en Python pur. À mesure que les systèmes multi-agents se multiplient dans les entreprises, cette approche d'exposition minimale et contrôlée des capacités s'impose comme une bonne pratique d'architecture, opposée aux agents monolithiques qui ont accès à tout et dont le comportement devient difficile à auditer ou à reproduire.

💬 Le routage sélectif des outils, c'est exactement ce qui manque à 90% des démos d'agents qu'on voit tourner. Un agent qui n'expose que ce dont il a besoin pour la tâche en cours, c'est pas glamour, mais c'est ce qui fait la différence entre un prototype et quelque chose qu'on peut vraiment auditer en prod. Reste à voir si les gens implémentent ça sérieusement ou si c'est encore du "best practice" qu'on lit le dimanche et qu'on oublie le lundi.

OutilsTuto
1 source
Amazon Nova Embeddings : construire un moteur de recherche audio intelligent par analyse sémantique
2AWS ML Blog 

Amazon Nova Embeddings : construire un moteur de recherche audio intelligent par analyse sémantique

Amazon a lancé le 28 octobre 2025 Amazon Nova Multimodal Embeddings, un modèle d'embedding unifié disponible via Amazon Bedrock, capable de traiter simultanément du texte, des documents, des images, des vidéos et de l'audio au sein d'un seul et même système. Concrètement, ce modèle convertit n'importe quel contenu audio en vecteurs numériques denses dans un espace à haute dimension, avec quatre options de taille : 3 072 dimensions (par défaut), 1 024, 384 ou 256. Chaque vecteur encode à la fois les propriétés acoustiques d'un son, rythme, hauteur tonale, timbre, couleur émotionnelle, et son sens sémantique. Deux extraits musicaux similaires, par exemple un violon et un violoncelle jouant la même mélodie, obtiendront une similarité cosinus de 0,87, les plaçant proches dans cet espace vectoriel, tandis qu'un morceau de rock avec batterie n'obtiendra que 0,23 face à ces mêmes clips. L'enjeu est considérable pour tous ceux qui gèrent de grandes bibliothèques audio : studios de production, plateformes de podcast, services de streaming, équipes de post-production. Les méthodes traditionnelles, transcription manuelle, balisage de métadonnées, conversion parole-texte, ne capturent que le contenu linguistique. Elles sont aveugles aux propriétés acoustiques pures : l'ambiance d'une pièce, l'émotion dans une voix, le genre musical, les sons environnementaux. Nova Multimodal Embeddings comble ce vide en permettant des requêtes en langage naturel comme "musique mélancolique avec piano" ou "bruit de foule dans un stade", sans qu'aucune transcription préalable ne soit nécessaire. Le résultat est une recherche sémantique sur le son lui-même, pas seulement sur ses métadonnées. Le modèle repose sur une technique appelée Matryoshka Representation Learning (MRL), qui structure les embeddings de façon hiérarchique, à la manière des poupées russes : un vecteur de 3 072 dimensions contient toute l'information, mais on peut tronquer aux 256 premières dimensions et conserver des résultats précis. Cela permet de générer les embeddings une seule fois, puis d'ajuster la taille selon les contraintes de coût de stockage ou de performance, sans retraiter l'audio. Cette approche s'inscrit dans la tendance plus large des modèles d'embedding multimodaux unifiés, où Amazon rivalise directement avec Google (Vertex AI Embeddings) et OpenAI (CLIP, Whisper). L'intégration native dans Bedrock facilite le déploiement en production via des bases de données vectorielles compatibles k-NN. La prochaine étape logique sera l'intégration de ces capacités dans des pipelines RAG (retrieval-augmented generation) pour des agents conversationnels capables de répondre à des questions sur du contenu audio sans intervention humaine préalable.

UELes studios de production, plateformes de podcast et services de streaming européens peuvent intégrer cette API via Amazon Bedrock pour améliorer leurs moteurs de recherche audio sémantique.

OutilsOutil
1 source
Comment créer des pipelines de génération de graphes de connaissances à partir de texte avec kg-gen, NetworkX et des visualisations interactives
3MarkTechPost 

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.

OutilsTuto
1 source
SkillNet : des agents IA augmentés de compétences pour la recherche, l'évaluation, l'analyse de graphes et la planification
4MarkTechPost 

SkillNet : des agents IA augmentés de compétences pour la recherche, l'évaluation, l'analyse de graphes et la planification

Des chercheurs ont publié un tutoriel complet autour de SkillNet, un framework open source conçu pour augmenter les agents d'intelligence artificielle avec des compétences modulaires et réutilisables. Le système repose sur la bibliothèque Python skillnet-ai, accessible via PyPI, et s'appuie sur une API centralisée hébergée à api.openkg.cn. La démonstration utilise GPT-4o comme modèle par défaut, mais le framework reste compatible avec d'autres LLM. Le workflow présenté couvre l'ensemble du cycle de vie d'une compétence : recherche, installation depuis GitHub, inspection des métadonnées, évaluation qualitative, visualisation sous forme de graphe, et enfin intégration dans un pipeline d'exécution piloté par un agent planificateur. Ce type d'architecture répond à un problème concret qui freine le déploiement des agents IA en production : la difficulté à composer des capacités spécialisées de façon fiable et maintenable. Plutôt que d'entraîner un modèle monolithique pour chaque nouveau besoin, SkillNet permet à un agent de découvrir dynamiquement des compétences existantes, de les filtrer selon des critères de qualité mesurables, et de les assembler en pipeline selon les sous-tâches d'un objectif complexe. L'approche est particulièrement utile pour les équipes qui développent des agents multi-domaines, en réduisant la duplication d'efforts et en rendant les briques fonctionnelles auditables et interchangeables. La recherche sémantique intégrée, avec un seuil de similarité paramétrable, va au-delà de la simple correspondance par mots-clés et permet de trouver des compétences pertinentes même quand le vocabulaire ne correspond pas exactement. SkillNet s'inscrit dans un mouvement plus large visant à standardiser l'écosystème des agents IA, à l'image de ce que npm ou PyPI ont fait pour les bibliothèques logicielles. Le projet est adossé à OpenKG, une initiative académique chinoise spécialisée dans les graphes de connaissances ouvertes, ce qui explique l'orientation vers la représentation des relations entre compétences sous forme de graphe. La dépendance à GitHub comme dépôt de référence pour les skills instalables ancre le framework dans les pratiques existantes des développeurs. L'intégration d'une porte qualité automatisée, évaluant chaque compétence sur plusieurs dimensions avant de l'inclure dans un pipeline, anticipe les besoins des environnements de production où la fiabilité est non négociable. Les suites probables incluent l'émergence d'un registre communautaire de compétences validées et l'intégration avec des orchestrateurs d'agents comme LangGraph ou AutoGen.

💬 C'est le genre de truc qu'on attendait depuis un moment pour sortir des agents monolithiques. SkillNet propose quelque chose de sobre : tu découvres une compétence, tu la passes à une porte qualité, tu l'assembles dans un pipeline. Bon, ça vient d'OpenKG, une initiative académique chinoise, donc faudra voir si l'écosystème prend vraiment ou si ça reste un beau prototype de labo.

OutilsOutil
1 source

Recevez l'essentiel de l'IA chaque jour

Une sélection éditoriale quotidienne, sans bruit. Directement dans votre boîte mail.

Recevez l'essentiel de l'IA chaque jour

Gratuit · 1 email le matin, l'essentiel de l'IA · désinscription en un clic