{}const=>[]async()letfn</>var
ИИРазработка

Какую модель ставить в Ollama по памяти: RAM, VRAM и контекст

Подбираем размер локальной модели для Ollama по оперативной и видеопамяти, учитываем квантизацию, KV-кэш, контекст, CPU offload и проверяем ollama ps.

К

Кодик

Автор

7 мин чтения

Выбирая, какую модель ставить в Ollama по памяти, оставляйте системе запас и начинайте с Q4: до 4B для 8 ГБ RAM, 7B или 12B для 16 ГБ, 14B или 27B для 32 ГБ. Это стартовые диапазоны, а не гарантия: MoE-архитектура, длина контекста и формат весов меняют расход памяти.

Ollama перед запуском измеряет требуемую память и распределяет слои между GPU и CPU. Видеопамять влияет на скорость, но модель может частично работать из RAM. На Apple Silicon память объединена, поэтому одно число делят система, приложения и модель. На дискретной NVIDIA отдельно смотрят VRAM и системную RAM. Чем длиннее контекст и больше параллельных запросов, тем крупнее KV-кэш.

18 ГБ

1B-4B Q4, контекст 2K-4K, один запрос.

216 ГБ

7B-12B Q4 или экономичная MoE-модель с проверкой.

332 ГБ

14B-27B Q4, больше контекста после замера.

Диапазоны 8, 16 и 32 ГБ и подходящие размеры моделей в Q4
Порядок подбора: сначала считаете свободную память с запасом на систему, потом берёте Q4 нужного диапазона (до 4B на 8 ГБ, 7B или 12B на 16 ГБ, 14B или 27B на 32 ГБ) и только потом ставите точный тег вместо latest.

Какую модель ставить в Ollama по памяти: проверка командами

Не тяните тег latest, если на странице есть несколько размеров. Укажите точный вариант. После запуска выполните ollama ps: команда показывает активную модель, размер и распределение вычислений. Затем повторите реальную задачу, потому что пустой чат не проверяет длинный контекст.

# Сначала загружаем конкретный размер модели
ollama pull qwen3:4b

# Запускаем короткую задачу и не открываем огромный контекст заранее
ollama run qwen3:4b "Напиши три теста для функции сортировки"

# Смотрим, где размещена модель и сколько памяти занято
ollama ps

# Освобождаем память после измерения
ollama stop qwen3:4b
Ожидаемый результат
  • Модель отвечает без системного swap или ошибки памяти
  • ollama ps показывает ожидаемое размещение CPU или GPU

Если модель работает в простом чате, но падает в IDE, расширение могло запросить больший contextLength. Уменьшите окно в конфигурации клиента. Если система начинает активно использовать swap, формально модель запущена, но задержка может стать неприемлемой. Оценивайте время первого токена и скорость продолжения на своём типичном файле.

🔥 100 000+ учеников уже с нами

Устал читать теорию?
Пора кодить!

Кодик — приложение, где ты учишься программировать через практику. AI-наставник, интерактивные уроки, реальные проекты.

🤖 AI 24/7
🎓 Сертификаты
💰 Бесплатно
🚀 Начать учиться
Присоединились сегодня

Стартовая матрица памяти

ЭлементЧто означаетЧто делать
8 ГБ RAM1B-4B Q4Короткий чат, классификация, автодополнение
16 ГБ RAM7B-12B Q4Чат и код с умеренным контекстом
32 ГБ RAM14B-27B Q4Сложнее рассуждение и больше файлов
64 ГБ RAM30B+ Q4 после проверкиБольшие модели и длиннее контекст
16 ГБ VRAMПолный или частичный GPU offloadСкорость зависит от конкретного формата

Размер файла модели является нижней оценкой, а не полным бюджетом. Добавьте KV-кэш, буферы выполнения, приложение, редактор и операционную систему. Для gpt-oss-20b Ollama отдельно указывает возможность запуска примерно с 16 ГБ памяти благодаря MXFP4, но это свойство конкретной архитектуры и квантизации. Нельзя переносить его на любую модель с 20B параметров.

Что уменьшать при нехватке памяти: контекст, параллельность, размер
Что менять, если модель уводит систему в swap: сначала окно контекста и число параллельных запросов, затем размер модели, и только после этого сравнивать форматы весов и MoE-архитектуру.

Практика: замерьте, сколько памяти реально просит модель в Ollama

