Все 6 дата-центров работают

Оплата в криптовалюте · Без проверки личности · Root-доступ через менее 5 минут

Расчёт · руководство · 10 мин на чтение

Какой формат квантования запускать на практике

Стек инференса первым делом спрашивает про формат чисел, и от ответа ежемесячный инвойс меняется в восемь раз. Формат с наименьшими по размеру весами не всегда даёт наименьшую по объёму модель.

Коротко

Эмпирическое правило
Веса уменьшаются ровно в том соотношении, что указано в названии, — BF16 / FP16 2 B/param · FP8 1 B/param · 4-bit (AWQ, GPTQ) 0.5 B/param. Больше ничего.
Цена вопроса
Qwen 3 32B требует NVIDIA A100 PCIe за $1,091 в месяц при полной точности и NVIDIA L4 за $125 при 4-битной точности. Та же модель, тот же контекст.
Ловушка
Кэш ключей и значений не уменьшается вслед за весами. При контексте 128k 4-bit Llama 3.3 70B — это 53 % кэша и всего 47 % весов.
Где 4-бит однозначно проигрывает
Llama 3.1 8B при 128k требует 23.0 GB при 4-битной точности против 18.4 GB при FP8 — больше памяти при худшем качестве

Начните здесь

Большая часть этой страницы — арифметика, поэтому сначала — вывод. Формат определяют четыре вопроса, и они заданы именно в этом порядке, потому что каждый из них способен сам по себе закрыть тему.

Помещается ли модель уже при полной точности, с запасом под ваш контекст? Запускайте её в BF16 и не читайте дальше. Квантование — это способ купить машину поменьше, а вы уже купили ту, что подходит. За сжатие модели, которая и так помещается, приз не полагается.

У вас короткий контекст и крупная модель? Вот где 4-bit оправдывает свою репутацию. Основную часть памяти занимают веса, и сократить их до четверти — это почти то же самое, что сократить до четверти саму машину.

У вас длинный контекст и небольшая модель? Используйте FP8 на карте, которая его поддерживает. FP8 вдвое уменьшает не только веса, но и кэш, и начиная с определённой длины именно это второе уменьшение и оказывается важным — таблица ниже показывает точную точку, где FP8 обгоняет 4-bit.

Вы обслуживаете одного человека на одной машине? GGUF через Ollama — это на порядок меньше работы, а пропускная способность, которой вы жертвуете, — это та пропускная способность, которая одному читателю всё равно никогда не понадобилась бы.

Всё, что дальше, объясняет, почему эти четыре ответа именно такие, и даёт цифры, чтобы проверить их на вашей собственной модели, а не на нашей. Если вы ещё не подсчитали, сколько памяти вообще нужно вашей модели, эта арифметика — отдельное руководство, и начинать нужно с него.

Три формата, четыре названия

Для инференса в ходу всего три формата чисел, и различаются они только одним: сколько байт стоит каждый параметр. Всё остальное — AWQ, GPTQ, GGUF, bitsandbytes — это метод получения одного из этих трёх, а не четвёртый формат.

Три формата чисел и к чему относится каждая цифра в байтах
Формат Байт на вес Байт на элемент кэша Для чего это нужно
BF16 / FP16Веса в исходном опубликованном виде 2 2 Эталонное качество
FP8Производится самим стеком инференса 1 1 Близко к эталону, Hopper и Blackwell
4-bit (AWQ, GPTQ)Заранее подготовленный чекпоинт 0.5 2 Самые маленькие веса, кэш остаётся FP16

Читайте два числовых столбца как пару. На первых двух строках они равны, а на третьей — не равны, и именно эта единственная асимметрия объясняет большинство сюрпризов, которые ждут вас дальше на этой странице.

Четыре названия, которые вы реально встретите в репозитории моделей, соотносятся с этой таблицей так.

AWQ и GPTQ

Два пути к одному и тому же результату — 4-битному представлению. AWQ определяет, какие веса важны, отслеживая активации, и защищает их; GPTQ сжимает слой за слоем, по ходу исправляя ошибку. Оба метода дают чекпоинт, который vLLM и SGLang загружают напрямую, и на любой модели разрыв между ними меньше, чем разрыв между каждым из них и 16-битным форматом.

GGUF

