Что такое квантизация? Уменьшаем модели ИИ, чтобы запускать их на своей машине
Огромная модель 70B, работающая на одном домашнем игровом ПК вместо стойки дата-центровых GPU, возможна благодаря квантизации, которая снижает числовую точность весов модели, чтобы резко уменьшить размер и память. Если дистилляция переносит знания в отдельную меньшую модель, то квантизация делает ту же модель легче. Статья объясняет это через аналогию со сжатием фотографии. Квантизация заменяет веса, хранящиеся как дробные FP16/FP32, целыми INT8 (8-бит) или INT4 (4-бит), сокращая байты на вес (FP32=4, INT8=1, INT4=0,5); как сжатие RAW-фото в JPEG, жертвуем малой точностью ради большого выигрыша, и удивляет, как мало вы теряете. По памяти 4-bit использует около четверти от FP16: модель 70B падает с ~140GB до ~35GB, а 8B при 4-bit — ~4.5-5GB, умещаясь в средний GPU с 8GB VRAM для локального запуска (демократизация LLM). По точности INT8 почти без потерь, а INT4 деградирует менее чем на 4% на обычных Q&A и задачах на здравый смысл, но потеря заметнее для математики, генерации кода и сложных рассуждений (проявляется как небольшой рост перплексии), поэтому выбирайте разрядность под задачу. Основные методы: GPTQ (первопроходец точного 4-bit), AWQ (защищает ~1% самых важных весов, часто на 1-2% точнее и быстрее), GGUF (формат llama.cpp/Ollama, Q2_K-Q8_0, гибрид CPU+GPU, для локального) и QLoRA (4-bit база плюс LoRA для файнтюнинга на потребительском GPU). Это отличается от дистилляции (перенос в отдельную малую модель) и файнтюнинга (добавление знаний задачи), и эти три обычно комбинируют (квантизовать дистиллированную модель; файнтюнить квантизованную базу). Чтобы начать, запустите модель GGUF с Ollama одной командой, выберите Q4/Q8 по VRAM и избегайте INT4 для кода или точной математики. Большинство крупных моделей поставляются уже квантизованными, так что вы просто скачиваете и используете их. Сохраняем ум, убираем только вес. Цифры взяты из публичных материалов, ориентировочны.