ACL 2024long17 citations

StepCoder: Improving Code Generation with Reinforcement Learning from Compiler Feedback

Shihan Dou, Yan Liu, Haoxiang Jia, Enyu Zhou, Limao Xiong, Junjie Shan, Caishuang Huang, Xiao Wang

Abstract

The advancement of large language models (LLMs) has significantly propelled the field of code generation. Previous work integrated reinforcement learning (RL) with compiler feedback for exploring the output space of LLMs to enhance code generation quality. However, the lengthy code generated by LLMs in response to complex human requirements makes RL exploration a challenge. Also, since the unit tests may not cover the complicated code, optimizing LLMs by using these unexecuted code snippets is ineffective. To tackle these challenges, we introduce StepCoder, a novel RL framework for code generation, consisting of two main components: CCCS addresses the exploration challenge by breaking the long sequences code generation task into a Curriculum of Code Completion Subtasks, while FGO only optimizes the model by masking the unexecuted code segments to provide Fine-Grained Optimization. In addition, we furthermore construct the APPS+ dataset for RL training, which is manually verified to ensure the correctness of unit tests. Experimental results show that our method improves the ability to explore the output space and outperforms state-of-the-art approaches in corresponding benchmarks. The code and dataset will be made available upon publication.

BibTeX
@inproceedings{dou-etal-2024-stepcoder,
    title = "{S}tep{C}oder: Improving Code Generation with Reinforcement Learning from Compiler Feedback",
    author = "Dou, Shihan  and
      Liu, Yan  and
      Jia, Haoxiang  and
      Zhou, Enyu  and
      Xiong, Limao  and
      Shan, Junjie  and
      Huang, Caishuang  and
      Wang, Xiao  and
      Fan, Xiaoran  and
      Xi, Zhiheng  and
      Zhou, Yuhao  and
      Ji, Tao  and
      Zheng, Rui  and
      Zhang, Qi  and
      Gui, Tao  and
      Huang, Xuanjing",
    editor = "Ku, Lun-Wei  and
      Martins, Andre  and
      Srikumar, Vivek",
    booktitle = "Proceedings of the 62nd Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers)",
    month = aug,
    year = "2024",
    address = "Bangkok, Thailand",
    publisher = "Association for Computational Linguistics",
    url = "https://aclanthology.org/2024.acl-long.251/",
    doi = "10.18653/v1/2024.acl-long.251",
    pages = "4571--4585"
}
StepCoder: Improving Code Generation with Reinforcement Learning from Compiler Feedback · ACL 2024