Урок 11Новое

Квантизация

Сжатие моделей

Проблема: LLaMA-70B требует 140GB памяти. У твоего ноутбука 16GB. Как вообще можно запустить такую модель дома?

Решение: JPEG для нейросетей

Помнишь, как JPEG сжимает фотографии? Картинка на 10MB становится 1MB, и ты почти не замечаешь разницы. Квантизация делает то же самое для ИИ-моделей — она «сжимает» числа, из которых состоит модель, ускоряя инференс и делая деплой на обычном оборудовании возможным!

Компромисс: размер vs качество

Как и с JPEG, чем сильнее сжатие — тем больше потеря качества:

  • FP16: почти без потерь, рекомендуется по умолчанию
  • INT8: минимальные потери, отлично для большинства задач
  • INT4: заметные, но терпимые потери, хорошо для чат-ботов
  • INT2: существенные потери, только для экспериментов

Квантизацию часто сочетают с файн-тюнингом (через QLoRA), чтобы обучить модели, которые одновременно компактны и специализированы.

Представьте это как сжатие JPEG для чисел:

  • 1. Оригинал (FP32): каждое число занимает 32 бита. Это как хранить «3.14159265358979...»
  • 2. FP16 (половинная точность): 16 бит на число. Это как хранить «3.14159» — в 2 раза меньше!
  • 3. INT8 (8 бит): 8 бит на число. Это как хранить «3.14» — в 4 раза меньше!
  • 4. INT4 (4 бита): 4 бита на число. Это как хранить «3» — в 8 раз меньше!

Модель на 70B параметров в FP32 = 280GB. В INT4 = 35GB. Теперь влезает на игровую видеокарту!

Популярные методы квантизации

  • GPTQ: быстрый инференс, нужны данные для калибровки
  • AWQ: лучше качество, защищает важные веса
  • GGUF: работает на CPU, популярен для локального запуска
  • bitsandbytes: простой в использовании, динамическая квантизация

Интересный факт: LLaMA-7B в INT4 запускается на MacBook Air с 8GB RAM! Будет не быстро, но работает. Инструменты вроде llama.cpp и Ollama делают локальные LLM доступными каждому.

Попробуйте сами!

Ниже — интерактивная визуализация. Посмотри, как разные уровни квантизации влияют на размер модели и качество. Двигай ползунок, чтобы найти свой баланс!

Подробнее: методы квантизации

Простое округление vs умная квантизация

Самый простой метод — просто округлить каждое число до ближайшего значения в меньшей точности. Это быстро, но грубо. Продвинутые методы (GPTQ, AWQ) используют калибровочные данные: они прогоняют небольшой набор текстов через модель и подбирают округление так, чтобы минимизировать ошибку на выходе. Результат — почти такое же качество при значительной экономии памяти.

Практическое значение

Модель с 70 миллиардами параметров в полной точности (FP16) занимает ~140 ГБ — это несколько дорогих серверных GPU. Квантизированная до 4-бит (Q4), она уменьшается до ~35 ГБ и может работать на мощном потребительском компьютере. Это делает передовые AI-модели доступными без серверного оборудования.

Попробуй сам

Интерактивное демо этой техники

Сравнение техник
Демо режим
Предзаписанные ответы
ЗадачаНачинающийАнализ

Выбрать модель для чат-бота службы поддержки с ограниченным бюджетом

Без техники
Без техники
Промпт
Нам нужен чат-бот для поддержки. Используем GPT-4 (FP16, полная точность) для ответов на типовые вопросы: часы работы, адрес, статус заказа.
Ответ

Конфигурация: GPT-4 FP16 RAM: 32GB GPU Стоимость: ~$0.03/запрос Латентность: ~800ms Точность на типовых вопросах: 99%

10,000 запросов/день = 300/день=300/день = 9,000/месяц

Токены:35/55
Время:800ms
Качество:
С Квантизация
С техникой
Промпт
Задача: чат-бот поддержки для типовых вопросов (часы работы, адрес, статус заказа). Объём: 10,000 запросов/день. Бюджет: до $1,000/мес. Сравни варианты квантизации для Llama 3 8B: 1. FP16 (полная точность) 2. INT8 (8-бит) 3. INT4 (4-бит, GPTQ) Для каждого: RAM, стоимость/запрос, латентность, качество на типовых FAQ.
Ответ

| Вариант | RAM | Стоимость | Латентность | Качество FAQ | |---------|-----|-----------|-------------|-------------| | FP16 | 16GB | 0.005/req200ms98INT88GB0.005/req | 200ms | 98% | | INT8 | 8GB | 0.002/req | 120ms | 97% | | INT4 | 4GB | $0.001/req | 80ms | 95% |

Рекомендация: INT8. Для типовых FAQ потеря 1% точности (98→97%) незначительна. Экономия: 600600→300/мес. INT4 тоже подходит ($150/мес), но 95% может давать ошибки в адресах/номерах.

GPT-4 для FAQ — как Ferrari для поездки за хлебом.

👁️FP16 хранит каждый вес как 16-бит число. Для FAQ-бота это избыточная точность — как микроскоп для чтения книги
🧠INT8 сжимает веса до 8 бит → 2x меньше RAM, быстрее инференс. Потеря качества на простых задачах <1%
Чем проще задача, тем агрессивнее можно квантизировать. FAQ = простая задача → INT8 оптимален
Токены:75/130
Время:680ms
Качество:
Почему это работает

Квантизация — это обмен точности на скорость и стоимость. Для простых задач (FAQ) INT8 экономит 2-3x без заметной потери качества. Не все задачи требуют FP16.

1 / 2

Квиз по уроку

1 из 3

1.Что такое квантизация модели?

Практика

Создайте бесплатный аккаунт для решения челленджей

4 челленджей с AI-проверкой для этого урока

Связанные уроки:InferenceCost Optimization

Этот урок — часть структурированного курса по LLM.

Мой путь обучения