- 목표 : LLM을 활용하여 AI 모델이 어떻게 하면 얼마나 다양한 분야의 시험에서 우수한 성적을 받을 수 있을 지에 대해 연구해보고, 한국어와 수능형 문제에 특화된 모델을 개발하여 소규모 모델로 대형모델 수준의 성능을 달성하는 것.
- 평가 기준 : Accuracy = 모델이 맞춘 수 / 전체 문제수
- Warp-up Report
- 네이버 커넥트재단 부스트캠프 AI Tech 7기 NLP 과정으로 3주간 진행했습니다. (2024.11.11 ~ 2024.11.28)
- 프로젝트 진행하면서 적용한 내용들입니다.
프로세스 | 설명 |
---|---|
EDA | 데이터의 길이 분포 분석, 선다별 데이터 분포 분석 |
Augmentation | 외부 데이터 사용해서 데이터 증강 |
Model | LGAI-EXAONE/EXAONE-3.0-7.8B-Instruct , T3Q-LLM/T3Q-LLM1-sft1.0-dpo1.0 , upstage/SOLAR-10.7B-v1.0 , yanolja/EEVE-Korean-10.8B-v1.0 , ... |
RAG | Sparse Retriever(BM25), Dense Retriever(FAISS), Hybrid Retriever(Sparse + Dense) |
Ensemble | Soft Voting, Hard Voting |
Etc | CoT, Zero-Shot-CoT |
Component | Specification |
---|---|
GPU | NVIDIA Tesla V100 |
RAM | 32 GB |
OS | Linux |
level2-nlp-generationfornlp-nlp-12-lv3
├── README.md
├── requirements.txt
├── assets
├── Experiments
├── Data
│ ├── EDA
│ └── Augmentation
├── RAG
│ └── wikipedia
├── config
└── src
├── main.py
├── manager
├── pipeline
└── module
└── ensemble.py
Experiments
: 프로젝트를 진행하면서 사용한 ipynb 파일 저장 디렉토리Data
: 데이터 관련 작업(EDA, Augmentation)을 수행한 파일 저장 디렉토리RAG
: RAG 관련 작업을 수행한 파일 저장 디렉토리src
: 베이스 라인 코드 모듈화 파일 저장 디렉토리
-
훈련 및 추론
# 경로 : ./ python src/main.py --config {config_name} --train # 훈련 python src/main.py --config {config_name} --inference # 추론 python src/main.py --config {config_name} --do_both # 훈련 후 바로 추론
-
RAG
# 경로 : ./RAG/wikipedia/ # 페이지 내용 모두 하나의 문서로 파싱 python preprocess.py # 페이지 내용 문단별로 나눠서 각각 문서로 파싱, 같은 문서출신 문단은 id에 _{num}으로 구별 python preprocess_paragraph.py # BM25S를 통해 Sparse Retriever Indexing python bm25.py # FAISS를 통해 Dense Retriever Indexing python dense_retriever.py