Требуется более низкая задержка на H100/Blackwell без потери точности от агрессивной INT quantization.
→Используйте FP8 (E4M3) quantization через TensorRT-LLM; Hopper и Blackwell имеют нативные FP8 Tensor Cores.
Почему: FP8 лучше сохраняет динамический диапазон, чем INT8, и работает на полной аппаратной скорости на Hopper+, обеспечивая качество, близкое к FP16, при пропускной способности класса INT8.
Источник↗
Модель едва помещается в память GPU, и пропускная способность ограничена пропускной способностью памяти.
→Примените INT4 weight-only quantization (AWQ или GPTQ); сохраняйте activations в FP16/FP8.
Почему: Weight-only INT4 примерно вдвое уменьшает объем памяти по сравнению с INT8 и снижает нагрузку на пропускную способность; activation precision остается высокой, поэтому потеря точности мала.
Выбор между post-training quantization и quantization-aware training.
→Начните с PTQ (калибровка на репрезентативной выборке); переходите к QAT только в том случае, если потеря точности PTQ превышает бюджет.
Почему: PTQ быстра и не требует переобучения; QAT восстанавливает точность, но требует прогона обучения, поэтому резервируйте ее для моделей, критичных к точности.
Обслуживание длинных контекстов, где KV cache доминирует в памяти и ограничивает batch size.
→Включите FP8 или INT8 KV-cache quantization в TensorRT-LLM.
Почему: KV cache растет пропорционально длине последовательности × пакету; его квантизация освобождает память для больших batches и более длинных contexts с минимальным влиянием на качество.
Смешанные длины запросов вызывают простои GPU при статическом пакетировании.
→Используйте in-flight (непрерывное) batching в TensorRT-LLM, чтобы завершенные последовательности выгружались, а новые присоединялись в процессе выполнения.
Почему: Непрерывное batching обеспечивает насыщенность GPU и значительно увеличивает пропускную способность по сравнению со статическим batching для разнородных потоков запросов.
Источник↗
Большая модель-учитель соответствует требованиям к качеству, но не достигает целевых показателей по задержке и стоимости.
→Distill в меньшую модель-ученика, затем quantize ученика для inference.
Почему: Distillation передает возможности более дешевой архитектуре; в сочетании с quantization это значительно сокращает затраты/задержки.
Задержка одного потока слишком высока для интерактивного использования.
→Примените speculative decoding с небольшой черновой моделью, проверяемой целевой моделью.
Почему: Черновик предлагает несколько tokens, которые большая модель проверяет за один проход, сокращая общую задержку без изменения распределения выходных данных.
Quantizing всего до INT4 значительно снижает точность на нескольких чувствительных слоях.
→Используйте смешанную precision: сохраняйте чувствительные слои (например, final projection, attention) с более высокой precision и quantize остальные.
Почему: Чувствительность слоев различается; выборочная precision защищает точность там, где это важно, при этом сокращая основную часть весов.
Точность PTQ низка, несмотря на разумную схему quantization.
→Перекалибруйте с помощью выборки из распределения (сотни репрезентативных prompts), соответствующей производственному трафику.
Почему: Calibration устанавливает диапазоны activation; нерепрезентативная выборка приводит к плохим scales и предотвратимой потере точности.