Перейти к содержанию
modelium.
Начать с задачи
←
Абстрактная композиция: полупрозрачные грани и преломлённый свет в сиреневых тонах.

GGUF и квантизация: как выбрать Q4_K_M, Q5_K_M или Q8_0

GGUF — формат файла модели для совместимых локальных runtimes, а Q4_K_M, Q5_K_M и Q8_0 обозначают варианты квантизации весов. Начните с доступного Q4_K_M, затем сравните ответ и расход ресурсов с более крупным квантом той же модели, если он опубликован. Размер GGUF-файла не определяет минимальную RAM или VRAM: загрузку и качество нужно проверить на собственном устройстве.

Источники проверены 24 сентября 2026 года. Команды ниже составлены по документации llama.cpp на указанной ревизии. Modelium не загружал модель и не измерял качество, память или скорость на своём оборудовании.

Что означают GGUF и Q4_K_M?

GGUF — формат хранения весов модели и метаданных; для запуска через llama.cpp нужен совместимый GGUF-файл, а не просто любое имя модели на Hugging Face s1 s6. Квантизация уменьшает точность представления весов и размер файла по сравнению с исходным высокоточным вариантом, но может повлиять на качество; документация не обещает одинаковую скорость или ответы на всяком железе s2.

Q4_K_M, Q5_K_M и Q8_0 — конкретные типы в списке llama.cpp s3. Число в имени помогает понять вариант хранения весов, но не заменяет сведения о конкретной модели и файле. Для сравнения берите разные кванты одного и того же исходного варианта, а не Q4 одной модели и Q8 другой. Если у репозитория нет Q5_K_M, отсутствие нельзя исправить переименованием файла.

Как выбрать квант, если память ограничена?

  1. Начните с задачи. Для пробы коротких текстовых ответов годится небольшой instruct-вариант; для документов, русского языка или кода проверяйте качество именно на своих вопросах. Образец ниже — учебный текстовый запрос к Gemma 3 1B IT, не рекомендация для критичных решений. Карточка называет базовую модель google/gemma-3-1b-it и указывает условия Gemma; проверьте их отдельно до коммерческого применения s7.
  2. Проверьте файлы выбранного репозитория. На закреплённой ревизии ggml-org/gemma-3-1b-it-GGUF есть gemma-3-1b-it-Q4_K_M.gguf (806 058 240 байт), gemma-3-1b-it-Q8_0.gguf (1 069 306 368 байт) и f16, но нет Q5_K_M s8. Это размеры файлов на диске, не минимальная RAM/VRAM: при инференсе добавляются контекст/KV-кеш, служебные буферы и потребление runtime; фактическое размещение зависит от настроек s4.
  3. Выберите контрольную точку. Q4_K_M можно попробовать первым ради меньшего файла, Q8_0 — затем на той же модели и запросе, если хватает ресурсов. Q5_K_M рассматривайте только там, где он действительно опубликован или получен из высокоточного исходника; документация llama.cpp показывает квантизацию GGUF из BF16/F32 и предупреждает, что повторная квантизация готового низкобитного файла может существенно снизить качество s2. Не обещайте себе, что Q8_0 всегда «лучше»: сравнение качества и скорости требует одинаковых данных и условий.

На разных репозиториях Q4_K_M может означать и разные исходные веса, и разные настройки квантизации. Таблица в коде llama.cpp приводит примерные размеры и изменения perplexity для другой модели, а не измерение Gemma на вашем устройстве s3. Поэтому выбирайте не по универсальной таблице «память в ГБ», а по опубликованному списку файлов и собственной проверке.

Как запустить конкретный Q4_K_M?

Ниже путь для Linux/macOS с установленными Git и CMake; CPU-сборка документирована командой cmake -B build и cmake --build build --config Release. Для ускорения на GPU нужен соответствующий backend и его отдельная инструкция; обычная CPU-сборка не доказывает использование видеокарты s5. Репозиторий и ревизия фиксируют документацию, но команда -hf при запуске обращается к текущему состоянию HF и не закрепляет файлы автоматически s4 s6.

git clone https://github.com/ggml-org/llama.cpp.git
cd llama.cpp
git checkout 9710a32175b3b8f04636aaac4aa3cc28651b505d
cmake -B build
cmake --build build --config Release
./build/bin/llama-cli -hf ggml-org/gemma-3-1b-it-GGUF:Q4_K_M \
-p "Ответь одним предложением: что такое GGUF?" -n 80 -c 2048 --device none

