트랜스포머·PEFT 2일 과정MetaContents

트랜스포머 이해와 LLM 효율적 파인튜닝(PEFT) 2일 과정

트랜스포머 이해와 LLM 효율적 파인튜닝 2일 과정. 구조 이해, 데이터 만들기, LoRA 로 가볍게 학습하기를 보여 주는 표지 그림
시작 전에
환경설정 — Windows PC 에 Python 3.10 가상환경을 만들고 PyTorch(CUDA), transformers, peft, trl 을 설치한 뒤 GPU 를 확인합니다
과정 안내
로드맵과 실습 안내 — 일차마다의 요약과 실습 환경
1일차
Transformer 구조에서 생성형 LLM까지 — 행렬곱과 Softmax, RNN 과 Seq2Seq 의 한계, 토큰화와 임베딩, 위치 정보, Self-Attention, Encoder 와 Decoder, 작은 번역기, Decoder-only LLM 요약 보기
2일차
SFT 데이터 구성과 LoRA 파인튜닝 — Qwen 으로 글 만들기, SFT 데이터와 Chat Template, PEFT 와 LoRA, SFTTrainer 학습, 평가와 어댑터 활용, QLoRA 요약 보기
참고
참고 자료

실습은 실습 폴더(교안 저장소에서는 workspace/)를 작업 폴더로 두고 실행합니다.

참고

장마다 나온 용어를 한곳에 모았습니다. 위의 찾기 칸에 낱말을 넣으면 그 줄만 남습니다.

안내
읽기 전에

ChatGPT 같은 생성형 언어 모델(LLM)이 속에서 어떻게 움직이는지 Transformer 구조부터 하나씩 열어 보고, 공개 LLM 인 Qwen2.5-0.5B-Instruct 를 직접 만든 데이터로 가볍게 조정(파인튜닝)해 보는 2일 과정입니다. 첫날은 문장이 숫자로 바뀌고, Attention 으로 문맥을 읽고, 한 토큰씩 글을 만들어 내는 과정을 따라가며 작은 번역기를 직접 학습합니다. 둘째 날은 SFT 데이터를 만들고, LoRA·QLoRA 로 적은 자원만 써서 모델의 말투를 바꾼 뒤, 학습 전후를 평가합니다.

  • 이 교안은 파이썬과 데이터 분석(NumPy, pandas, Matplotlib)을 다뤄 본 비전공자를 위해 썼습니다.
    • 신경망, 손실, 학습률, Transformer, LLM, 파인튜닝 용어는 처음부터 설명합니다.
    • 개념마다 생활 속 비유로 먼저 풀고, 수학은 곱셈, 나눗셈, 비율 정도만 씁니다. 식에는 실제 숫자를 넣어 한 번 손으로 계산해 봅니다.
  • 실습 코드는 강사 노트북의 원본 코드를 그대로 실었습니다. 줄마다 무엇을 왜 하는지 주석을 달았습니다.
  • 장마다 다음 순서로 이어집니다: 먼저 큰 그림부터 → 용어 → 본문 → 실습 → 프로젝트 → 정리 → 확인문제.
  • 코드 상자의 "복사" 단추를 누르면 코드가 복사됩니다.
  • 코드 상자의 이름표로 실행 환경을 구분합니다.
    • "Python": CPU 로도 도는 코드입니다. 아래 출력은 실제로 실행한 결과입니다.
    • "Python · GPU 필요": NVIDIA GPU 가 있어야 도는 코드입니다(2일차의 모델 생성, 학습, 평가). 아래 출력은 RTX 3080(10GB)에서 실제로 실행한 결과입니다.
  • 실습 출력은 강사 노트북을 처음부터 끝까지 한 번 실행해 얻었습니다. 무작위로 고르는 생성(do_sample=True)과 학습 결과(손실, 답변)는 실행할 때마다, GPU 마다 조금씩 달라집니다.
  • 실행 환경: Windows 11, Python 3.10, PyTorch 2.5.1(CUDA 12.1), transformers 4.57.6, peft 0.20.0, trl 0.25.1, datasets 4.8.4, bitsandbytes 0.50.2.
  • 이틀 동안의 흐름은 과정 로드맵에, 설치는 환경설정에, 실습 파일은 실습 자료에 있습니다.
  • 장마다 7~8분짜리 동영상 원고 3편(모두 27편)이 교안 저장소의 video/ 폴더에 있습니다. NotebookLM 의 동영상 개요로 만들거나, 장면표대로 직접 녹화합니다.
  • 강사 노트북(1일차, 2일차)을 실행 출력과 함께 그대로 읽을 수 있게 옮긴 Markdown 판이 교안 저장소의 노트북_md/ 폴더에 있습니다.