Проверьте не таблицу, а свою машину. Возьмите две соседние модели, например qwen3:4b и следующую по размеру, и прогоните на каждой один и тот же запрос. Успех: у вас записаны занятая память по ollama ps, размещение на CPU или GPU и время до первого токена для обеих моделей.

  1. Свободная память до запуска. Закройте браузер, IDE и контейнеры, посмотрите свободную RAM в диспетчере задач или мониторинге системы и запишите число. Это база, с которой вы будете сравнивать все замеры.
  2. Загрузка тега qwen3:4b. Выполните ollama pull qwen3:4b и не берите latest, даже если он есть на странице модели. В выводе видно размер скачанных весов: это нижняя граница бюджета, а не полный расход.
  3. ollama run с задачей. Запустите ollama run qwen3:4b "Напиши три теста для функции сортировки", а затем повторите запрос на своём типичном файле. Засеките, сколько идёт первый токен и как быстро продолжается ответ.
  4. Замер через ollama ps. Пока модель ещё загружена, во втором окне терминала выполните ollama ps. Запишите две вещи: сколько памяти занимает модель и где она считается, на CPU или на GPU.
  5. ollama stop и повтор. Освободите память командой ollama stop qwen3:4b и убедитесь, что ollama ps больше не показывает её в списке. Повторите те же четыре шага для модели следующего размера и сравните занятую память, скорость и наличие swap.

Теперь нарушьте условие специально. Поднимите contextLength в клиенте до 32K или скормите модели большой файл целиком: на 8 ГБ система начнёт активно использовать swap, время первого токена вырастет в разы, а в тяжёлом случае запуск закончится ошибкой памяти. Второй эксперимент: не останавливая первую модель, запустите вторую и посмотрите ollama ps, где будут висеть обе. Верните окно к 2K-4K, остановите лишнюю модель и убедитесь, что скорость вернулась к первому замеру.

Критерий готовности. Готово, когда вы называете по памяти, сколько занимает ваша модель под нагрузкой и на чём она считается. Объясните, почему размер файла весов меньше реального расхода: сверху ложатся KV-кэш, буферы выполнения, редактор и система. Подтверждение: записанные значения ollama ps и время первого токена для двух моделей на одном и том же запросе.

Дальше меняйте по одному параметру. Прогоните одну модель с окном 2K, 8K и 32K и запишите, как растёт занятая память: так видно вклад KV-кэша отдельно от весов. Затем сравните плотную модель и MoE близкого размера на своей задаче, а выбранный тег зафиксируйте в README проекта, чтобы после обновления библиотеки размер и поведение остались прежними.

Частые ошибки и почему они появляются

Таблица по RAM полезна только как старт. Ошибка начинается, когда её воспринимают как паспорт совместимости. Две модели одного размера могут требовать разную память. Ещё хуже, когда одновременно запущены несколько моделей, IDE, браузер и контейнеры, а весь сбой потом считают проблемой Ollama. Измеряйте чистый сценарий и добавляйте приложения по одному.

Смотреть только параметры

Учитывайте формат весов, контекст, архитектуру и параллельность.

Сразу ставить 32K контекст

Начните с минимального окна для задачи и увеличивайте после замера.

Не фиксировать тег

Точный тег делает размер и поведение воспроизводимыми после обновления библиотеки.

Самопроверка

Сколько оперативной памяти нужно для модели 7B?

Для 7B в квантизации Q4 ориентируйтесь на 16 ГБ RAM: это стартовый диапазон, а не паспорт совместимости. Реальный расход зависит от длины контекста, формата весов и числа параллельных запросов, поэтому после запуска сверьтесь с ollama ps.

Какую модель ставить в Ollama на 8 ГБ RAM?

На 8 ГБ RAM берите модели от 1B до 4B в Q4, контекст 2K-4K и один запрос за раз. Такой набор тянет короткий чат, классификацию и автодополнение, а системе и редактору остаётся запас памяти.

Что показывает команда ollama ps?

Команда ollama ps показывает активные модели, занятую ими память и то, где идут вычисления: на CPU или на GPU. Это главный способ проверить, действительно ли модель поместилась туда, куда вы рассчитывали.

Почему для старта советуют Q4?

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

Почему модель работает в чате, но падает в IDE?

Расширение в IDE отправляет больше контекста из открытых файлов и может само задавать увеличенный contextLength. Уменьшите окно в конфигурации клиента и повторите замер, потому что KV-кэш растёт вместе с длиной контекста.

Почему нельзя ориентироваться на размер файла модели?

Размер скачанных весов это нижняя оценка, а не полный бюджет памяти. Сверху добавляются KV-кэш, буферы выполнения, само приложение, редактор и операционная система, поэтому запас нужен всегда.

Что делать дальше

Выберите две соседние модели, выполните один и тот же запрос с одинаковым контекстом и запишите RAM, VRAM, скорость и качество. Для автоматизации таких измерений пригодится курс GenAI. Затем сравните сценарий без видеокарты и настройку локального чата в VS Code.

🎯Хватит откладывать

Понравилась статья?
Пора применять на практике!

В Кодик ты не просто читаешь — ты сразу пишешь код. Теория + практика = реальный скилл.

Мгновенная практика
🧠AI объяснит код
🏆Сертификат

Без регистрации • Без карты