CGCL-codes/naturalcc
NaturalCC: An Open-Source Toolkit for Code Intelligence
해결하는 문제
NaturalCC는 프로그래밍 언어와 자연어 사이의 격차를 메우는 시퀀스 모델링 툴킷입니다. 코드 생성, 완성, 요약, 검색, 클론 탐지, 타입 추론과 같은 소프트웨어 공학 작업을 위한 모델을 구축하고 평가할 수 있는 통합 프레임워크를 제공합니다.
작동 방식
Fairseq의 레지스트리 메커니즘을 기반으로 하며, 모듈식이고 확장 가능합니다. Hugging Face Transformers와 통합되어 Code Llama, CodeT5, CodeGen, StarCoder와 같은 대규모 코드 모델을 지원합니다. 학습 시에는 NCCL와 torch.distributed를 사용하여 멀티 GPU 환경에서 효율성을 극대화하며, FP32 및 FP16 정밀도를 모두 지원합니다. 또한 LLVM과 같은 컴파일러 도구를 활용한 특징 추출을 위한 전처리 도구와 스크립트도 포함되어 있습니다.
대상 사용자
코드 인텔리전스와 기계학습 및 소프트웨어 공학의 융합에 집중하는 AI 연구자 및 소프트웨어 개발자에게 적합합니다.
주요 특징
- 대규모 모델 지원: Code Llama 및 StarCoder를 포함한 최첨단 모델과의 통합.
- 포괄적인 데이터셋: Human-Eval, CodeSearchNet, Py150 등의 벤치마크 내장 지원.
- 효율적인 학습: 반정밀도 계산을 지원하는 멀티 GPU 환경에 최적화.
- 모듈식 아키텍처: 사용자 정의 모델, 손실 함수, 학습 절차에 쉽게 적용 가능.
관련
- 프로젝트
- Dispatch
- Dispatch
- 프로젝트
- 프로젝트