Назад к подготовке

Что такое quantization LLM и какие trade-off она дает

Интервьюер спрашивает про quantization: зачем она нужна, какие бывают варианты и чем можно заплатить за ускорение.

Ответить самому

Сначала сформулируйте ответ как на собеседовании, затем откройте разбор и оцените себя.

Загрузка

Короткий ответ

Quantization хранит веса или активации в меньшей точности, например int8/int4 вместо fp16/bf16. Это уменьшает память и может ускорить inference, но дает риск деградации качества и требует eval.

Полный разбор

Цель quantization — уменьшить memory footprint и bandwidth. Если веса хранятся в int8 или int4, модель занимает меньше GPU/CPU memory, можно поднять больший batch или модель на более дешевом железе. Иногда ускоряется и сам compute, если runtime хорошо поддерживает нужный формат.

Бывают post-training quantization и quantization-aware training. Можно квантизовать только weights или также activations/KV cache. Практические схемы отличаются granularities: per-tensor, per-channel, group-wise; часто используют calibration data, чтобы подобрать scales и снизить ошибку.

Главный trade-off — качество и стабильность на edge cases. Поэтому после quantization нужно прогонять доменный eval set, latency/memory benchmarks и проверять, не появились ли регрессии на длинных контекстах, редких языках или чувствительных задачах.

Теория

Quantization особенно важна для LLM serving, где bottleneck часто в памяти и bandwidth, а не только в FLOPs. Но формат должен поддерживаться железом и inference runtime.

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

  • Считать, что int4 всегда быстрее fp16.
  • Не отличать weight-only quantization от activation/KV quantization.
  • Не проверять качество на доменном eval set.

Как отвечать на собеседовании

  • Назови цель: memory, throughput, cost.
  • После методов сразу скажи про обязательный eval качества и latency.