arXivDaily arXiv每日学术速递 周一至周五更新
​通知:联邦节假日调休:哥伦布日 / 原住民日(Columbus Day / Indigenous Peoples' Day),今日(13日)无更新。
arXiv 2410.07002cs.CLcs.AIcs.SE

CursorCore:通过对齐一切来辅助编程

CursorCore: Assist Programming through Aligning Anything

Hao Jiang;Qi Liu;Rui Li;Shengyu Ye;Shijin Wang

Hao Jiang, Qi Liu, Rui Li, Shengyu Ye, Shijin Wang

AI总结:

本文提出整合编码历史、当前代码与用户指令的对话式编程辅助框架,构建 APEval 基准和 Programming-Instruct 数据流水线,生成 219K 样本训练 CursorCore,性能优于同规模模型。

摘要:

大语言模型已成功应用于编程辅助任务,例如代码补全、代码插入和指令式代码编辑。然而,这些应用的自动化程度仍然不足,并且难以在编程过程中有效整合各类信息,包括编码历史、当前代码和用户指令。在本工作中,我们提出了一种全面整合这些信息来源的新型对话框架,收集数据以训练模型并评估其性能。首先,为了彻底评估模型与不同类型信息的对齐程度及其输出质量,我们引入了一个新的基准 APEval(Assist Programming Eval,辅助编程评估),以全面评估模型在编程辅助任务中的性能。随后,在数据收集方面,我们开发了一个数据生成流水线 Programming-Instruct,它从 GitHub 和在线评测平台等多种来源合成训练数据。该流水线能够在整个编程过程中自动生成各种类型的消息。最后,我们利用该流水线生成了 219K 个样本,对多个模型进行微调,并开发了 CursorCore 系列。我们表明,CursorCore 优于其他规模相当的模型。该框架统一了行内聊天和自动化编辑等应用,有助于推动编码助手的发展。代码、模型和数据可在 https://github.com/TechxGenus/CursorCore 免费获取。

英文摘要:

Large language models have been successfully applied to programming assistance tasks, such as code completion, code insertion, and instructional code editing. However, these applications remain insufficiently automated and struggle to effectively integrate various types of information during the programming process, including coding history, current code, and user instructions. In this work, we propose a new conversational framework that comprehensively integrates these information sources, collect data to train our models and evaluate their performance. Firstly, to thoroughly evaluate how well models align with different types of information and the quality of their outputs, we introduce a new benchmark, APEval (Assist Programming Eval), to comprehensively assess the performance of models in programming assistance tasks. Then, for data collection, we develop a data generation pipeline, Programming-Instruct, which synthesizes training data from diverse sources, such as GitHub and online judge platforms. This pipeline can automatically generate various types of messages throughout the programming process. Finally, using this pipeline, we generate 219K samples, fine-tune multiple models, and develop the CursorCore series. We show that CursorCore outperforms other models of comparable size. This framework unifies applications such as inline chat and automated editing, contributes to the advancement of coding assistants. Code, models and data are freely available at https://github.com/TechxGenus/CursorCore.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