Paper2Code : Transformation automatique d'articles sur l'apprentissage automatique en code exécutable
Introduction générale
Paper2Code est un projet open source qui vise à résoudre le problème du manque d'implémentations de code pour les articles sur l'apprentissage automatique. Il transforme automatiquement les articles scientifiques en référentiels de codes exécutables grâce au système multi-agents de modélisation des grands langages (LLM) PaperCoder. Le système adopte un processus en trois phases de planification, d'analyse et de génération de code, qui est traité séparément par des agents spécialisés afin de générer des implémentations de code de haute qualité qui sont fidèles à l'article. Le projet prend pour exemple le célèbre document "Attention Is All You Need" et démontre le processus qui va du document à la génération de code. Transformateur Paper2Code prend en charge les entrées papier aux formats PDF et LaTeX. Paper2Code prend en charge les entrées papier aux formats PDF et LaTeX pour les chercheurs, les développeurs et les étudiants en apprentissage automatique. Paper2Code obtient de bons résultats dans les benchmarks PaperBench et le code est disponible publiquement sur GitHub, ce qui le rend facile à installer et à utiliser.

Liste des fonctions
- Convertir automatiquement les articles sur l'apprentissage automatique en référentiels de codes exécutables.
- Prise en charge de la saisie de documents aux formats PDF et LaTeX pour générer des données JSON structurées.
- Fournit un flux de traitement en trois phases pour la planification, l'analyse et la génération de code.
- Générer un référentiel de code complet comprenant l'architecture du système, les dépendances et les fichiers de configuration.
- Prend en charge l'évaluation de la qualité des codes référencés et non référencés sur une échelle de 1 à 5.
- Fournit des exemples de scripts permettant d'exécuter rapidement le code Transformer pour l'article "L'attention est tout ce dont vous avez besoin".
- Open source et gratuit, permettant aux utilisateurs de modifier le code et d'y contribuer.
Utiliser l'aide
Processus d'installation
Pour utiliser Paper2Code, vous devez installer les dépendances nécessaires et configurer votre environnement. Vous trouverez ci-dessous les étapes détaillées de l'installation :
- entrepôt de clones
Exécutez la commande suivante dans un terminal pour cloner le référentiel Paper2Code localement :git clone https://github.com/going-doer/Paper2Code.git cd Paper2Code
- Installation des dépendances
Installer les dépendances de Python, notammentopenai
répondre en chantanttiktoken
etc :pip install openai tiktoken
Si vous devez utiliser le vLLM se référer au dépôt officiel de vLLM (https://github.com/vllm-project/vllm) pour l'installation.
- Définir la clé API OpenAI
Après avoir obtenu la clé API OpenAI, configurez les variables d'environnement :export OPENAI_API_KEY="your-api-key"
Les utilisateurs de Windows l'exécutent :
set OPENAI_API_KEY=your-api-key
- Installation de l'outil de conversion PDF
Paper2Code permet de convertir des documents PDF au format JSON. Clonez le dépôt s2orc-doc2json :git clone https://github.com/allenai/s2orc-doc2json.git
Exécutez le script de conversion PDF :
mkdir -p ./s2orc-doc2json/output_dir/paper_coder python ./s2orc-doc2json/doc2json/grobid2json/process_pdf.py -i <PDF_PATH> -t ./s2orc-doc2json/temp_dir/ -o ./s2orc-doc2json/output_dir/paper_coder
Utilisation
Paper2Code propose plusieurs modes d'exécution et prend en charge les documents aux formats PDF et LaTeX. Voici les détails de l'opération :
Exécuter l'exemple de script
Paper2Code inclut un exemple de script pour générer le code Transformer pour l'article L'attention est tout ce dont vous avez besoin. Aller à scripts
Catalogue :
cd scripts
bash run.sh
Le résultat sera enregistré dans le fichier outputs/Transformer
Catalogue, inclus :
planning_artifacts
Architecture du système et fichiers de dépendances.analyzing_artifacts
: Analyse détaillée de la réalisation de la thèse.coding_artifacts
Le fichier de code généré.Transformer_repo
Le dépôt de code final.
Traiter les essais sur mesure
Pour convertir votre document en code, préparez un fichier au format PDF ou LaTeX et modifiez les variables d'environnement. Par exemple, utilisez le format PDF :
export OPENAI_API_KEY="your-api-key"
cd scripts
bash run.sh
Pour le format LaTeX, exécutez :
bash run_latex.sh
Si d'autres modèles linguistiques de grande taille sont utilisés, exécuter :
bash run_llm.sh # PDF 格式
bash run_latex_llm.sh # LaTeX 格式
Évaluer la qualité du code
Paper2Code prend en charge l'évaluation de la qualité des codes référencés et non référencés. Exécuter des scripts d'évaluation :
cd codes
python eval.py \
--paper_name Transformer \
--pdf_json_path ../examples/Transformer_cleaned.json \
--data_dir ../data \
--output_dir ../outputs/Transformer \
--target_repo_dir ../outputs/Transformer_repo \
--eval_result_dir ../results \
--eval_type ref_free \
--generated_n 8 \
--papercoder
Les chemins d'entrepôt standard doivent être spécifiés pour l'évaluation de référence :
--eval_type ref_based \
--gold_repo_dir ../examples/Transformer_gold_repo
Les résultats de l'évaluation, y compris une note d'exactitude de 1 à 5, sont conservés dans l'application results
Catalogue.
Fonction en vedette Fonctionnement
- Collaboration multi-agentsLes agents de planification conçoivent l'architecture du code, les agents d'analyse extraient les détails de la thèse et les agents de génération écrivent le code modulaire. Les utilisateurs n'ont pas besoin d'intervenir manuellement, le système accomplit automatiquement l'ensemble du processus.
- Code de haute qualitéLe code généré est fidèle à l'article, inclut la gestion des dépendances et les fichiers de configuration, et convient aux environnements de production.
- Entrée flexibleLes formats PDF et LaTeX sont compatibles avec une grande variété de formats de papier, ce qui permet de répondre aux différents besoins des utilisateurs.
- Outils d'évaluationLes services d'évaluation de la qualité : fournir des scripts d'évaluation automatisés pour quantifier l'exactitude du code et aider les utilisateurs à vérifier la qualité de l'implémentation.
mise en garde
- Assurez-vous que la clé de l'API OpenAI est valide en exécutant o3-mini Le coût du modèle est estimé à 0,50-0,70 $ US.
- Lors de la conversion du PDF, vérifiez que la sortie JSON est complète afin d'éviter les erreurs de formatage.
- Les papiers personnalisés nécessitent d'ajuster les chemins et les paramètres dans le script.
README.md
.
scénario d'application
- recherche universitaire
Les chercheurs peuvent rapidement transformer de nouveaux articles en code pour valider les algorithmes et gagner du temps sur le codage manuel. Par exemple, les spécialistes de l'apprentissage automatique peuvent exécuter directement le code généré par Paper2Code pour tester les performances des modèles présentés dans leurs articles. - Apprentissage éducatif
Grâce à Paper2Code, les étudiants peuvent convertir des documents classiques (par exemple Transformer) en code pour mieux comprendre les détails de la mise en œuvre du modèle et contribuer à l'apprentissage des principes de l'apprentissage profond. - Développer des prototypes
Les développeurs peuvent rapidement créer des prototypes d'apprentissage automatique basés sur le référentiel de code généré, ce qui raccourcit le cycle de développement et le rend adapté aux projets commerciaux itératifs rapides.
QA
- Quels sont les formats de papier pris en charge par Paper2Code ?
Prend en charge les documents d'apprentissage automatique aux formats PDF et LaTeX ; le PDF doit être converti en JSON, tandis que LaTeX peut être traité directement. - Quelle est la qualité du code généré ?
Le code est traité selon un processus en trois phases de planification, d'analyse et de génération pour être fidèle au contenu de l'article. L'outil d'évaluation fournit une note d'exactitude de 1 à 5 pour garantir un résultat de haute qualité. - Dois-je payer pour utiliser Paper2Code ?
L'utilisation de l'API OpenAI est payante et coûte environ 0,50-0,70 $ pour faire fonctionner le modèle o3-mini. Les autres fonctionnalités sont gratuites. - Comment gérez-vous vos propres documents ?
Préparez le fichier PDF ou LaTeX, configurez les variables d'environnement, exécutez le programmerun.sh
peut-êtrerun_latex.sh
il suffit d'ajuster le chemin d'accès et les paramètres.
© déclaration de droits d'auteur
Article copyright Cercle de partage de l'IA Tous, prière de ne pas reproduire sans autorisation.
Articles connexes
Pas de commentaires...