中文

你的代码 LLM 表现如何?基于高质量数据的代码指令调优

软件工程 2024-09-09 v1 人工智能 计算与语言 机器学习

摘要

最近,人们越来越关注如何构建更好的代码指令调优数据。然而,我们注意到使用这些数据集训练的 Code 模型在 HumanEval 上表现良好,但在其他基准测试(如 LiveCodeBench)上表现更差。经过进一步调查,我们发现许多数据集存在严重的数据泄露。清理大部分泄露数据后,一些知名的高质量数据集仍表现不佳。这一发现揭示了新的挑战:识别哪些数据集真正符合高质量代码指令数据的标准。为此,我们提出了一种高效的代码数据修剪策略,用于选择好的样本。我们的方法基于三个维度:指令复杂度、响应质量和指令多样性。基于我们筛选后的数据,我们提出 XCoder,一组源自 LLaMA3 的模型。我们的实验表明 XCoder 使用更少的训练数据即可实现新的状态-of-the-art 性能,这验证了我们数据策略的有效性。此外,我们对数据构成进行了全面分析,发现现有代码数据集根据其构建方法具有不同特征,这为未来代码 LLM 提供了新的见解。我们的模型和数据集已发布在 https://github.com/banksy23/XCoder

关键词

引用

@article{arxiv.2409.03810,
  title  = {How Do Your Code LLMs Perform? Empowering Code Instruction Tuning with High-Quality Data},
  author = {Yejie Wang and Keqing He and Dayuan Fu and Zhuoma Gongque and Heyang Xu and Yanxu Chen and Zhexu Wang and Yujia Fu and Guanting Dong and Muxi Diao and Jingang Wang and Mengdi Zhang and Xunliang Cai and Weiran Xu},
  journal= {arXiv preprint arXiv:2409.03810},
  year   = {2024}
}

备注

Working in progress