EpiCoder: Encompassing Diversity and Complexity in Code Generation
Created by
Haebom
저자
Yaoxiang Wang, Haoling Li, Xin Zhang, Jie Wu, Xiao Liu, Wenxiang Hu, Zhongxin Guo, Yangyu Huang, Ying Xin, Yujiu Yang, Jinsong Su, Qi Chen, Scarlett Li
개요
본 논문은 코드 스니펫을 시드 데이터로 사용하는 기존 코드 생성 방법의 복잡성 및 다양성 제한 문제를 해결하기 위해 계층적 코드 특징을 기반으로 하는 새로운 특징 트리 기반 합성 프레임워크를 제시합니다. 고수준 코드 추상화에서 도출된 계층적 코드 특징으로 구성된 특징 트리는 원시 데이터로부터 생성되고 반복적으로 개선되어 추출된 특징의 양과 다양성을 증가시켜 코드 내의 더욱 복잡한 패턴과 관계를 포착하고 인식합니다. 샘플링된 서브트리의 깊이와 너비를 조정함으로써 생성된 코드의 복잡성을 정밀하게 제어하여 함수 수준 연산부터 다중 파일 시나리오까지 다양한 기능을 제공합니다. 널리 사용되는 기본 모델을 미세 조정하여 EpiCoder 시리즈를 얻었으며, 함수 및 파일 수준 모두에서 여러 벤치마크에서 최첨단 성능을 달성했습니다. 특히, 실험적 증거는 본 접근 방식이 저장소 수준 코드 데이터 합성에 상당한 잠재력을 보여줌을 나타냅니다. 코드와 데이터는 https://github.com/microsoft/EpiCoder 에서 공개적으로 이용 가능합니다.