Семейство llama.cpp, и то, что использует Ollama внутри. Это скорее контейнер, чем единый метод: один файл хранит веса в любой из десятка точностей, и он будет сбрасывать слои в системную RAM, когда карты не хватает. Не имеет равных для одного пользователя на одной машине, и самый слабый из трёх при реальной параллельной нагрузке.

FP8

Это не столько формат чекпоинта, сколько режим. Дайте стеку инференса 16-битные веса, и он приведёт их к FP8 прямо при загрузке — без отдельной загрузки файлов и без калибровочного прохода. Это единственный из четырёх, который умеет сжимать ещё и кэш, поэтому ниже он появляется там, где вы бы этого не ожидали.

BF16 и FP16

Веса в том виде, в котором их выпустили авторы, — эталон, относительно которого измеряется каждая другая строка. Два байта на параметр, никакого калибровочного набора, никакой поддержки ядер, которую нужно проверять, никакого спора о качестве. Если модель помещается, это и есть правильный ответ, а всё остальное на этой странице — отвлечение внимания.

Запросить любой из них — это один флаг. Это те же самые опции, которые подробно разбирает руководство по vLLM; здесь важно лишь то, насколько короткая разница между ними.

Один и тот же сервер — четырьмя способами
# 1. Reference. The weights as published, nothing to prepare.
$ vllm serve meta-llama/Llama-3.3-70B-Instruct --dtype bfloat16

# 2. FP8, quantised while it loads. No second download, no calibration.
#    --kv-cache-dtype is the half everyone forgets: it is what
#    halves the CACHE as well as the weights.
$ vllm serve meta-llama/Llama-3.3-70B-Instruct \
    --quantization fp8 --kv-cache-dtype fp8

# 3. Four-bit AWQ. A DIFFERENT checkpoint, prepared by someone else.
$ vllm serve casperhansen/llama-3.3-70b-instruct-awq \
    --quantization awq_marlin

# 4. Four-bit GPTQ. Same idea, different repository and flag.
$ vllm serve TechxGenus/Llama-3.3-70B-Instruct-GPTQ \
    --quantization gptq_marlin

Половина, которая не уменьшается

Квантование весов до 4 бит не квантует кэш ключей и значений. AWQ и GPTQ сжимают веса, и только веса; кэш остаётся на 16 битах, если вы отдельно не запросите кэш FP8, а на 4-битном чекпоинте почти никто этого не делает. Это третий столбец таблицы выше, и именно поэтому арифметика ниже идёт не так, как все ожидают.

Проще всего увидеть это следствие на одной модели. Ниже — Llama 3.3 70B в 4-bit при каждой длине контекста, которую предлагает конфигуратор — веса против кэша.

Веса и кэш 4-битной модели 70B по длине контекста
Контекст Веса KV-кэш Доля кэша
4k токенов 35.0 GB 1.3 GB 3 %
8k токенов 35.0 GB 2.5 GB 7 %
32k токенов 35.0 GB 10.0 GB 22 %
128k токенов 35.0 GB 40.0 GB 53 %

Столбец весов никогда не меняется — в этом весь смысл их квантования. Столбец кэша растёт линейно вместе с контекстом, пока в последней строке не превышает размер самой модели, которой принадлежит.

При 128k 4-bit Llama 3.3 70B — это 53 % кэша. Вы сжали веса до четверти исходного размера, а нужная вам машина почти не изменилась — потому что вы сжали ту часть, которая уже не была проблемой. Тот, кто рассчитывает конфигурацию для длинного контекста только по размеру весов, ошибётся более чем вдвое — в меньшую сторону.

Продолжайте в том же духе достаточно долго — и 4-bit вообще перестаёт выигрывать. FP8 уменьшает вдвое обе половины; 4-bit уменьшает в четыре раза одну половину, а вторую оставляет как есть. Поэтому для каждой модели есть длина контекста, на которой они меняются местами, и наступает она тем раньше, чем меньше модель — потому что у маленькой модели мало весов, чтобы на них сэкономить, а рост кэша на токен тот же самый.