В этой версии CLI -hf <repo>:<quant> выбирает квант из репозитория и скачивает его при необходимости; -p задаёт запрос, -n ограничивает длину генерации, -c задаёт контекст, а --device none запрещает offload на обнаруженные GPU s4. Ожидаемый результат: программа загрузит файл, выведет сведения о модели и ответ на запрос. Сверьте в логе фактическое имя GGUF, загрузку и осмысленность ответа; это критерий для читателя, не заявление об успешном прогоне Modelium.

Для повторения строго той же ревизии весов откройте список файлов на SHA f9c28bcd85737ffc5aef028638d3341d49869c27 s8, получите GGUF из URL вида https://huggingface.co/ggml-org/gemma-3-1b-it-GGUF/resolve/f9c28bcd85737ffc5aef028638d3341d49869c27/gemma-3-1b-it-Q4_K_M.gguf, а затем подайте сохранённый локальный файл через -m /путь/к/gemma-3-1b-it-Q4_K_M.gguf s4. Не заменяйте SHA словами main или latest, если вам нужна воспроизводимость.

Как сравнить Q4 и Q8 без ложных выводов?

Смените только суффикс выбора в той же команде на :Q8_0; снимок репозитория подтверждает такой файл s8. Дайте обоим вариантам один и тот же набор коротких вопросов с эталонами, запишите версии llama.cpp и HF-файлов, устройство, настройки контекста, загрузку CPU/GPU, ошибки и фактическое время ответа. Если один вариант не загрузился, это результат совместимости этой конфигурации, а не доказательство универсального предела памяти. Для выбора следующего шага откройте гайд по видеокарте и памяти, затем повторите тест на целевой задаче.

Если нужен полностью локальный повторный запрос, --offline заставляет CLI использовать кеш и не обращаться в сеть за моделью s4. Это не проверка отсутствия трафика всей операционной системы: сетевую изоляцию и зависимости вашего контура проверяйте отдельно. Если закончился диск или память, сначала проверьте список файлов и выбранный контекст; не уменьшайте качество готового Q4 повторной квантизацией. Если -hf не нашёл требуемый файл, сравните имена на карточке и попробуйте локальный -m для точно скачанного файла s2 s4 s8.

Следующий шаг: проверьте свою конфигурацию и размещение модели, а затем сравните ответ Q4_K_M и Q8_0 на одинаковых вопросах. Если нужен подробный runtime, откройте инструкцию llama.cpp.

Источники

  1. Hugging Face Hub — GGUF — Официальное объяснение формата и metadata; снимок s1-hf-gguf.html.. Получено 24.09.2026.
  2. llama.cpp — quantize README — revision 9710a32175b3b8f04636aaac4aa3cc28651b505d; Преобразование исходного GGUF, предупреждение об ухудшении качества и повторной квантизации; снимок s2-quantize.md.. Получено 24.09.2026.
  3. llama.cpp — определения типов quantize.cpp — revision 9710a32175b3b8f04636aaac4aa3cc28651b505d; Перечень Q4_K_M, Q5_K_M и Q8_0; таблица измерений в исходнике относится к другим моделям, не переносится на пример. Снимок s3-quant-types.cpp.. Получено 24.09.2026.
  4. llama.cpp — CLI options — revision 9710a32175b3b8f04636aaac4aa3cc28651b505d; Флаги -hf, -hff, -m, --offline, -n, -p, -c, -ngl и --device; снимок s4-cli.md.. Получено 24.09.2026.
  5. llama.cpp — build from source — revision 9710a32175b3b8f04636aaac4aa3cc28651b505d; CMake CPU-сборка и выбор GPU backend; снимок s5-build.md.. Получено 24.09.2026.
  6. llama.cpp — obtaining and quantizing models — revision 9710a32175b3b8f04636aaac4aa3cc28651b505d; GGUF и загрузка совместимого репозитория через -hf; снимок s6-models.md.. Получено 24.09.2026.
  7. ggml-org — Gemma 3 1B IT GGUF, карточка модели — revision f9c28bcd85737ffc5aef028638d3341d49869c27; Происхождение google/gemma-3-1b-it и карточка с условиями использования; снимок s7-gemma-card.md.. Получено 24.09.2026.
  8. Hugging Face API — файлы Gemma 3 1B IT GGUF на закреплённой ревизии — revision f9c28bcd85737ffc5aef028638d3341d49869c27; Список имён и точные размеры файлов на зафиксированной ревизии; снимок s8-gemma-tree.json.. Получено 24.09.2026.