GitHub

NVIDIA/Model-Optimizer — A unified library of SOTA model optimization techniques like quantization, distillation, pruning, neural architecture search, speculative decoding, etc. It compresses deep learning models for downstream deployment frameworks like TensorRT-LLM, TensorRT, vLLM, etc. to optimize inference speed.

NVIDIA Model Optimizer — 다양한 기법으로 모델을 압축해 추론을 가속하는 라이브러리

NVIDIA Model Optimizer는 양자화, 가지치기, 증류, 희소화, speculative decoding 등으로 딥러닝 모델을 최적화하는 오픈소스 라이브러리입니다. Hugging Face·PyTorch·ONNX 모델을 최적화한 뒤 TensorRT-LLM, vLLM, SGLang 등에서 사용할 체크포인트로 내보냅니다.

AI 요약

NVIDIA Model Optimizer(ModelOpt)는 모델 크기와 추론 비용을 줄이는 여러 최적화 기법을 하나의 라이브러리로 제공합니다. Hugging Face, PyTorch, ONNX 모델을 입력으로 받아 Python API에서 기법을 조합하고, 배포용 최적화 체크포인트를 내보냅니다.

지원하는 최적화 기법

사후 양자화(Post-Training Quantization)는 학습을 다시 하지 않고 모델을 낮은 정밀도로 변환합니다. 저장소 설명에 따르면 모델 크기를 2~4배 줄이면서 추론을 빠르게 하는 것을 목표로 합니다. 양자화 인식 학습(Quantization-Aware Training)과 증류(Distillation)는 추가 학습으로 저정밀도 모델의 정확도를 보완합니다. 가지치기(Pruning)는 불필요한 가중치를 제거하고, 희소화(Sparsity)는 0이 아닌 파라미터와 위치만 저장합니다. Speculative decoding은 초안 모듈이 다음 토큰을 예측하도록 학습해 추론을 최적화합니다. Neural Architecture Search(NAS)도 지원합니다.

학습부터 배포까지

ModelOpt는 Megatron-Bridge, Megatron-LM, Hugging Face Accelerate와 연동해 추론 최적화에 필요한 학습 과정을 지원합니다. 내보낸 체크포인트는 SGLang, TensorRT-LLM, TensorRT, vLLM 같은 추론 프레임워크에서 배포할 수 있습니다. Hugging Face 통합 내보내기 API는 transformers 모델과 diffusers 모델을 지원합니다.

설치와 호환성

PyPI에서 pip install -U nvidia-modelopt[all] 명령으로 설치할 수 있습니다. 소스 코드를 수정하거나 최신 기능을 사용하려면 저장소를 복제한 뒤 pip install -e .[dev]를 실행합니다. NVIDIA PyTorch, NeMo, TensorRT-LLM 컨테이너 이미지에도 Model Optimizer가 포함됩니다. 모델 유형과 기법별 지원 범위는 저장소의 지원 매트릭스에서 확인하도록 안내합니다.

ModelOpt는 1.0 이전 버전으로, 지원 중단 항목을 변경 로그와 코드 경고로 알립니다. 지원 중단 후 한 릴리스, 약 한 달 동안 이전 기능을 유지하며, 이후에는 마이너 버전 업데이트에서도 호환성이 깨지는 변경을 포함해 제거할 수 있다고 명시합니다.

원문: GitHub / 번역·요약: Trawling