Buckets:
Optimum Quanto
Quanto는 Optimum의 PyTorch 양자화 백엔드입니다. 가중치에 대한 선형 양자화(float8, int8, int4, int2)를 지원하며, 정밀도가 매우 높은 모델과 유사한 정확도를 제공합니다. Quanto는 모든 모델 모달리티와 디바이스와 호환되므로 하드웨어와 관계없이 쉽게 사용할 수 있습니다.
Quanto는 더 빠른 생성을 위해 torch.compile과도 호환됩니다.
다음 명령어로 Quanto를 설치합니다.
pip install optimum-quanto accelerate transformers
QuantoConfig을 생성하고 weights 매개변수를 지정하여 모델을 양자화합니다. torch.nn.Linear 레이어를 포함하는 모든 모달리티의 모든 모델에 적용할 수 있습니다.
Transformers 통합은 가중치 양자화만 지원합니다. 활성화 양자화, 보정(calibration), 또는 QAT가 필요한 경우 Quanto 라이브러리를 직접 사용하세요.
from transformers import AutoModelForCausalLM, AutoTokenizer, QuantoConfig
quant_config = QuantoConfig(weights="int8")
model = transformers.AutoModelForCausalLM.from_pretrained(
"meta-llama/Llama-3.1-8B",
dtype="auto",
device_map="auto",
quantization_config=quant_config
)
torch.compile
Quanto 모델을 torch.compile로 감싸서 생성 속도를 높입니다.
import torch
from transformers import AutoModelForSpeechSeq2Seq, QuantoConfig
quant_config = QuantoConfig(weights="int8")
model = AutoModelForSpeechSeq2Seq.from_pretrained(
"openai/whisper-large-v2",
dtype="auto",
device_map="auto",
quantization_config=quant_config
)
model = torch.compile(model)
리소스
라이브러리 설계와 벤치마크에 대해 자세히 알아보려면 Quanto: a PyTorch quantization backend for Optimum 블로그 게시물을 읽어보세요.
더 실용적인 예시를 보려면 Quanto 노트북을 참고하세요.
Xet Storage Details
- Size:
- 2.47 kB
- Xet hash:
- aaca9fde891e4c9d6ad4c5b32358039bccb5123fe50d2dce00c36b6e5134dd56
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.