计算机科学 > 软件工程
[提交于 2025年7月11日
]
标题: 基于小模型和大语言模型的语义源代码分割
标题: Semantic Source Code Segmentation using Small and Large Language Models
摘要: 源代码分割,将代码划分为功能一致的段落,对于软件开发中的知识检索和维护至关重要。 虽然能够实现对大型代码库的高效导航和理解,但随着存储库的增长,手动和语法分析方法变得不切实际,尤其是对于像R这样的低资源语言及其研究领域(例如社会科学、心理学)。本文介绍了一种用于研究R代码分割的自动化、领域特定的方法,使用了大型和小型语言模型(LLMs/SLMs)。 它提出了两种新方法和一个由人类标注的数据集,StatCodeSeg。 我们探索了两种不同的方法:基于上下文的逐行分析和基于范围的段确定。 我们对LLMs和微调过的SLMs进行了实验。 为了支持我们方法的通用性,我们还对计算机科学领域的Python代码进行了实验。 我们的结果表明,基于上下文的逐行分析优于基于范围的分割。 使用较小的语言模型,如CodeBERT和CodeT5+的仅编码器版本,比它们的LLM counterparts 更好。 最值得注意的是,这两种表现最好的模型在预训练期间没有见过R代码,而是仅在4,130行手动标注的代码上进行了微调。
文献和引用工具
与本文相关的代码,数据和媒体
alphaXiv (什么是 alphaXiv?)
CatalyzeX 代码查找器 (什么是 CatalyzeX?)
DagsHub (什么是 DagsHub?)
Gotit.pub (什么是 GotitPub?)
Hugging Face (什么是 Huggingface?)
带有代码的论文 (什么是带有代码的论文?)
ScienceCast (什么是 ScienceCast?)
演示
推荐器和搜索工具
arXivLabs:与社区合作伙伴的实验项目
arXivLabs 是一个框架,允许合作伙伴直接在我们的网站上开发和分享新的 arXiv 特性。
与 arXivLabs 合作的个人和组织都接受了我们的价值观,即开放、社区、卓越和用户数据隐私。arXiv 承诺这些价值观,并且只与遵守这些价值观的合作伙伴合作。
有一个为 arXiv 社区增加价值的项目想法吗? 了解更多关于 arXivLabs 的信息.