SynthCoder: A Synthetical Strategy to Tune LLMs for Code Completion

Fuente: arXiv
Salvato in:
Dettagli Bibliografici
Autori principali: Yu, Dongjun, Yan, Xiao, Li, Zhenrui, Xiao, Jipeng, He, Haochuan, Yu, Yongda, Zhang, Hao, Rong, Guoping, Huang, Xiaobo
Natura: Preprint
Pubblicazione: 2025
Soggetti:
Accesso online:
Tags: Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
_version_ 1866915498772398080
author Yu, Dongjun
Yan, Xiao
Li, Zhenrui
Xiao, Jipeng
He, Haochuan
Yu, Yongda
Zhang, Hao
Rong, Guoping
Huang, Xiaobo
author_facet Yu, Dongjun
Yan, Xiao
Li, Zhenrui
Xiao, Jipeng
He, Haochuan
Yu, Yongda
Zhang, Hao
Rong, Guoping
Huang, Xiaobo
contents Code completion is a prominent application of Large Language Models (LLMs) in software engineering. Due to the near real-time response requirements of this task, base models with small to medium-sized parameters are typically employed, supplemented by various optimization and post-training techniques. However, these optimization methods often have trade-offs, leading to a seesaw effect where performance improvements on certain datasets or metrics are accompanied by degradations on others -- sometimes even falling below the baseline model's performance. This paper proposes SynthCoder, a model that integrates leading industry practices to achieve state-of-the-art performance on the Fill-in-the-Middle (FIM) code completion task. In specific, we first construct a diverse dataset by combining Abstract Syntax Tree (AST) node extraction with heuristics that simulate developer behavior. Then we enrich our training corpus with cross-file contextual information using the BM25 algorithm and call graphs, enhancing the model's ability to perform code completion in both file-level and repository-level scenarios. As the last step, we employ a two-stage training process using the Seed-Coder-8B-Base as the base model. First, we fine-tune the model using Curriculum Learning technology. Following this, we perform alignment using Direct Preference Optimization (DPO) with preference pairs generated through Rejection Sampling. Experimental results demonstrate that our final model excels on mainstream repository-level code completion benchmarks, including aiXcoder, ExecRepoBench, CrossCodeEval, and CoLT. Furthermore, our carefully curated training set effectively mitigates the model's tendency to just repeat existing code, a common issue existing in various code completion models.
format Preprint
id arxiv_https___arxiv_org_abs_2508_15495
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle SynthCoder: A Synthetical Strategy to Tune LLMs for Code Completion
Yu, Dongjun
Yan, Xiao
Li, Zhenrui
Xiao, Jipeng
He, Haochuan
Yu, Yongda
Zhang, Hao
Rong, Guoping
Huang, Xiaobo
Software Engineering
Code completion is a prominent application of Large Language Models (LLMs) in software engineering. Due to the near real-time response requirements of this task, base models with small to medium-sized parameters are typically employed, supplemented by various optimization and post-training techniques. However, these optimization methods often have trade-offs, leading to a seesaw effect where performance improvements on certain datasets or metrics are accompanied by degradations on others -- sometimes even falling below the baseline model's performance. This paper proposes SynthCoder, a model that integrates leading industry practices to achieve state-of-the-art performance on the Fill-in-the-Middle (FIM) code completion task. In specific, we first construct a diverse dataset by combining Abstract Syntax Tree (AST) node extraction with heuristics that simulate developer behavior. Then we enrich our training corpus with cross-file contextual information using the BM25 algorithm and call graphs, enhancing the model's ability to perform code completion in both file-level and repository-level scenarios. As the last step, we employ a two-stage training process using the Seed-Coder-8B-Base as the base model. First, we fine-tune the model using Curriculum Learning technology. Following this, we perform alignment using Direct Preference Optimization (DPO) with preference pairs generated through Rejection Sampling. Experimental results demonstrate that our final model excels on mainstream repository-level code completion benchmarks, including aiXcoder, ExecRepoBench, CrossCodeEval, and CoLT. Furthermore, our carefully curated training set effectively mitigates the model's tendency to just repeat existing code, a common issue existing in various code completion models.
title SynthCoder: A Synthetical Strategy to Tune LLMs for Code Completion
topic Software Engineering
url https://arxiv.org/abs/2508.15495