Awesome-Code-LLM: 코드를 작성하는 LLM(Code-LLM) 모델들의 목록을 정리하는 Awesome List

Code-LLM들에 대한 정보를 모아둔 GitHub 저장소를 발견하여 공유드립니다.

Survey 논문부터 시작하여 분류별 모델 목록과 데이터셋, 문서들을 모아두었습니다.


Awesome Code LLM 저장소 URL (원문)

주요 내용

:warning:주의:warning:: 아래 내용은 작성 시점까지의 내용을 정리한 것으로, 최신 내용은 위의 저장소를 방문해주세요!

1. Code-LLM 서베이 논문 목록

  • 6개의 Code-LLM 서베이 논문들을 정리하였습니다. 앞의 2개는 NLP 측면에서의, 뒤의 4개는 SE 측면에 초점을 맞춘 논문들입니다.

2. Code-LLM 모델 목록

2.1 기존의 LLM들 (Off-the-Shelf LLM)

  • 코드 작성을 위한 모델은 아니지만, 기본적으로 코딩 능력을 갖춘 LLM 모델들입니다.

2.2 코드를 추가 학습한 LLM들 (Existing LLM Further Trained on Code)

  • 사전 학습 시 코드 데이터를 사용하여 학습한 범용 LLM 모델들입니다.
모델명 논문 제목 및 링크 출판일 추가 링크
Codex (GPT-3) Evaluating Large Language Models Trained on Code 2021-07 -
PaLM Coder (PaLM) PaLM: Scaling Language Modeling with Pathways 2022-04 -
Minerva (PaLM) Solving Quantitative Reasoning Problems with Language Models 2022-06 -
PaLM 2 (PaLM 2) PaLM 2 Technical Report 2023-05 -
Code LLaMA (LLaMA 2) Code Llama: Open Foundation Models for Code 2023-08 저장소

2.3 코드에 대한 일반 사전 학습 모델 (General Pretraining on Code)

  • 처음부터 사전 학습된 트랜스포머 인코더, 디코더 및 인코더-디코더 구조의 코드 모델들입니다.

코드에 대한 일반 사전 학습 모델 (General Pretraining on Code)

Encoder

모델명 논문 제목 및 링크 출판일 추가 링크
CuBERT (MLM + NSP) Learning and Evaluating Contextual Embedding of Source Code 2019-12 저장소
CodeBERT (MLM + RTD) CodeBERT: A Pre-Trained Model for Programming and Natural Languages 2020-02 저장소
GraphCodeBERT (MLM + DFG Edge Prediction + DFG Node Alignment) GraphCodeBERT: Pre-training Code Representations with Data Flow 2020-09 저장소
SynCoBERT (MLM + Identifier Prediction + AST Edge Prediction + Contrastive Learning) SynCoBERT: Syntax-Guided Multi-Modal Contrastive Pre-Training for Code Representation 2021-08 -
DISCO (MLM + Node Type MLM + Contrastive Learning) Towards Learning (Dis)-Similarity of Source Code from Program Contrasts 2021-q0 -
Code-MVP (MLM + Type Inference + Contrastive Learning) CODE-MVP: Learning to Represent Source Code from Multiple Views with Contrastive Pre-Training 2022-05 -

Decoder

Encoder-Decoder

UniLM

2.4 코드에 대한 명령어 미세 조정 (Instruction Fine-Tuning on Code)

  • 이러한 모델에는 명령어 미세 조정 기법(instruction fine-tuning)을 적용하여 코드 LLM의 기능을 향상시킨 모델들입니다.

2.5 코드에 대한 강화 학습 (Reinforcement Learning on Code)

3. 데이터셋 (Datasets)

(생략 / 아래 원문을 참고해주세요)

4. Recommended Readings

(생략 / 아래 원문을 참고해주세요)

5. Citation

@misc{zhang2023survey,
      title={A Survey on Language Models for Code},
      author={Ziyin Zhang and Chaoyu Chen and Bingchang Liu and Cong Liao and Zi Gong and Hang Yu and Jianguo Li and Rui Wang},
      year={2023},
      eprint={2311.07989},
      archivePrefix={arXiv},
      primaryClass={cs.CL}
}

Awesome Code LLM 저장소 URL (원문)