CursorCore: Assist Programming through Aligning Anything
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.
6707611c392cba5330ea4abc
Hao Jiang
claimed_verified
2024-10-10T08:00:26.810Z
65097423e64ee37323bd2def
https://cdn-avatars.huggingface.co/v1/production/uploads/65097423e64ee37323bd2def/PTEwbfafNI88gdX1VVmIn.jpeg
Hao Jiang
user
TechxGenus
6707611c392cba5330ea4abd
Qi Liu
6707611c392cba5330ea4abe
Rui Li
6707611c392cba5330ea4abf
Shengyu Ye
admin_assigned
2024-10-10T09:27:38.637Z
6508091067ab943749f9e869
https://cdn-avatars.huggingface.co/v1/production/uploads/6508091067ab943749f9e869/TpdHfIez3rj5wQqrruA7G.jpeg
Shengyu Ye
user
Eviloder
6707611c392cba5330ea4ac0
Shijin Wang
CursorCore: Assist Programming through Aligning Anything
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.
A new conversational framework integrates coding history, current code, and user instructions for improved programming assistance using a new benchmark and data generation pipeline.
Large language models code completion code insertion instructional code editing conversational framework APEval Programming-Instruct CursorCore