ИИ ИИшка Про
Гайды

Что такое квантизация моделей: почему нейросеть на 70 миллиардов параметров влезает в ноутбук

AI-редакция

Если вы хоть раз пытались запустить нейросеть у себя на компьютере, вы натыкались на файлы вроде model-Q4_K_M.gguf и вопрос «а что такое Q4 и почему их пять штук на выбор». Это квантизация — и без неё локальный ИИ был бы доступен только владельцам серверных видеокарт за миллион рублей.

Простыми словами

Нейросеть — это гигантская таблица чисел (весов). У модели на 70 миллиардов параметров этих чисел, соответственно, 70 миллиардов. Каждое из них по умолчанию хранится в формате FP16 — 16 бит, то есть 2 байта.

Простая арифметика: 70 млрд × 2 байта = 140 ГБ. Столько видеопамяти нет ни у одной потребительской видеокарты — у RTX 4090 её 24 ГБ.

Квантизация — это уменьшение точности каждого числа. Вместо 16 бит на вес храним 8, 4 или даже меньше. При 4 битах те же 70 млрд параметров занимают уже около 35 ГБ, а модель на 8 млрд параметров — примерно 4,5 ГБ и спокойно работает на обычном игровом ПК.

Аналогия: это как сохранить фотографию в JPEG вместо RAW. Файл меньше в десять раз, а глазом разницу почти не видно.

Что означают обозначения

ОбозначениеБит на весРазмер модели 8BКачество
FP16 / BF1616~16 ГБОригинал, эталон
Q8_08~8,5 ГБОтличий с оригиналом почти нет
Q6_K~6,5~6,6 ГБРазница неразличима на практике
Q5_K_M~5,5~5,7 ГБОчень хорошо
Q4_K_M~4,5~4,9 ГБЗолотая середина
Q3_K_M~3,9~4,0 ГБЗаметная деградация
Q2_K~2,6~3,2 ГБМодель начинает «глупеть»

Расшифровка суффиксов:

  • K — «K-quants», умный метод: важные слои (внимание, эмбеддинги) квантуются мягче, чем остальные. Всегда лучше, чем старые Q4_0 / Q4_1.
  • S / M / L — small / medium / large внутри одного уровня. M — стандартный выбор.
  • GGUF — не уровень квантизации, а формат файла (наследник GGML), который понимают llama.cpp, Ollama, LM Studio, Jan. В одном GGUF-файле лежит и модель, и токенизатор, и метаданные.

Отдельно встречаются GPTQ, AWQ и EXL2 — это другие семейства квантизации, заточенные под запуск целиком на видеокарте (vLLM, ExLlama). GGUF универсальнее: он умеет раскидывать модель между видеопамятью и обычной оперативкой.

Сколько теряется качества

Главный вопрос. Ответ по замерам сообщества (перплексия — метрика «насколько модель удивлена текстом», чем ниже тем лучше):

  • Q8 — потери в районе статистической погрешности. Смысла брать почти нет: занимает вдвое больше Q4 ради неощутимой разницы.
  • Q6 / Q5 — потери меньше процента. Если памяти хватает — берите.
  • Q4_K_M — потери порядка 1–2%. В диалоге вы их не заметите. Это дефолт, который рекомендуют почти все.
  • Q3 — модель начинает путаться в длинных рассуждениях, хуже держит формат ответа.
  • Q2 — ломается математика, код, следование инструкции. Использовать только если иначе модель вообще не влезает.

Важное правило, которое многие узнают поздно: большая модель в жёсткой квантизации обычно лучше маленькой модели в мягкой. 70B в Q4 умнее, чем 8B в Q8, при примерно сопоставимом размере файла (35 ГБ против 8,5 ГБ — тут, конечно, не сопоставимом, но принцип работает и на парах 13B-Q4 vs 7B-Q8). Сначала берите модель побольше, потом уже думайте про биты.

Как выбрать под своё железо

Считайте по простой формуле: размер файла + 1–2 ГБ на контекст должны помещаться в видеопамять.

  • 8 ГБ VRAM (RTX 3060, 4060): модели 7–8B в Q4_K_M. Идеально: Qwen3, Llama 3.1 8B, Mistral.
  • 12 ГБ (3060 12G, 4070): те же 8B, но уже в Q6, или 14B в Q4.
  • 16 ГБ (4060 Ti 16G, 4080): 14B комфортно, 32B в Q3 — впритык.
  • 24 ГБ (3090, 4090): 32B в Q4_K_M — оптимум. 70B работать будет, но с выгрузкой в оперативку и медленно.
  • Только процессор + 32 ГБ RAM: 8B в Q4 пойдёт, скорость около 5–10 токенов в секунду. Читать успеваете, но не более.
  • Mac с Apple Silicon: тут память общая (unified), так что M-чип с 32 ГБ тянет 32B-модель — часто лучше, чем ПК с 4090.

Если модель не влезает целиком — llama.cpp выгрузит часть слоёв в оперативку. Работать будет, но каждый выгруженный слой замедляет генерацию в разы.

С чего начать на практике

Самый простой путь — Ollama: одна команда ollama run qwen3:8b, квантизацию Q4_K_M он подберёт сам. Хотите выбирать вручную и видеть интерфейс — LM Studio, там при скачивании прямо показано, влезет модель в вашу видеокарту или нет.

Подробнее про локальный запуск мы писали в гайде как запустить ИИ локально через Ollama, а про то, чем инференс отличается от обучения — в отдельном разборе.

Коротко

  • Квантизация ужимает веса модели с 16 бит до 8/6/5/4 — файл уменьшается в 3–4 раза.
  • Q4_K_M — правильный дефолт: теряет 1–2% качества, экономит 70% памяти.
  • Ниже Q3 не опускайтесь без крайней нужды — модель глупеет заметно.
  • Большая модель в Q4 лучше маленькой в Q8.
  • GGUF — формат файла, а не уровень квантизации. Его понимают Ollama, LM Studio, llama.cpp.