Inference

GGUF

Формат файла для квантизованных моделей, используемый llama.cpp и совместимыми движками.

Что такое GGUF

GGUF (GPT-Generated Unified Format) — бинарный формат хранения весов LLM, разработанный для проекта llama.cpp. Пришёл на смену устаревшему GGML-формату в августе 2023 года.

Один GGUF-файл содержит всё необходимое для запуска модели: веса (с квантизацией или без), метаданные архитектуры, шаблоны промптов, токенизатор и специальные токены. Это делает деплой максимально простым — один файл вместо директории с несколькими бинарниками и конфигами.

Форматы квантизации

Формат Бит/вес Размер 7B Качество
F16 16 ~14 ГБ Эталонное
Q8_0 8 ~7.7 ГБ Почти F16
Q5_K_M ~5.5 ~4.8 ГБ Отличное
Q4_K_M ~4.5 ~4.1 ГБ Оптимум
Q3_K_M ~3.5 ~3.3 ГБ Приемлемое
Q2_K ~2.5 ~2.7 ГБ Заметные потери

Q4_K_M — де-факто стандарт для большинства задач: минимальные потери качества при вдвое меньшей VRAM по сравнению с F16.

Где скачать GGUF-модели

Крупнейший источник — HuggingFace, репозитории bartowski и TheBloke:

# Через huggingface-cli
pip install huggingface_hub
huggingface-cli download \
  bartowski/Llama-3.2-3B-Instruct-GGUF \
  Llama-3.2-3B-Instruct-Q4_K_M.gguf \
  --local-dir models/

Конвертация собственной модели

# Конвертация HF-модели в GGUF F16
python3 convert_hf_to_gguf.py ./my-model --outfile my-model-f16.gguf

# Квантизация в Q4_K_M
./quantize my-model-f16.gguf my-model-q4km.gguf Q4_K_M

Связанные термины

  • llama.cpp — основной движок для GGUF
  • квантизация — процесс, создающий GGUF-файлы
  • Ollama — использует GGUF внутри

Готовы запустить GPU-задачу?

Запустить GPU-сервер