Transformers documentation

AQLM

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v5.22.2).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

AQLM

Additive Quantization of Language Models (AQLM) lượng tử hóa nhiều trọng số cùng lúc và tận dụng các mối phụ thuộc lẫn nhau giữa chúng. AQLM biểu diễn các nhóm 8-16 trọng số dưới dạng tổng của nhiều mã vector.

AQLM cũng hỗ trợ fine-tuning với LoRA bằng thư viện PEFT, và tương thích hoàn toàn với torch.compile để suy luận và huấn luyện nhanh hơn nữa.

Chạy lệnh bên dưới để cài đặt thư viện AQLM với hỗ trợ kernel cho cả suy luận và huấn luyện trên GPU và CPU.

pip install aqlm[gpu,cpu]

Tải một mô hình đã lượng tử hóa AQLM bằng from_pretrained().

from transformers import AutoTokenizer, AutoModelForCausalLM

quantized_model = AutoModelForCausalLM.from_pretrained(
    "ISTA-DASLab/Mixtral-8x7b-AQLM-2Bit-1x16-hf",
    dtype="auto", 
    device_map="auto"
)

Cấu hình

Các cấu hình lượng tử hóa AQLM chủ yếu khác nhau về số lượng codebook được sử dụng cũng như kích thước codebook tính bằng bit. Các cấu hình phổ biến nhất và các kernel suy luận được hỗ trợ được hiển thị bên dưới.

KernelSố lượng codebookKích thước codebook, số bitKý hiệuĐộ chính xácTốc độ tăngSuy luận GPU nhanhSuy luận CPU nhanh
TritonKNKxN-Tối đa ~0,7 lần✅❌
CUDA1161x16Tốt nhấtTối đa ~1.3 lần✅❌
CUDA282x8OKTối đa ~3.0 lần✅❌
NumbaK8Kx8TốtTối đa ~4.0 lần❌✅

Tài nguyên

Chạy notebook demo AQLM để xem thêm các ví dụ về cách lượng tử hóa một mô hình, đẩy mô hình đã lượng tử hóa lên Hub, và nhiều hơn nữa.

Để xem thêm các notebook demo mẫu, hãy truy cập kho mã của AQLM.

Update on GitHub