Skip to main content
QUICK REVIEW

[논문 리뷰] A Survey on LLM-based Code Generation for Low-Resource and Domain-Specific Programming Languages

Sathvik Joel, Jie JW Wu|arXiv (Cornell University)|2024. 10. 04.
Embedded Systems Design Techniques인용 수 4
한 줄 요약

이 종합 검토는 2020–2024년도 동안 111篇의 논문을 체계적으로 검토하여 저자원(LRPLs) 및 도메인 특화(DSLs) 프로그래밍 언어를 위한 LLM 기반 코드 생성을 분석한다. 주요 과제로는 데이터 부족과 전문화된 의미론을 식별하고, 기존 벤치마크, 메트릭 및 모델 개선 전략을 평가하며, 표준화된 평가 프레임워크의 부족을 강조하여 이나마 탐색되지 않은 분야에서 향후 연구의 기반을 마련한다.

ABSTRACT

Large Language Models (LLMs) have shown impressive capabilities in code generation for popular programming languages. However, their performance on Low-Resource Programming Languages (LRPLs) and Domain-Specific Languages (DSLs) remains a significant challenge, affecting millions of developers-3.5 million users in Rust alone-who cannot fully utilize LLM capabilities. LRPLs and DSLs encounter unique obstacles, including data scarcity and, for DSLs, specialized syntax that is poorly represented in general-purpose datasets. Addressing these challenges is crucial, as LRPLs and DSLs enhance development efficiency in specialized domains, such as finance and science. While several surveys discuss LLMs in software engineering, none focus specifically on the challenges and opportunities associated with LRPLs and DSLs. Our survey fills this gap by systematically reviewing the current state, methodologies, and challenges in leveraging LLMs for code generation in these languages. We filtered 111 papers from over 27,000 published studies between 2020 and 2024 to evaluate the capabilities and limitations of LLMs in LRPLs and DSLs. We report the LLMs used, benchmarks, and metrics for evaluation, strategies for enhancing performance, and methods for dataset collection and curation. We identified four main evaluation techniques and several metrics for assessing code generation in LRPLs and DSLs. Our analysis categorizes improvement methods into six groups and summarizes novel architectures proposed by researchers. Despite various techniques and metrics, a standard approach and benchmark dataset for evaluating code generation in LRPLs and DSLs are lacking. This survey serves as a resource for researchers and practitioners at the intersection of LLMs, software engineering, and specialized programming languages, laying the groundwork for future advancements in code generation for LRPLs and DSLs.

연구 동기 및 목표

  • 기존 문헌에서 저자원 및 도메인 특화 프로그래밍 언어(LRPLs 및 DSLs)가 LLM 기반 코드 생성 연구에서 간과당하고 있는 심각한 격차를 해결한다.
  • 저자원 및 도메인 특화 언어(LRPLs 및 DSLs)에서의 코드 생성을 위한 LLM의 현재 상태를 체계적으로 분석하며, 평가 메트릭, 벤치마크 및 모델 개선 기법에 중점을 둔다.
  • 저자원 및 도메인 특화 언어(LRPLs 및 DSLs)에 특화된 데이터 수집 및 정제 전략을 식별하고 분류한다. 이는 훈련 데이터가 제한되고 의미론이 전문화되어 있어 고유한 과제를 유발하기 때문이다.
  • 저자원 및 도메인 특화 언어(LRPLs 및 DSLs)에 대한 표준화된 벤치마크 및 평가 메트릭의 부족을 부각하며, 고자원 프로그래밍 언어(HRPLs)와의 과제를 대비하여 비교한다.
  • 특수 도메인에서의 코드 생성을 발전시키기 위한 실천 가능한 연구 기회를 제공한다. 이는 다국어 간 전이 학습, 중간 표현 방식, 공식적 검증 기법을 포함한다.

