Paper2Code : transformer des articles de recherche en code fonctionnel 75

小编 ·

Paper2Code : transformer des articles de recherche en code fonctionnel

Paper2Code transforme des articles de machine learning en frameworks de code utilisables. Développé conjointement par KAIST (Institut avancé coréen des sciences et technologies) et DeepAuto.ai, il imite le développement logiciel humain en générant du code en trois étapes : planification, analyse et codage.

Paper2Code : transformer des articles de recherche en code fonctionnel

Qu'est-ce que Paper2Code ?

Paper2Code est un outil capable de transformer des articles de recherche en apprentissage automatique en structures de code utilisables. Développé conjointement par le KAIST (Korea Advanced Institute of Science and Technology) et DeepAuto.ai, il génère du code selon trois étapes — planification, analyse et codage — imitant ainsi le processus de développement logiciel humain.

Fonctionnement de Paper2Code

  • Lors de la phase de planification, il établit d'abord un cadre général et conçoit l'architecture du système, par exemple en dessinant des diagrammes UML et en définissant la structure des fichiers, puis il planifie la collaboration entre les fichiers et les modules, et génère enfin les fichiers de configuration.

  • Lors de la phase d'analyse, il examine en profondeur la fonction de chaque fichier, ses entrées et sorties, ainsi que la manière dont il se connecte aux autres fichiers.

  • Lors de la phase de génération, il produit un code modulaire avec des dépendances en s'appuyant sur la planification et l'analyse précédentes.

Fonctionnalités principales de Paper2Code

  • Génération automatisée de code : transforme directement les articles de recherche en apprentissage automatique en dépôts de code complets, incluant l'architecture du système, les fichiers de dépendances et les fichiers de configuration.

  • Entrée multi-format : prend en charge les articles aux formats PDF et LaTeX, et permet également de convertir les articles PDF au format JSON.

  • Processus de traitement en trois étapes : chaque étape est gérée par un agent dédié, garantissant une structure de code claire et fidèle à l'esprit de l'article.

  • Phase de planification : élabore une feuille de route de haut niveau, identifie les composants principaux, modélise les relations structurelles entre les modules, identifie les dépendances entre fichiers et l'ordre d'exécution, et génère des fichiers de configuration facilitant la personnalisation des expérimentations par les chercheurs.

  • Phase d'analyse : analyse en détail chaque fichier et chaque fonction, en précisant les fonctionnalités, les interactions et les contraintes architecturales des algorithmes.

  • Phase de génération de code : synthétise l'ensemble du dépôt de code à partir des résultats précédents, garantissant la cohérence des appels entre modules, réduisant les bugs et maintenant la cohérence logique.

  • Évaluation de la qualité du code : prend en charge des évaluations avec et sans référence, avec une notation de 1 à 5.

Paper2Code : transformer des articles de recherche en code.webp

Avantages :

  • Génération de code de haute qualité : dans le benchmark PaperBench, Paper2Code surpasse les frameworks de génération de code existants ainsi que les méthodes de référence simples.

  • Collaboration multi-agents : grâce à un framework multi-agents, chaque étape est mieux exécutée, améliorant ainsi la qualité du code généré.

  • Sortie structurée : le dépôt de code généré possède une structure claire, avec des fichiers, des modules, des diagrammes d'architecture et des fichiers de configuration.

  • Haute exécutabilité : le code généré fonctionne quasiment sans modification.

Limites :

  • Pour l'instant, seuls les articles du domaine de l'apprentissage automatique sont pris en charge.

  • Certains cas particuliers nécessitent encore un débogage manuel.

  • Les domaines tels que la biologie, la physique ou l'économie ne sont pas encore pris en charge.

Cas d'utilisation de Paper2Code

  • Reproduction scientifique : aide les chercheurs à reproduire les résultats d'articles sans code.

  • Éducation : offre aux étudiants une opportunité d'apprentissage allant de la théorie à la pratique.

  • Accélération de la recherche : permet aux chercheurs de progresser plus rapidement en s'appuyant sur les travaux d'autres.

  • Ajustement des expérimentations : facilite la modification des configurations, de l'architecture et des jeux de données par les chercheurs.

Les évaluations expérimentales montrent que PaperCoder génère du code de haute qualité à partir d'articles en apprentissage automatique, proche du niveau d'implémentation des auteurs, et surpassant les autres modèles de référence.

Lien open source

Github :https://github.com/going-doer/Paper2Code