Получить предложение

Запуск моделей

Квантование LLM: FP8, INT4 и FP4 простыми словами

Что такое квантование LLM простыми словами: форматы FP8, INT8, INT4, FP4 и GGUF, сколько памяти они экономят, как влияют на качество и какое железо их поддерживает.

Содержание
  1. Что такое квантование нейросети простыми словами
  2. Форматы: от BF16 до FP4 и GGUF
  3. Сколько качества теряет модель
  4. Что даёт квантование LLM: память и скорость
  5. Какое железо поддерживает FP8 и FP4
  6. Типичные ошибки
  7. Как выбрать формат квантования
  8. Коротко

Квантование LLM это хранение весов модели с меньшей точностью: вместо 2 байт на параметр в BF16 используется 1 байт (FP8, INT8) или полбайта (INT4, FP4). Модель становится в 2–4 раза меньше и быстрее генерирует текст. В FP8 качество почти не меняется, в 4 битах потери заметнее на сложных задачах. Например, Llama 3.3 70B занимает 140 ГБ в BF16, 70 ГБ в FP8 и около 40 ГБ в 4 битах.

Что такое квантование нейросети простыми словами

Языковая модель это миллиарды чисел, её весов. Обычно модели выпускают в BF16, где каждое число занимает 2 байта. Квантование округляет эти числа до более грубой сетки значений, чтобы каждое занимало 1 байт или полбайта.

Похоже на сжатие фотографии. Снимок в хорошем JPEG почти не отличить от исходника, а при сильном сжатии появляются артефакты, особенно на мелких деталях. С моделью так же: FP8 почти не отличается от оригинала, а в 4 битах теряются тонкости, и это видно на сложных задачах вроде математики, кода и длинных рассуждений.

Чтобы округление меньше портило модель, веса делят на небольшие группы, и у каждой группы хранится свой масштаб. Числа внутри группы записываются относительно него. Отсюда «лишние» доли байта: 4-битный формат на практике занимает чуть больше полбайта на параметр.

Форматы: от BF16 до FP4 и GGUF

Формат Байт на параметр Где используется Аппаратная поддержка
BF16 / FP16 2 Обучение, эталон для сравнения Все современные GPU и NPU
FP8 1 Инференс почти без потерь, родной формат DeepSeek V3 и R1 Hopper (H100, H200), Blackwell
INT8 1 Инференс, в том числе на Huawei Ascend GPU NVIDIA, Huawei Ascend
INT4 (GPTQ, AWQ) ~0,5 Крупные модели на ограниченной памяти, сервисы на vLLM Программно на современных GPU
GGUF (Q8_0, Q4_K_M) ~1 и ~0,6 Ollama и llama.cpp, один пользователь Процессоры, GPU NVIDIA, Mac
NVFP4 ~0,5 Максимум скорости и экономии памяти Только Blackwell
MXFP4 ~0,5 Родной формат gpt-oss Аппаратно Blackwell, на Hopper программно

Коротко о каждом:

  • FP8 это 8-битное число с плавающей запятой. На Hopper и Blackwell его считают тензорные ядра, поэтому выигрыш есть и в памяти, и в вычислениях.
  • GPTQ и AWQ это методы, которые сжимают веса до 4 бит (INT4). Оба прогоняют через модель небольшой набор примеров, чтобы понять, какие веса важнее, и округлить остальные аккуратнее. Сами вычисления при этом идут в 16 битах: веса распаковываются на лету.
  • GGUF это формат файлов llama.cpp и Ollama с набором вариантов сжатия. Цифра в названии примерно равна числу бит: Q8_0 около 8 бит, Q4_K_M около 4,5–5 бит на параметр.
  • NVFP4 и MXFP4 это 4-битные числа с плавающей запятой. Аппаратно их считает только Blackwell. В MXFP4 выпущена gpt-oss, о ней подробно в статье «gpt-oss: на каком железе запускать».

Есть модели, которые выпускают сразу в сжатом виде: DeepSeek в FP8, gpt-oss в MXFP4. Для них это эталонное качество, и потерь относительно «оригинала» нет, потому что оригинал такой и есть.

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

  • FP8: почти без потерь. Это безопасный формат по умолчанию для инференса на современном железе.
  • INT8: тоже почти без потерь, как и FP8.
  • 4 бита: потери заметнее, сильнее всего на сложных задачах. На простых сценариях разница бывает почти незаметна.

Часто встаёт вопрос, что лучше: крупная модель в 4 битах или модель поменьше в FP8. Общего ответа нет. Крупная модель в 4 битах нередко оказывается сильнее, но решать нужно на своих данных: соберите 50–100 типичных запросов и сравните ответы в разных форматах. Это быстрее и надёжнее, чем полагаться на чужие тесты.

Что даёт квантование LLM: память и скорость

С памятью всё прямо: FP8 вдвое меньше BF16, 4 бита вчетверо. Освободившееся место уходит под KV-кеш, то есть под более длинный контекст и больше одновременных пользователей. Как считать память целиком, мы разобрали в статье «Сколько видеопамяти нужно для LLM».

Скорость генерации растёт по другой причине. На каждый новый токен модель читает свои веса из памяти, и чем их меньше, тем быстрее. Пример для Qwen3 32B на RTX PRO 6000 Blackwell с памятью 1,79 ТБ/с:

Формат Веса Остаётся из 96 ГБ Теоретический потолок, токенов в секунду
BF16 64 ГБ ~32 ГБ ~28
FP8 32 ГБ ~64 ГБ ~56
4 бита ~18 ГБ ~78 ГБ ~100

