StepCoder: Improve Code Generation with Reinforcement Learning from Compiler Feedback

要約

大規模言語モデル(LLM)の進歩は、コード生成の分野を大きく推進した。これまでの研究では、強化学習(RL)をコンパイラのフィードバックと統合することで、LLMの出力空間を探索し、コード生成の品質を向上させてきた。しかし、人間の複雑な要求に応えてLLMが生成する長大なコードは、RLの探索を困難にしている。また、単体テストは複雑なコードをカバーしていない可能性があるため、未実行のコード・スニペットを使用してLLMを最適化しても効果がない。これらの課題に取り組むために、我々は2つの主要なコンポーネントからなるコード生成のための新しいRLフレームワークであるStepCoderを紹介する:CCCSは、長いシーケンスのコード生成タスクをCurriculum of Code Completion Subtasksに分割することで探索の課題に対処し、FGOは、Fine-Grained Optimizationを提供するために未実行のコードセグメントをマスクすることで、モデルのみを最適化する。さらに、RL学習用にAPPS+データセットを構築し、単体テストの正しさを手動で検証する。実験結果は、我々の手法が出力空間の探索能力を向上させ、対応するベンチマークにおいて最先端のアプローチを凌駕することを示している。

要約(オリジナル)

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.

arxiv情報

著者 Shihan Dou,Yan Liu,Haoxiang Jia,Limao Xiong,Enyu Zhou,Junjie Shan,Caishuang Huang,Wei Shen,Xiaoran Fan,Zhiheng Xi,Yuhao Zhou,Tao Ji,Rui Zheng,Qi Zhang,Xuanjing Huang,Tao Gui
発行日 2024-02-02 13:14:31+00:00
arxivサイト arxiv_id(pdf)

提供元, 利用サービス

arxiv.jp, DeepL

カテゴリー: cs.CL, cs.SE パーマリンク