Назад до блога

Як запустити GGUF-моделі локально: Ollama, llama.cpp і vLLM

7 вересня 2026 р.

Завантажили файл .gguf і думаєте, як його насправді запустити? Найкоротший шлях: ollama run hf.co/<repo>:Q4_K_M — Ollama підтягує GGUF прямо з Hugging Face і роздає його. GGUF — однофайлова модельна форматка, яку запровадила llama.cpp і якою тепер володіє кожен локальний LLM-інструмент, тож той самий файл працює в Ollama, llama.cpp, LM Studio, Jan і (з застереженнями) vLLM. Цей гайд покриває кожен ранер командами для копіювання, вибір правильного квантування під вашу VRAM і помилки завантаження, з якими ви справді зіштовхнетеся.

Що таке файл GGUF?

GGUF (GGML Universal File) — контейнерна форматка для квантованих мовних моделей. Один файл тримає ваги, токенізатор і метадані моделі — нічого більше завантажувати, без супу з конфігів. Ваги всередині квантовані: стиснуті з 16-бітних float до 4-бітних (або менших) цілих — тому модель 9B, якій у повній точності треба ~18 ГБ, вміщується у файл Q4 на ~5.5 ГБ і працює на ігровій GPU чи навіть процесорі.

У назві файлу GGUF важливі дві речі:

  1. Базова модельgemma-3-4b-it-GGUF — це файнтюн Gemma 3 на 4B, експортований у GGUF.
  2. Квант-тегQ4_K_M, Q8_0, IQ4_XS та товариші кажуть, наскільки жорстко стиснуті ваги. Про вибір — нижче.

Чи запускає Ollama GGUF-моделі?

Так — GGUF рідна форматка Ollama, і з 2024 року він підтягує її прямо з Hugging Face, не змушуючи вас торкатися файлів:

# Підтягніть квант GGUF прямо з Hugging Face і поговоріть із ним
ollama run hf.co/bartowski/gemma-2-9b-it-GGUF:Q4_K_M

# Квант-тег після двокрапки обирає файл всередині репозиторію
ollama run hf.co/ggml-org/gemma-3-4b-it-GGUF:Q8_0

Вже завантажили .gguf самі? Наведіть на нього Modelfile:

# Modelfile — одного рядка досить
FROM ./gemma-2-9b-it-Q4_K_M.gguf
ollama create gemma9b -f Modelfile
ollama run gemma9b

Ollama автоматично вирішує GPU offload і віддає сумісний з OpenAI API на порті 11434, тож усе, що говорить цією мовою, користується моделлю. Плата — за контроль: ви не обираєте, скільки шарів піде на GPU.

Як запустити GGUF-файл у llama.cpp?

llama.cpp — батьківщина GGUF: форматка існує заради нього, тож підтримка там найглибша і найсвіжіша. Бінарник llama-server дає і чат-UI, і сумісний з OpenAI ендпоінт:

# Завантажте прямо з Hugging Face (підбере GGUF під вашу машину)
llama-server -hf ggml-org/gemma-3-4b-it-GGUF --port 8080

# Або запустіть уже наявний файл з повним offload на GPU
llama-server -m ./gemma-2-9b-it-Q4_K_M.gguf -ngl 99 --port 8080

-ngl 99 заштовхує 99 шарів на GPU; поставте менше, ніж дозволяє VRAM, і решта лишиться на процесорі. Ця ручка часткового offload — суперздібність llama.cpp: модель 9B пристойно працює на карті 6 ГБ з 20 із 48 шарів на GPU, просто повільніше. Для разового запиту замість сервера замініть llama-server на llama-cli з тим самим -m.

LM Studio — той самий двигун за настільним GUI: покладіть .gguf у теку моделей (чи пошукайте в Hugging Face зсередини застосунку) і тисніть завантажити. Про сам вибір інструментів розповідає порівняння Ollama та LM Studio.

Яке квантування GGUF завантажувати?