Общий объём памяти: FP8 против 4-bit, по моделям и длине контекста
Модель 4k 8k 32k 128k
Llama 3.1 8B8 млрд параметров · 32 слоёв · 8 KV-голов 5.24-bit, на 4.3 GB 5.84-bit, на 4.0 GB 9.24-bit, на 2.3 GB 23.0Побеждает FP8 — 18.4 GB
Qwen 3 32B32 млрд параметров · 64 слоёв · 8 KV-голов 19.54-bit, на 17.8 GB 20.74-bit, на 17.2 GB 27.64-bit, на 13.8 GB 55.2ничья
Llama 3.3 70B70 млрд параметров · 80 слоёв · 8 KV-голов 41.74-bit, на 39.5 GB 43.14-bit, на 38.8 GB 51.74-bit, на 34.5 GB 86.34-bit, на 17.2 GB

Цифры в гигабайтах — для более компактного из двух форматов, с указанием проигравшего формата под ним. Читайте слева направо и смотрите, как преимущество столбца 4-bit тает по мере роста контекста.

Последняя строка сохраняет преимущество везде, потому что 70 миллиардов параметров — это очень много веса, на котором можно сэкономить. Средняя строка заканчивается вничью: при 128k Qwen 3 32B стоит ровно столько же в обоих форматах, и тогда FP8 стоит взять ради качества. А первая строка переворачивается полностью at 128k — там 4-bit требует больше памяти, чем FP8, и при этом хуже воспроизводит оригинал. Это сочетание — больше памяти и хуже результат — самая частая ошибка квантования, которую мы видим, и она незаметна, если смотреть только на размер файла весов.

На что реально способна ваша карта

FP8 — это в первую очередь аппаратная возможность, и лишь потом программная. Карта, тензорные ядра которой его не понимают, всё равно загрузит чекпоинт FP8 — стек распакует веса до 16 бит перед умножением — но вы получите только экономию на загрузке, а не в скорости, а кэш FP8 будет вам вообще недоступен. 4-bit — противоположный случай: он работает везде, потому что веса в любом случае распаковываются до 16 бит перед вычислениями.

Карты в каталоге по поколениям и их поддержка FP8
Генерация Карты, которые мы сдаём в аренду FP8
Ampere NVIDIA RTX A6000 48GB, NVIDIA A100 PCIe 40GB, NVIDIA A100 PCIe 80GB, NVIDIA A100 SXM4 80GB Нет в оборудовании — распаковка до 16-bit
Ada Lovelace NVIDIA L4 24GB, NVIDIA RTX 4090 24GB, NVIDIA L40S 48GB В тензорных ядрах — веса и кэш
Hopper NVIDIA H100 PCIe 80GB, NVIDIA H100 SXM5 80GB, NVIDIA H200 SXM5 141GB В тензорных ядрах — веса и кэш
Blackwell NVIDIA RTX 5090 32GB, NVIDIA B200 SXM6 180GB В тензорных ядрах — веса и кэш

Этот столбец описывает кремний, а это не совсем тот же вопрос, где FP8 действительно оправдан. Собственное примечание каталога рядом с форматом называет Hopper and Blackwell, и это утверждение касается скорее стеков инференса, чем тензорных ядер: это те поколения, на которых ядра и кэши FP8 использовались больше всего и вызывали меньше всего сюрпризов. Ada Lovelace его запустит. Hopper и Blackwell — это то, куда мы бы поместили развёртывание, зависящее от FP8.

На карте Ampere FP8 экономит только на загрузке, и больше ничего. У NVIDIA RTX A6000, NVIDIA A100 PCIe и NVIDIA A100 SXM4 в тензорных ядрах нет пути для FP8. Если вы рассчитывали вдвое уменьшить кэш на одной из них, этого не произойдёт — а цифры памяти в столбце FP8 выше недостижимы на этом оборудовании. Выбирайте карту и формат вместе, именно в таком порядке.

Ещё кое-что стоит знать перед выбором карты. Llama 3.3 70B в FP8 при 8k требует 81.9 GB, а карте на 80 GB — в их числе NVIDIA A100 PCIe — не хватает 1.9 GB. Недостаточно, чтобы это бросалось в глаза в таблице, но вполне достаточно, чтобы всё упало на самой машине. Карта, которой хватает с запасом, — следующая по старшинству, и конфигуратор скажет вам, какая именно, до оплаты, а не после.

Прирост скорости

