BioCoder:面向大语言模型生物信息学代码生成的基准
机器学习
2024-05-22 v5 人工智能
计算与语言
摘要
预训练大语言模型(LLM)已显著改进了代码生成。随着这些模型规模扩大,对其输出处理更复杂任务并恰当专精于特定领域的需求日益增长。此处我们聚焦生物信息学,因该学科所需领域知识、算法与数据操作繁多。我们提出BioCoder,一个为评估LLM生成生物信息学专用代码而开发的基准。BioCoder涵盖该领域大部分内容,包括跨文件依赖、类声明与全局变量。其整合了从GitHub提取的1,026个Python函数与1,243个Java方法,以及来自Rosalind项目的253个示例,均关涉生物信息学。利用主题建模,我们表明所包含代码的总体覆盖度代表了生物信息学计算的完整谱系。BioCoder引入了模糊测试框架用于评估。我们已将其应用于评估各类模型,包括InCoder、CodeGen、CodeGen2、SantaCoder、StarCoder、StarCoder+、InstructCodeT5+、GPT-3.5与GPT-4。此外,我们对一个模型(StarCoder)进行了微调,表明我们的训练数据集可提升其在测试基准上的表现(在特定提示配置下Pass@K提升>15%,且始终>3%)。结果凸显了成功模型的两个关键方面:(1) 成功模型容纳长提示(>2,600 tokens)及含功能依赖的完整上下文。(2) 其包含生物信息学的领域专用知识,而非仅通用编码能力。这由GPT-3.5/4相较小模型在我们基准上的性能增益(50%对最高25%)所印证。可用性与实现:代码见 https://github.com/gersteinlab/biocoder 与 https://biocoder-benchmark.github.io/。
引用
@article{arxiv.2308.16458,
title = {BioCoder: A Benchmark for Bioinformatics Code Generation with Large Language Models},
author = {Xiangru Tang and Bill Qian and Rick Gao and Jiakang Chen and Xinyun Chen and Mark Gerstein},
journal= {arXiv preprint arXiv:2308.16458},
year = {2024}
}