Відповідь за замовчуванням: Q4_K_M. Це золота середина спільноти — в межах відсотка-двох від якості повної точності при приблизно чверті розміру. Драбина, від більшого до меншого:

  • Q8_0 — майже без втрат; беріть, якщо ваша VRAM ковтає 8.5 біт на вагу і не помічає.
  • Q6_K / Q5_K_M — крок униз за розміром, досі відмінно для моделей 30B+.
  • Q4_K_M — дефолт. Для моделей 7–14B тут якість на гігабайт сягає піку.
  • IQ4_XS / Q3_K_M — щоб утрамбувати велику модель у малу карту; втрата якості стає помітною.
  • Q2_K і нижче — крайній засіб; модель починає розсипатися в маячню серед речення.

Правило вміщення: розмір файлу в ГБ плюс ~1–2 ГБ накладних на контекст мають влізти у вашу VRAM. Файл 4.7 ГБ у Q4_K_M для моделі 9B спокійно живе на карті 8 ГБ. І радше менша модель у вищому кванті, ніж більша модель у жахливому кванті — Q8 4B зазвичай б’є Q2 9B.

GGUF проти Safetensors: яка форматка вам потрібна?

Safetensors — неквантований архів: ваги повної точності для тренування, файнтюну та інструментів на кшталт transformers і ComfyUI. GGUF — квантований, запуска́єма форматка для інференсу на вашому залізі. Файнтюнити GGUF не можна, а safetensors не запустити в Ollama чи llama.cpp без конвертації (для того в llama.cpp є скрипт convert_hf_to_gguf.py). Правило: тренування чи image-пайплайни → safetensors; локальний чат і сервінг → GGUF. Якщо ваш пошук починався як «gguf проти safetensors», цей поділ — ціла відповідь.

Який GGUF-ранер обрати?

РанерНайкраще дляВстановленняGPU offloadСумісний з OpenAI API
OllamaСервіс «налаштував і забув»Однорядківець curlАвтоматичноТак (:11434/v1)
llama.cppМаксимальний контроль, найновішеЗбірка чи пакетний менеджерРучна ручка -nglТак (llama-server)
LM StudioНастільний GUI, перегляд моделейЗавантаження застосункуАвтоматичноТак (локальний сервер)
vLLMПакетний сервінг для багатьох користувачівpip install vllmАвтоматичноТак (рідний)

Обирайте Ollama, якщо хочете сервіс, що стартує з системою і не лізе в очі — саме так я тримаю моделі на своєму homelab для всієї мережі. llama.cpp — коли потрібна фіча в день виходу (нові архітектури прибувають туди першими) чи контроль пам’яті на рівні шарів. LM Studio — заради GUI. vLLM — лише коли одна модель має обслуговувати багато одночасних користувачів: його підтримка GGUF працює, але сидить на других ролях після рідних форматок.

Чому моя GGUF-модель не завантажується?

Чотири помилки, що покривають більшість випадків:

  1. unknown model architecture — GGUF використовує архітектуру, новішу за ваш runtime (нові MoE та vision-моделі прибувають постійно). Оновіть Ollama чи перезберіть llama.cpp; іншого лікування немає.
  2. Брак пам’яті при завантаженні — квант завеликий для вашої VRAM разом із контекстом. Крок униз (Q4_K_MQ3_K_M), зменшіть -ngl, або стисніть контекст через -c 4096.
  3. Завантаження обірване/побите — GGUF падає з помилкою magic-числа чи метаданих. Перекачайте і звірте SHA256, показаний на сторінці Hugging Face.
  4. ollama run ./model.gguf відмовляє — очікувано: run в Ollama бере імена моделей, а не шляхи до файлів. Використайте шлях через Modelfile, показаний вище.

Останній кут, вартий знання: локальний GGUF-ендпоінт гарно пасує до агентних інструментів кодування — наведіть сумісний з OpenAI клієнт, і доповнення коштують лише електрики. А найкращі локальні LLM для кодування вже протестували, які моделі заслуговують на слот, коли сантехніка з цього гайду запрацювала.

— mrsaynothing

— mrsaynothing

Польові нотатки про ШІ, Linux і self-hosting.

Обговорити пост на dev.to dev.to ↗

Наступний гайд — на email

Один лист на пост. Полагодили — і далі.

self-hosted · без третіх сторін · відписка в один клік

що це таке?

Git sync fork з upstream: 3 безпечні способи

Читається добре? Таке я будую за гроші. найміть мене