ChatPaper.aiChatPaper

BioCoder: Een Benchmark voor Bioinformatica Codegeneratie met Contextuele Pragmatische Kennis

BioCoder: A Benchmark for Bioinformatics Code Generation with Contextual Pragmatic Knowledge

August 31, 2023
Auteurs: Xiangru Tang, Bill Qian, Rick Gao, Jiakang Chen, Xinyun Chen, Mark Gerstein
cs.AI

Samenvatting

Voorgetrainde taalmodelen zoals ChatGPT hebben de codegeneratie aanzienlijk verbeterd. Naarmate deze modellen groter worden, is er een toenemende behoefte aan uitvoer die complexere taken aankan. Bovendien stelt het genereren van functionele programma's in de bioinformatica extra uitdagingen vanwege de hoeveelheid domeinkennis, de noodzaak voor ingewikkelde data-operaties en complexe functionele afhankelijkheden tussen de operaties. Hier presenteren we BioCoder, een benchmark ontwikkeld om bestaande voorgetrainde modellen te evalueren in het genereren van bioinformatica-code. Met betrekking tot functie-codegeneratie omvat BioCoder potentiële pakketafhankelijkheden, klasse-declaraties en globale variabelen. Het bevat 1026 functies en 1243 methoden in Python en Java van GitHub en 253 voorbeelden van het Rosalind Project. BioCoder bevat een fuzz-testing framework voor evaluatie, en we hebben het toegepast om vele modellen te evalueren, waaronder InCoder, CodeGen, CodeGen2, SantaCoder, StarCoder, StarCoder+, InstructCodeT5+ en ChatGPT. Onze gedetailleerde analyse van deze modellen benadrukt het belang van domeinkennis, pragmatische codegeneratie en contextueel begrip. Onze dataset, benchmark, Docker-images en scripts die nodig zijn voor testen zijn allemaal beschikbaar op https://github.com/gersteinlab/biocoder.
English
Pre-trained language models like ChatGPT have significantly improved code generation. As these models scale up, there is an increasing need for the output to handle more intricate tasks. Moreover, in bioinformatics, generating functional programs poses additional notable challenges due to the amount of domain knowledge, the need for complicated data operations, and intricate functional dependencies between the operations. Here, we present BioCoder, a benchmark developed to evaluate existing pre-trained models in generating bioinformatics code. In relation to function-code generation, BioCoder covers potential package dependencies, class declarations, and global variables. It incorporates 1026 functions and 1243 methods in Python and Java from GitHub and 253 examples from the Rosalind Project. BioCoder incorporates a fuzz-testing framework for evaluation, and we have applied it to evaluate many models including InCoder, CodeGen, CodeGen2, SantaCoder, StarCoder, StarCoder+, InstructCodeT5+, and ChatGPT. Our detailed analysis of these models emphasizes the importance of domain knowledge, pragmatic code generation, and contextual understanding. Our dataset, benchmark, Docker images, and scripts required for testing are all available at https://github.com/gersteinlab/biocoder.
PDF130February 9, 2026