GGUF и квантование: что меняется по памяти и по деньгам
GGUF — файл, в котором модель раздают библиотеки Ollama и LM Studio. Почти всегда в нём лежит не исходная модель, а ужатая копия: веса записаны с меньшей разрядностью. Для кошелька важен именно этот второй факт — от разрядности зависит, в какую карту модель влезет и сколько эта карта стоит.
⚠️ Мы считаем память и деньги. Что теряется в качестве — не измеряем вовсе, и потому не пишем ни «почти не хуже», ни «заметно хуже».
Одна и та же модель занимает по-разному, смотря чем её записать: FP16 / BF16 (2 байта) · FP8 / INT8 (1 байт) · INT4 (0,5 байта). В карту на 24 ГБ — самый ходовой домашний объём — при полной разрядности помещается 3 из 10 языковых моделей каталога, при Q8 4, при Q4 8. ⚠️ Выигрыш меньше, чем кажется по размеру файла: KV-кэш под контекст квантованием не ужимается, а он растёт по длине контекста и числу одновременных запросов. Всё считается по снятой архитектуре модели и наблюдаемым ценам карт; качество ответов не считается никак.
Три разрядности и как их называют в GGUF
- FP16 / BF16 (2 байта) F16 / BF16 — веса как их обучили, без сжатия
- FP8 / INT8 (1 байт) Q8 — по байту на вес
- INT4 (0,5 байта) Q4 (Q4_K_M и родственные) — самый ходовой размер в библиотеках Ollama и LM Studio
Байт на параметр — из общего словаря проекта: тем же числом считает калькулятор видеопамяти и каталог моделей. Второго словаря разрядностей у нас нет намеренно — две реализации одной физики на этом проекте уже расходились в двадцать один раз.
Сколько занимает модель и в какую карту помещается
Полная потребность считается с памятью под контекст: 8192 токенов, один пользователь. Карта — самая дешёвая из тех, чью цену покупки мы наблюдаем и в которую модель помещается целиком. Прочерк значит «такой карты мы не наблюдаем», а не «такой карты не бывает».
| Модель | FP16 / BF16 | FP8 / INT8 | INT4 | ||||||
|---|---|---|---|---|---|---|---|---|---|
| веса | всего | карта | веса | всего | карта | веса | всего | карта | |
| T-lite-it-1.0 7,6 млрд | 15,2 ГБ | 18,7 ГБ | RTX 309024 ГБ · 277 640 ₽ | 7,6 ГБ | 9,6 ГБ | RTX 309024 ГБ · 277 640 ₽ | 3,8 ГБ | 5 ГБ | RTX 309024 ГБ · 277 640 ₽ |
| YandexGPT 5 Lite 8B Pretrain 8 млрд | 16,1 ГБ | 20,4 ГБ | RTX 309024 ГБ · 277 640 ₽ | 8 ГБ | 10,7 ГБ | RTX 309024 ГБ · 277 640 ₽ | 4 ГБ | 5,9 ГБ | RTX 309024 ГБ · 277 640 ₽ |
| Qwen3-8B 8,2 млрд | 16,4 ГБ | 20,9 ГБ | RTX 309024 ГБ · 277 640 ₽ | 8,2 ГБ | 11 ГБ | RTX 309024 ГБ · 277 640 ₽ | 4,1 ГБ | 6,1 ГБ | RTX 309024 ГБ · 277 640 ₽ |
| Vikhr-Nemo-12B-Instruct-R 12,2 млрд | 24,5 ГБ | 30,7 ГБ | RTX 509032 ГБ · 499 990 ₽ | 12,2 ГБ | 16 ГБ | RTX 309024 ГБ · 277 640 ₽ | 6,1 ГБ | 8,7 ГБ | RTX 309024 ГБ · 277 640 ₽ |
| GigaChat-20B-A3B-instruct 20,6 млрд | 41,2 ГБ | 50,4 ГБ | A10080 ГБ · 886 698 ₽ | 20,6 ГБ | 25,6 ГБ | RTX 509032 ГБ · 499 990 ₽ | 10,3 ГБ | 13,3 ГБ | RTX 309024 ГБ · 277 640 ₽ |
| Mistral Small 3.1 24B Instruct 24 млрд | 48 ГБ | 59 ГБ | A10080 ГБ · 886 698 ₽ | 24 ГБ | 30,2 ГБ | RTX 509032 ГБ · 499 990 ₽ | 12 ГБ | 15,7 ГБ | RTX 309024 ГБ · 277 640 ₽ |
| T-pro-it-1.0 32,8 млрд | 65,5 ГБ | 80,8 ГБ | RTX PRO 6000 Blackwell96 ГБ · 1 999 990 ₽ | 32,8 ГБ | 41,5 ГБ | RTX 6000 Ada48 ГБ · 687 422 ₽ | 16,4 ГБ | 21,8 ГБ | RTX 309024 ГБ · 277 640 ₽ |
| Qwen3-32B 32,8 млрд | 65,5 ГБ | 80,8 ГБ | RTX PRO 6000 Blackwell96 ГБ · 1 999 990 ₽ | 32,8 ГБ | 41,5 ГБ | RTX 6000 Ada48 ГБ · 687 422 ₽ | 16,4 ГБ | 21,8 ГБ | RTX 309024 ГБ · 277 640 ₽ |
| Qwen2.5-72B-Instruct 72,7 млрд | 145,4 ГБ | 177,2 ГБ | не наблюдаем | 72,7 ГБ | 89,9 ГБ | RTX PRO 6000 Blackwell96 ГБ · 1 999 990 ₽ | 36,4 ГБ | 46,3 ГБ | RTX 6000 Ada48 ГБ · 687 422 ₽ |
| DeepSeek-V3 684,5 млрд | 1 369,1 ГБ | 1 643,5 ГБ | не наблюдаем | 684,5 ГБ | 822 ГБ | не наблюдаем | 342,3 ГБ | 411,3 ГБ | не наблюдаем |
Методология память под модель и цена карты, в которую она помещается — как мы считаем. Что исправляли
Где квантование меняет не карту, а сумму
Разрядность интересна не гигабайтами, а тем, что за ними стоит. Ниже — модели, у которых переход к Q4 переводит покупку в другую карту, и обе цены мы наблюдаем.
Чего мы про квантование не знаем
- Что теряется в качестве. Своих замеров качества у нас нет, и чужих мы для этого не собираем. Это единственная величина на странице, которую мы не считаем никак — и потому не оцениваем словами.
- Быстрее ли квантованная модель. В наборе 84 замера, и ни одной пары, где менялась бы только точность весов. Точности, которые встречаются: 16 бит — 61, AWQ 4 бита — 10, AWQ — 9, FP8 — 4. Пока пары нет, ответа нет тоже.
- Что именно отдают библиотеки инструментов. В каких форматах и с какой разрядностью Ollama и LM Studio раздают модели — мы не наблюдаем: наш каталог свой, а не их.
- Насколько квантуется KV-кэш. Расчёт выше считает кэш неквантованным — так его чаще всего и запускают. Движки, умеющие ужимать и кэш, дадут меньшую цифру, и проверить это по нашим данным нечем.