Saved in:
Bibliographic Details
Main Authors: Jiang, Hao, Liu, Qi, Li, Rui, Ye, Shengyu, Wang, Shijin
Format: Preprint
Published: 2024
Subjects:
Online Access:https://arxiv.org/abs/2410.07002
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866908361062088704
author Jiang, Hao
Liu, Qi
Li, Rui
Ye, Shengyu
Wang, Shijin
author_facet Jiang, Hao
Liu, Qi
Li, Rui
Ye, Shengyu
Wang, Shijin
contents 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.
format Preprint
id arxiv_https___arxiv_org_abs_2410_07002
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle CursorCore: Assist Programming through Aligning Anything
Jiang, Hao
Liu, Qi
Li, Rui
Ye, Shengyu
Wang, Shijin
Computation and Language
Artificial Intelligence
Software Engineering
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.
title CursorCore: Assist Programming through Aligning Anything
topic Computation and Language
Artificial Intelligence
Software Engineering
url https://arxiv.org/abs/2410.07002