ChatPaper.aiChatPaper

BioCoder: Un punto de referencia para la generación de código bioinformático con conocimiento pragmático contextual

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

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

Resumen

Los modelos de lenguaje preentrenados como ChatGPT han mejorado significativamente la generación de código. A medida que estos modelos escalan, existe una creciente necesidad de que las salidas manejen tareas más complejas. Además, en bioinformática, la generación de programas funcionales presenta desafíos adicionales notables debido a la cantidad de conocimiento del dominio, la necesidad de operaciones de datos complicadas y las intrincadas dependencias funcionales entre las operaciones. Aquí presentamos BioCoder, un punto de referencia desarrollado para evaluar los modelos preentrenados existentes en la generación de código bioinformático. En relación con la generación de código-función, BioCoder cubre dependencias potenciales de paquetes, declaraciones de clases y variables globales. Incorpora 1026 funciones y 1243 métodos en Python y Java de GitHub y 253 ejemplos del Proyecto Rosalind. BioCoder incorpora un marco de pruebas de fuzzing para la evaluación, y lo hemos aplicado para evaluar muchos modelos, incluyendo InCoder, CodeGen, CodeGen2, SantaCoder, StarCoder, StarCoder+, InstructCodeT5+ y ChatGPT. Nuestro análisis detallado de estos modelos enfatiza la importancia del conocimiento del dominio, la generación de código pragmático y la comprensión contextual. Nuestro conjunto de datos, punto de referencia, imágenes de Docker y scripts necesarios para las pruebas están disponibles en 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.
PDF120December 15, 2024