Генерация одного токена означает однократное чтение активных весов из памяти. Меньше байт на вес — значит меньше байт нужно прочитать, а значит больше токенов в секунду — и на одном небатчированном потоке эта зависимость почти линейна, потому что карте больше нечего ждать. Это тот же потолок по пропускной способности памяти, на который делит руководство по цене за токен, и он намеренно консервативен. Ниже он применён к модели, достаточно маленькой, чтобы работать на любой однокарточной машине, которую мы сдаём в аренду, — так формат и карту можно прочитать по одной и той же таблице.

Скорость генерации на одном потоке для модели 8B по картам и форматам
Карта Пропускная способность BF16 / FP16 FP8 4-bit (AWQ, GPTQ)
NVIDIA L424 GB · $125 в месяц 300 GB/s ~ 8 ток/с ~ 17 ток/с ~ 34 ток/с
NVIDIA RTX A600048 GB · $286 в месяц 768 GB/s ~ 22 ток/с ~ 43 ток/с ~ 86 ток/с
NVIDIA L40S48 GB · $714 в месяц 864 GB/s ~ 24 ток/с ~ 49 ток/с ~ 97 ток/с
NVIDIA RTX 409024 GB · $193 в месяц 1008 GB/s ~ 28 ток/с ~ 57 ток/с ~ 113 ток/с
NVIDIA A100 PCIe40 GB · $392 в месяц 1555 GB/s ~ 44 ток/с ~ 87 ток/с ~ 175 ток/с
NVIDIA RTX 509032 GB · $335 в месяц 1792 GB/s ~ 50 ток/с ~ 101 ток/с ~ 202 ток/с
NVIDIA A100 PCIe80 GB · $1,091 в месяц 1935 GB/s ~ 54 ток/с ~ 109 ток/с ~ 218 ток/с
NVIDIA H100 PCIe80 GB · $1,469 в месяц 2000 GB/s ~ 56 ток/с ~ 113 ток/с ~ 225 ток/с

Llama 3.1 8B на одной карте, один поток за раз. Каждая машина в списке вмещает её во всех трёх форматах, поэтому строки сравнимы и по горизонтали, и по вертикали — а соотношение между тремя столбцами одинаково в каждой строке, потому что оно определяется только количеством байт на вес.

Два предостережения по поводу этой таблицы. Первое: она описывает по одному запросу за раз, а так почти никто не работает — при непрерывном батчинге веса читаются один раз на весь батч, поэтому ограничением становится не память, а вычисления, и разрыв между столбцами сужается. Второе: деквантование тоже кое-что стоит. 4-битные веса нужно распаковать перед умножением, и на небольшой модели при низком размере батча эта распаковка может съесть заметную долю того, что дало более компактное чтение. Направление, которое показывает таблица, надёжно; точные коэффициенты — не обещание.

Во что это вам обходится

Это та часть темы, где уверенным цифрам, включая наши, доверять не стоит. Ошибка квантования зависит от модели куда больше, чем от метода, а опубликованные сравнения расходятся друг с другом, потому что измеряют разные модели на разных задачах. Честно можно сказать только про общую картину.

FP8 достаточно близок к оригиналу, чтобы не вызывать споров. Это по-прежнему формат с плавающей точкой — экспонента и мантисса, только с меньшим числом бит в каждой — а не целочисленная сетка, на которую приходится отображать 4-битный чекпоинт с масштабирующими коэффициентами по группам. Именно поэтому он деградирует так мягко и не требует калибровочного прохода. Большинство команд принимают его без отдельной оценки качества, и у большинства это сходит с рук.

4-bit — это настоящий компромисс, и он бьёт неравномерно. Средний результат по бенчмаркам обычно почти не меняется. Меняется хвост распределения: длинные цепочки рассуждений, точная арифметика, редкие языки, строгие форматы вывода. Модель, которая всё ещё хорошо показывает себя в тестах с выбором ответа, может начать неправильно закрывать JSON.

Крупные модели переносят это легче. 4-bit на 70B — обычное дело. 4-bit на 8B, где каждый параметр значит больше, — вот где деградация становится заметной — и, согласно таблице выше, именно там выгода от этого минимальна.

Калибровочные данные важнее названия метода. И AWQ, и GPTQ сжимают модель, опираясь на выборочный корпус. Чекпоинт, откалиброванный на английской прозе и применённый для кода, покажет результат хуже, чем заслуживает сам метод, — и ни одна таблица бенчмарков вам об этом не скажет.

