Квантизация LLM: запускаем модель на сервере за $20/мес
GPT-4 через API стоит денег. Для высоконагруженных продуктов это быстро становится проблемой. Альтернатива — развернуть open-source модель у себя. Но 70B параметров требуют 140 GB VRAM в fp16. Квантизация решает эту проблему.
// Что такое квантизация
Модель — это миллиарды чисел с плавающей точкой. В оригинале — 16-битные (fp16) или 32-битные (fp32). Квантизация снижает точность до 8-бит, 4-бит или даже 2-бит. 4-битная квантизация сжимает модель в 4 раза при потере качества в 2-5% — на большинстве задач разница незаметна.
// Форматы: GGUF, AWQ, GPTQ
GGUF — формат для llama.cpp, работает на CPU (медленнее, но без GPU). AWQ и GPTQ — для GPU-инференса с библиотеками vLLM или Transformers. Для прода предпочитаем vLLM + AWQ: хорошая скорость, батчинг запросов, OpenAI-совместимый API.
Llama 3.1 8B в 4-bit AWQ весит 4.5 GB и запускается на видеокарте за $200. Для задач классификации, суммаризации и несложного чата — вполне достаточно.
// Когда это имеет смысл
Если у вас тысячи запросов в день к GPT-4 — считайте стоимость. При $0.01 за 1K токенов и среднем запросе в 2K токенов — это $20 за 1000 запросов. Self-hosted модель на арендованном GPU A100 ($2-3/час) окупается при нагрузке от ~5000 запросов в сутки. Для нишевых задач — fine-tuning маленькой модели часто лучше большого zero-shot.