Потолок посчитан как скорость памяти, делённая на объём весов, для одного диалога. Реальная скорость ниже, но пропорция честная: уменьшение весов вдвое примерно вдвое поднимает потолок генерации.

Обработка длинного промпта и обслуживание многих пользователей сразу упираются уже в вычисления. Здесь помогает только формат, который ускоритель считает аппаратно. У H200 NVL производительность в FP8 составляет 3 341 TFLOPS против 1 671 TFLOPS в BF16, ровно вдвое больше. У DGX B200 переход с FP8 на FP4 даёт 144 ПФЛОПС вместо 72. А INT4 через GPTQ и AWQ экономит память и ускоряет генерацию, но вычисления остаются 16-битными.

Какое железо поддерживает FP8 и FP4

  • GeForce RTX 5090 и RTX PRO 6000. Blackwell, аппаратно FP8 и FP4: 3 352 и 4 000 TOPS в FP4 соответственно.
  • H200 NVL и DGX H200. Hopper, аппаратно FP8, без FP4. 4-битные модели работают, но 4 бита дают выигрыш только в памяти и скорости генерации.
  • DGX B200. Blackwell: 72 ПФЛОПС в FP8 и 144 ПФЛОПС в FP4 на систему.
  • A100. FP8 аппаратно не поддерживается, остаются BF16, INT8 и INT4 через GPTQ и AWQ.
  • Huawei Ascend 910B. Основные форматы для инференса FP16 и INT8. Поддержку FP4 у Huawei первым получил Atlas 350 на Ascend 950PR.

Типичные ошибки

  • Ждать ускорения вычислений без аппаратной поддержки. FP8-модель на A100 сэкономит память, но длинные промпты быстрее обрабатываться не станут.
  • Забывать про кеш. Веса сжали вчетверо, а KV-кеш под длинный контекст и многих пользователей остался прежним. Кеш тоже можно хранить в 8 битах, популярные движки это умеют, но качество после этого стоит проверить отдельно.
  • Гнаться за минимальным размером. Варианты ниже 4 бит существуют, но чем грубее округление, тем сильнее страдают ответы. Часто разумнее взять модель поменьше в FP8.
  • Судить о качестве по паре запросов. Различия между форматами видны на десятках типичных задач, а не на одном удачном примере.

Как выбрать формат квантования

  1. Модель выпущена в сжатом формате (DeepSeek в FP8, gpt-oss в MXFP4): используйте его.
  2. Память есть с запасом, железо Hopper или Blackwell: FP8 как формат по умолчанию.
  3. Модель не помещается или нужно больше пользователей: 4 бита. Для vLLM это AWQ или GPTQ, на Blackwell NVFP4.
  4. Один пользователь на рабочей станции или Mac: GGUF в Ollama или llama.cpp, обычно Q4_K_M или Q8_0.
  5. В любом случае проверьте качество на своих задачах, прежде чем запускать сервис для сотрудников.

Коротко

  • Квантование хранит веса с меньшей точностью: 1 байт в FP8 и INT8, полбайта в 4 битах вместо 2 байт в BF16.
  • FP8 почти не теряет качества, 4 бита теряют заметнее на сложных задачах.
  • Меньше байт на параметр значит больше места под контекст и выше потолок скорости генерации.
  • Ускорение вычислений даёт только аппаратная поддержка: FP8 у Hopper и Blackwell, FP4 только у Blackwell.
  • GGUF, AWQ и GPTQ решают разные задачи: GGUF для одного пользователя в llama.cpp и Ollama, AWQ и GPTQ для многопользовательского сервиса.

Если хотите понять, какой формат и какое железо подойдут вашей модели, оставьте заявку: посчитаем память и подберём карту или сервер, цену и срок пришлём в течение рабочего дня.

Оборудование из статьи

NVIDIA Популярное

RTX PRO 6000 Blackwell

96 ГБ памяти в одной карте: модели 70B и больше без кластера.

GDDR7 с ECC
96ГБ
ИИ, FP4
4000TOPS
Потребление
600Вт

Цена по запросу

NVIDIA

DGX B200

Blackwell для обучения и инференса: 1,44 ТБ памяти GPU.

B200
8GPU
Память GPU
1440ГБ
FP4
144ПФЛОПС

Цена по запросу

NVIDIA

H200 NVL

Больше всего памяти в формате PCIe: 141 ГБ HBM3e на карту.

HBM3e
141ГБ
Скорость памяти
4,8ТБ/с
FP8
3341TFLOPS

Цена по запросу

Читайте также

Выбор оборудования 5 мин чтения

Сколько видеопамяти нужно для LLM: расчёт для моделей от 8B до 671B

Простая формула, сколько видеопамяти нужно языковой модели: веса, KV-кеш и запас. Таблица для Qwen3, Llama 70B, gpt-oss и DeepSeek и подбор GPU под объём.

Запуск моделей 7 мин чтения

gpt-oss-⁠120b и gpt-oss-⁠20b: на каком железе запускать

Сколько памяти нужно gpt-oss-⁠120b и gpt-oss-⁠20b, открытым моделям OpenAI: веса в MXFP4, какие GPU подходят, сколько пользователей потянет карта и чем запускать.

Запуск моделей 7 мин чтения

Дообучение LLM: сколько GPU нужно для LoRA и полного обучения

Сколько памяти и GPU нужно для дообучения LLM методами LoRA, QLoRA и полного обучения: таблица для моделей 8B, 32B и 70B, подбор железа и софт.

Получить предложение

Опишите задачу или пришлите спецификацию. Ответим в течение рабочего дня с ценой и сроком поставки.

Модель, количество, сроки, задача. Можно приложить спецификацию в переписке.