Отсюда единственная рекомендация на этой странице, не основанная на арифметике: запустите оба варианта. Вы арендуете машину с root-доступом и без какой-либо почасовой тарификации, поэтому развернуть одну и ту же модель дважды на двух портах и прогнать через каждую сотню собственных промптов — дело одного вечера, и оно решает вопрос именно для вашей нагрузки, а не для чьей-то ещё. Это заметно лучший ответ, чем любая таблица, включая эту, — и именно поэтому мы предпочитаем показать вам формулу, а не оценку.

Тестируйте в том порядке, который обходится дешевле всего. Начинайте с BF16, если он вообще помещается, — это эталон, который нужен для сравнения с остальными запусками. Затем переходите к FP8 — тот же чекпоинт, один флаг, ничего скачивать не нужно. Беритесь за 4-битный чекпоинт только тогда, когда память исключила оба варианта выше, и в этом случае сравнивайте его с запуском на FP8, а не со своими ожиданиями.

Какая это машина

Всё это имеет значение именно из-за инвойса. Ниже — самая дешёвая машина в нашем каталоге, которая вмещает каждую модель целиком при контексте 8k, в каждом из трёх форматов — целиком означает на одной карте, без разделения, потому что модель, разделённая между картами, добавляет в уравнение интерконнект, а это уже другое руководство.

Самая дешёвая машина, вмещающая каждую модель целиком, по форматам
Модель BF16 / FP16 FP8 4-bit (AWQ, GPTQ)
Llama 3.1 8B NVIDIA L4$125 в месяц · нужно 19.5 GB NVIDIA L4$125 в месяц · нужно 9.8 GB NVIDIA L4$125 в месяц · нужно 5.8 GB
Qwen 3 32B NVIDIA A100 PCIe$1,091 в месяц · нужно 75.9 GB NVIDIA RTX A6000$286 в месяц · нужно 37.9 GB NVIDIA L4$125 в месяц · нужно 20.7 GB
Llama 3.3 70B 4 × NVIDIA B200 SXM6$11,790 в месяц · нужно 163.9 GB 4 × NVIDIA H200 SXM5$8,405 в месяц · нужно 81.9 GB NVIDIA RTX A6000$286 в месяц · нужно 43.1 GB

При контексте 8k, на машинах, которые мы реально сдаём в аренду. Там, где в ячейке указано несколько карт, речь о наименьшем узле, в котором поставляется эта карта, а не о разделённой модели: самые крупные карты продаются по четыре и по восемь штук, поэтому самый дешёвый способ не делить 70B при полной точности — купить четыре карты и использовать одну. Именно ради того, чтобы избежать такого инвойса, и существует квантование.

Прочитайте среднюю строку по горизонтали: $1,091 против $125, примерно 9×. Тот же Qwen 3 32B, тот же контекст 8k, та же единственная карта и тот же root-доступ — и только формат чисел отличается. В этом весь коммерческий смысл квантования, и именно поэтому его стоит потратить вечер на измерения, а не полдня на чтение.

Есть две привычки, которые отличают правильное использование этой таблицы от попадания впросак. Считайте по контексту, который вы реально будете использовать, а не по максимуму модели — вторая таблица на этой странице показывает, что бывает с теми, кто путает эти два параметра. И сверяйте формат с картой до заказа, а не после: NVIDIA RTX A6000, NVIDIA A100 PCIe и NVIDIA A100 SXM4 не даст вам цифры FP8, какой бы флаг вы ни указали. Конфигуратор показывает необходимый объём памяти и то, помещается ли модель на одну карту, для каждого узла и каждого формата — ещё до оплаты. Если вы выбираете между арендой и оплатой API за токен, точка окупаемости рассчитана отдельно, и квантование существенно сдвигает её в пользу железа.

Выбирайте формат и машину вместе.

Конфигуратор показывает, что нужно вашей модели при каждой точности и какие узлы вмещают её на одной карте, — ещё до того, как вы что-то заплатите.

Войти

Консоль, инвойсы и внеполосный доступ.

Ещё нет аккаунта?

Отдельной регистрации нет. Ваш аккаунт создаётся, когда вы оформляете первый заказ — email и пароль вы указываете на шаге оплаты, и консоль открыта уже к моменту готовности машины.

Настроить сервер

Language