제안 방법

  • 2020–2024년 동안 27,000건 이상의 연구를 걸러내어 111편의 논문을 체계적으로 검토한 시스템적 문헌 검토(SLR)를 수행하였으며, 포괄적인 커버리지 확보를 위해 추가로 스노우볼링 및 확장 검색(2024–2025)을 실시하였다.
  • 평가 기법을 네 가지 주요 유형으로 분류하고, LRPLs 및 DSLs에서 코드 생성 성능을 평가하는 데 사용된 14개 이상의 메트릭을 분석하였으며, 문법적 정확성과 의미론적 정확성을 포함한다.
  • 모델 개선 전략을 여섯 가지 주요 그룹으로 분류: 피넷튜닝, 프롬프트 엔지니어링, 검색 기반 증강 생성(RAG), 정제, 사고 체인 프롬프팅, 합성 데이터를 활용한 피넷튜닝.
  • 문헌에서 사용된 데이터셋을 맵핑하고 분석하였으며, 특히 저자원 언어의 경우 웹 스크래핑, 저장소에서의 마이닝, 수동 주석 등 정제 방법에 중점을 두었다.
  • 코드 생성 및 평가 향상을 위한 새로운 아키텍처 및 기법을 탐색하였으며, 중간 언어 표현 방식과 기호 실행을 포함한다.
  • LRPLs 및 DSLs의 접근 방식을 비교하기 위한 구조화된 프레임워크를 사용하여, 도메인 특화 문법, 의미론 및 전문 지식 요구 사항으로 인해 DSLs에서 특히 두드러지는 고유한 과제를 식별하였다.

실험 결과

연구 질문

  • RQ1저자원 및 도메인 특화 프로그래밍 언어에서 LLM 기반 코드 생성을 평가하기 위해 현재 어떤 벤치마크, 메트릭 및 평가 기법이 사용되고 있는가?
  • RQ2문헌에서 LRPLs 및 DSLs의 LLM 성능 향상을 위해 제안된 방법론 및 모델 개선 전략은 무엇인가?
  • RQ3LRPL 및 DSL 맥락에서 LLM을 훈련 및 평가하기 위해 데이터셋은 어떻게 수집, 정제 및 전처리되는가?
  • RQ4저자원 언어(LRPLs)와 도메인 특화 언어(DSLs) 간의 과제 및 접근 방식의 주요 차이는 무엇인가? 특히 데이터 부족 및 도메인 특수성 측면에서 비교 분석한다.
  • RQ5표준화된 평가의 부족과 통합된 벤치마크의 부재를 해결하기 위한 연구 기회가 무엇이 있는가?

주요 결과

  • growing 관심에도 불구하고, 대부분의 LRPLs 및 DSLs는 파이썬과 같은 고자원 언어와 달리 표준화된 벤치마크 및 평가 메트릭을 보유하고 있지 않다.
  • MultiPL-E 벤치마크는 뚜렷한 성능 격차를 보이며, LLM이 루스트 및 R과 같은 LRPLs에서 파이썬에 비해 훨씬 낮은 점수를 기록한다.
  • 모델 개선 전략으로서 여섯 가지 주요 유형을 식별: 피넷튜닝, 프롬프트 엔지니어링, RAG, 정제, 사고 체인 프롬프팅, 합성 데이터 생성.
  • LRPLs 및 DSLs의 데이터 수집은 웹 스크래핑, 깃허브 마이닝, 수동 정제에 크게 의존하지만, 이러한 방법은 종종 제한적이고 노이즈가 많거나 대표성이 떨어지는 데이터셋을 초래한다.
  • DSLs는 고도로 전문화된 문법, 의미론 및 전문 지식 또는 도메인 특화 도구가 필요하기 때문에 LRPLs보다 더 뚜렷한 과제를 겪는다.
  • 연구 기회로는 공식적 등가 검사기 개발, 고자원 언어(HRPLs)에서의 다국어 간 전이 학습, 중간 언어 표현 방식 도입, 기호 실행 또는 정리 증명 기법 통합을 통한 의미론적 검증이 있다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.