Transformers documentation
AQLM
AQLM
Аддитивное квантование языковых моделей (AQLM) квантует несколько весов совместно, используя взаимозависимости между ними. AQLM представляет группы из 8–16 весов в виде суммы нескольких векторных кодов.
AQLM также поддерживает дообучение с LoRA с помощью библиотеки PEFT и полностью совместима с torch.compile для ещё более быстрого вывода и обучения.
Выполните команду ниже, чтобы установить библиотеку AQLM с поддержкой ядер для инференса и обучения как на GPU, так и на CPU.
pip install aqlm[gpu,cpu]
Загрузите модель с квантованием AQLM с помощью 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"
)Конфигурации
Настройки квантования AQLM различаются в основном количеством используемых кодовых книг, а также размером кодовых книг в битах. Наиболее популярные настройки и поддерживаемые ядра вывода приведены ниже.
| Ядро | Количество кодовых книг | Размер кодовой книги, биты | Обозначения | Точность | Ускорение | Быстрый вывод на GPU | Быстрый CPU-инференс |
|---|---|---|---|---|---|---|---|
| Triton | K | N | KxN | - | До ~0,7x | ✅ | ❌ |
| CUDA | 1 | 16 | 1x16 | Лучший | До ~1,3x | ✅ | ❌ |
| CUDA | 2 | 8 | 2x8 | Хорошо | До ~3,0x | ✅ | ❌ |
| Numba | K | 8 | Kx8 | Хорошо | До ~4,0x | ❌ | ✅ |
Ресурсы
Запустите ноутбук с демонстрацией AQLM, чтобы увидеть больше примеров квантования модели, загрузки квантованной модели на Hub и других задач.
Для примеров демонстрационных блокнотов посетите репозиторий AQLM.
Update on GitHub