toolkitbox

~/ / Статьи об ИИ / Локальные LLM на VPS / Сколько памяти нужно локальной LLM на VPS? Файл модели плюс KV-кэш

Сколько памяти нужно локальной LLM на VPS? Файл модели плюс KV-кэш

Прежде чем арендовать сервер для запуска локальной модели, нужно знать, сколько памяти она займёт. Ответ состоит из двух частей: сама модель и кэш, который растёт вместе с длиной диалога и числом одновременно обрабатываемых запросов. В этой статье собрано то, что говорят библиотека Ollama, FAQ Ollama и официальные файлы конфигурации моделей; для шести популярных моделей рассчитан кэш, а ниже можно подставить собственные значения.

Опубликовано: · 4 мин чтения · Данные о моделях сверены с официальными источниками 2026-10-26. Размеры и значения по умолчанию меняются, поэтому проверьте их, прежде чем выбирать тариф.

Память занимают две вещи

Первая — веса модели, которые занимают примерно столько же памяти, сколько файл для загрузки. Вторая — KV-кэш, в котором хранятся ключи и значения, уже вычисленные моделью для текста в её контексте. В FAQ Ollama сказано, что требуемый объём RAM масштабируется как OLLAMA_NUM_PARALLEL, умноженный на OLLAMA_CONTEXT_LENGTH.

Размер кэша можно вычислить по конфигурации модели: 2 × слои × KV-головы × размерность головы × байт на значение даёт число байт на один токен, а затем результат умножается на длину контекста и число параллельных запросов. В f16 одно значение занимает 2 байта. Для Qwen3 8B, у которой 36 слоёв, 8 KV-голов и размерность головы 128, один токен занимает 2 × 36 × 8 × 128 × 2 = 147,456 байт. При 4,096 токенов это 576 MiB, а при 32,768 токенов — 4,608 MiB. Эта формула — наш расчёт по значениям из конфигурации, а не величина, опубликованная Ollama.

Что говорят официальные источники о каждой модели

Размер загрузки и квантование взяты из библиотеки Ollama для каждого тега; все шесть тегов ниже показаны с квантованием Q4_K_M. Число слоёв, KV-голов и размерность головы взяты из config.json каждой модели на Hugging Face.

МодельРазмер загрузки (GB)СлоиKV-головыРазмерность головы
Qwen3 0.6B0.523288128
Qwen3 1.7B1.4288128
Qwen3 4B2.5368128
Qwen3 8B5.2368128
Qwen3 14B9.3408128
Mistral 7B (v0.3)4.4328128

В конфигурации Mistral 7B размерность головы не указана, поэтому она равна размеру скрытого слоя, делённому на число голов внимания: 4096 ÷ 32 = 128. Для тега Qwen3 4B в библиотеке Ollama указано окно контекста 256K. У релизов 2507 модели Qwen3 4B на Hugging Face те же слои, KV-головы и размерность головы, что и у исходной.

Что это значит для памяти

По приведённой выше формуле в этой таблице показан кэш каждой модели при двух длинах контекста, а также ориентировочный итог при 4,096 токенов. Итог — это веса, кэш в f16 для одного запроса за раз и резерв в 1 GiB на операционную систему и другие службы. В последнем столбце указан наименьший распространённый объём памяти, в который это помещается.

МодельKV-кэш при 4,096 токенов (MiB)KV-кэш при 32,768 токенов (MiB)Ориентировочный итог при 4,096 токенов (GiB)Наименьший распространённый объём памяти (GiB)
Qwen3 0.6B44835841.922
Qwen3 1.7B44835842.744
Qwen3 4B57646083.894
Qwen3 8B57646086.418
Qwen3 14B640512010.2912
Mistral 7B (v0.3)51240965.608

Это оценки, а не измерения. Модель, которая при 4,096 токенов помещается лишь с небольшим запасом, не поместится, если увеличить длину контекста: при 32,768 токенов один только кэш Qwen3 8B занимает 4,608 MiB.

Более длинный контекст, больше параллельных запросов

  • В FAQ Ollama сказано, что требуемый объём RAM масштабируется как OLLAMA_NUM_PARALLEL, умноженный на OLLAMA_CONTEXT_LENGTH, и приведён пример: контекст 2K при 4 параллельных запросах превращается в контекст 8K и требует дополнительной памяти.
  • Для OLLAMA_NUM_PARALLEL в документации указано значение по умолчанию 1, так что сервер для одного пользователя начинает с одного запроса за раз.
  • В FAQ также сказано, что квантование кэша ключей и значений в q8_0 использует примерно половину памяти по сравнению с f16, а q4_0 — примерно четверть. Тогда по соотношению из FAQ кэш сокращается примерно до 288 MiB для Qwen3 8B при 4,096 токенов с q8_0.
  • На странице о длине контекста в документации Ollama сказано, что большая длина контекста увеличивает память, нужную модели, и что по столбцу PROCESSOR в выводе ollama ps можно проверить, выгружена ли модель на CPU.

Попробуйте свои значения

Калькулятор ниже использует ту же формулу и те же данные. Выберите модель или введите свою, задайте длину контекста, число параллельных запросов, тип кэша и резерв, а затем укажите объём памяти рассматриваемого тарифа, чтобы увидеть, помещается ли оценка.

Попробовать: Local LLM Memory Estimator

Модель

Тег Ollama qwen3:8b, квантование Q4_K_M, размер загрузки 5.2 GB.

Оценка

Веса модели
4.84 GiB
Кэш KV
0.56 GiB
Запас
1.00 GiB
Итого
6.41 GiB (6.88 GB)
Наименьший распространённый объём памяти, в который помещается
8 GiB

Это оценка. Она не включает вычислительные буферы рантайма и предполагает, что у каждого слоя одинаковая форма KV. Измерьте реальный запуск, прежде чем выбирать тариф.

Данные о модели проверены 2026-10-26.

Источники: Ollama library · Конфигурация модели (config.json) · Ollama FAQ

Всё выполняется в вашем браузере. Ничего не загружается.

Прежде чем выбирать тариф

  • В оценке не учтена собственная рабочая память среды выполнения под вычислительные буферы. Наше предложение: запустите модель на тестовом сервере, понаблюдайте за использованием памяти при той длине контекста, которую собираетесь применять, и оставьте запас.
  • GB — это 1,000,000,000 байт, а GiB — 1,073,741,824 байт. «GB» у провайдера может означать любое из двух, поэтому перед сравнением выясните, как считает ваш провайдер.
  • Память — не единственное ограничение. Файлы моделей из таблицы тоже занимают место на диске, а в проверенных нами документах нет данных о скорости работы только на CPU.
  • Если модель помещается впритык, выберите следующий по размеру тариф или модель поменьше, а не уменьшайте длину контекста до тех пор, пока она не запустится.

Источники

Читайте дальше