학습과 추론 서빙을 아우르는 PyTorch 네이티브 양자화·희소성·float8 학습 라이브러리입니다.
Lightning-AI/lightning-thunder
PyTorch 모델의 학습과 추론을 최적화하는 소스 간 컴파일러로, 검사 가능한 IR과 조합 가능한 변환을 제공합니다.
- 스타
- 1,474
- 포크
- 120
- 열린 이슈
- 483
- 마지막 커밋
- 25일 전
어떤 프로젝트인가요?
Thunder는 PyTorch용 딥러닝 컴파일러로, 모델을 받아 최적화된 버전으로 변환합니다. 전체 계산을 단순한 Python 유사 중간 표현으로 캡처하므로, 이를 검사하고 프로파일링한 뒤 더 빠른 연산이나 커널로 교체하도록 재작성할 수 있습니다.
최적화는 계산 트레이스, 모델, 가중치에 적용되는 transform과 플러그인을 통해 수행됩니다. 지원 옵션에는 분산 병렬 처리(DDP, FSDP, TP), FP8 및 MXFP8 정밀도, 양자화, CUDA Graphs가 포함됩니다. 실행은 NVFuser 및 torch.compile 같은 fuser, cuDNN SDPA 및 TransformerEngine 같은 특화 라이브러리, 사용자 정의 Triton 및 CUDA 커널 또는 PyTorch eager 연산으로 전달됩니다.
진입점은 thunder.compile(model)이며, 일반 torch 모듈이나 LitGPT 및 Hugging Face Transformers 같은 라이브러리의 모델에 적용할 수 있습니다.
핵심 기능
- 01전체 계산 그래프를 검사 가능한 Python 유사 IR로 캡처합니다.
- 02모델, 트레이스, 가중치를 함께 수정하는 조합 가능한 transform을 제공합니다.
- 03분산 학습(DDP, FSDP, TP), FP8/MXFP8, 양자화, CUDA Graphs를 위한 플러그인을 제공합니다.
- 04연산을 fuser, cuDNN, TransformerEngine, Triton 또는 CUDA 커널로 디스패치합니다.
활용 사례
- NVIDIA GPU에서 LLM 사전 학습이나 파인튜닝을 가속합니다.
- Hugging Face 또는 torchvision 모델을 더 낮은 지연 시간으로 실행합니다.
- 모델의 혼합 정밀도 또는 양자화 설정을 실험합니다.
- 단일 GPU PyTorch 모델을 멀티 GPU 분산 실행으로 확장합니다.
빠른 시작
- 1
pip으로 Thunder 설치
pip install lightning-thunder - 2
PyTorch와 torchvision 설치 또는 업그레이드
pip install -U torch torchvision - 3
Thunder로 PyTorch 모델을 컴파일하고 실행(README의 Hello World 예제 참고)
사용 전 알아둘 점
- 선택적 NVIDIA GPU 지원에는 특정 torch 및 CUDA 버전에 맞는 nvfuser 빌드와 같은 추가 패키지가 필요합니다.
- transformer_engine을 통한 Float8 지원은 소스에서 컴파일해야 하며 설치 시간이 오래 걸립니다.
- README에 따르면 Thunder는 torch.compile을 대체하지 않으며, 특정 구성에서 주로 속도 향상을 제공합니다.
토픽
자주 묻는 질문
- lightning-thunder은(는) 무엇인가요?
- PyTorch 모델의 학습과 추론을 최적화하는 소스 간 컴파일러로, 검사 가능한 IR과 조합 가능한 변환을 제공합니다. Thunder는 PyTorch용 딥러닝 컴파일러로, 모델을 받아 최적화된 버전으로 변환합니다. 전체 계산을 단순한 Python 유사 중간 표현으로 캡처하므로, 이를 검사하고 프로파일링한 뒤 더 빠른 연산이나 커널로 교체하도록 재작성할 수 있습니다.
- lightning-thunder은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- lightning-thunder은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- lightning-thunder은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. lightning-thunder의 마지막 커밋은 2026년 10월 12일입니다.
- lightning-thunder은(는) 어디에 사용할 수 있나요?
- NVIDIA GPU에서 LLM 사전 학습이나 파인튜닝을 가속합니다. Hugging Face 또는 torchvision 모델을 더 낮은 지연 시간으로 실행합니다. 모델의 혼합 정밀도 또는 양자화 설정을 실험합니다. 단일 GPU PyTorch 모델을 멀티 GPU 분산 실행으로 확장합니다.
- lightning-thunder는 어떻게 설치하나요?
- pip으로 Thunder 설치: pip install lightning-thunder PyTorch와 torchvision 설치 또는 업그레이드: pip install -U torch torchvision Thunder로 PyTorch 모델을 컴파일하고 실행(README의 Hello World 예제 참고)
- lightning-thunder은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/Lightning-AI/lightning-thunder
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
대규모 언어 모델과 멀티모달 모델의 학습, 파인튜닝, 추론 실행을 위한 방법론과 스크립트, 단계별 가이드를 담은 오픈북입니다.
OpenAI 호환 API로 대규모 언어 모델을 빠르고 메모리 효율적으로 실행하고 서빙하는 라이브러리 및 서버입니다.
분산 학습, 여러 추론 백엔드, RL 후처리 학습을 지원하는 NVIDIA Cosmos3 옴니모달 월드 모델 학습 및 추론 프레임워크입니다.
GPU를 지원하는 미니멀한 Rust ML 프레임워크로, Python 없이 빠르고 가볍게 추론 및 배포할 수 있도록 설계되었습니다.
양자화, 멀티모달 모델, 에이전트 도구를 지원하며 OpenAI 및 Anthropic 호환 API를 제공하는 Rust 기반 LLM 추론 엔진입니다.