论文
没有资源,没有基准,没问题吗?评估和改进 LLM 以无资源语言生成代码
No Resource, No Benchmarks, No Problem? Evaluating and Improving LLMs for Code Generation in No-Resource Languages
摘要
大语言模型 (LLM) 显着推进了软件工程任务的自动化。一个突出的例子是代码生成,其中 LLM 基于自然语言描述以指定的编程语言生成代码。该领域的大多数研究都集中在高资源语言上,例如 Python 或 Java,它们受益于丰富的训练数据。一小部分工作探索了低资源语言,这些语言在训练语料库中代表性不足。相比之下,LLM 实际上没有看到任何训练数据的无资源语言仍然基本上未被研究。这些语言经常出现在行业中,组织开发不受 GitHub Copilot 等商业工具支持的专有或特定领域的语言。这导致公司需要部署自己的内部代码推荐器。为了研究这种情况下可能的解决方案,我们基于最近提出的两种可用训练数据很少的编程语言,构建并发布了三个无资源语言的代码生成基准。使用这些基准,我们实验了几种解决方案来教授 LLM 无资源语言,包括基于提示的技术以及利用少量可用数据的 预训练 和 微调。虽然进一步的 预训练 为无资源语言提供了最大的性能提升,但将其直接应用于指令调整模型会损害它们遵循指令的能力。为了解决这个问题,我们从基本模型开始,在目标语言上进一步 预训练 它,然后通过指令模型的权重差异传输注入指令跟踪功能。这种方法显着提高了无资源环境中的代码生成能力,使公司能够廉价地部署专门的指令模型,而无需处理指令 微调 的计算成本。