Accelerate는 학습 코드와 실행 환경 사이에 있어
accelerate는 장치 배치, 혼합 정밀도, gradient accumulation, DDP·FSDP·DeepSpeed 분산 실행, checkpoint 재개를 맡아. Trainer가 내부에서 사용하지만 맞춤 학습 루프에서도 직접 쓸 수 있어.
- Trainer를 쓴다면
TrainingArguments에fsdp나deepspeed를 설정해 연결해. - 직접 쓴다면
Accelerator()를 만들고prepare(model, optimizer, dataloader)로 구성 요소를 감싼 뒤 역전파와 갱신을 실행해.
큰 모델의 출발점은 FSDP야
PyTorch에 내장된 FSDP는 통합과 설정이 단순해 대부분의 미세조정과 중간 규모 사전학습에서 먼저 검토할 선택이야. DeepSpeed는 특정 고급 워크로드에서 강하지만 별도 런타임 의존성을 더하므로 실제 병목이 있을 때 비교해.