Работает ли Ollama на видеокарте, показывает команда ollama ps: в колонке с процессором указано, какая доля модели загружена в память GPU, а какая осталась на CPU. Полностью загруженная модель отвечает заметно быстрее, поэтому проверка ускорения идёт первой, а выбор размера модели второй. Если видеопамяти хватает впритык, любое увеличение контекста способно сдвинуть часть слоёв обратно на процессор.
Проверка за три шага
Загрузите модель, спросите у Ollama, где она работает (ollama ps), и сверьте это с загрузкой видеопамяти в системной утилите. Если часть слоёв ушла на процессор, уменьшите модель, квантование или контекст.
- Запустите модель и отправьте ей длинный запрос, чтобы нагрузка продержалась несколько секунд.
- В соседнем окне выполните
ollama ps: колонка PROCESSOR покажет, на GPU, на CPU или на обоих работает модель, а рядом виден размер в памяти. - Откройте утилиту видеокарты (для NVIDIA это
nvidia-smi) и сверьте занятую видеопамять: при работе на GPU процесс Ollama там присутствует, и память заполнена. - Посмотрите журнал сервера: при старте он сообщает, какие устройства найдены и сколько слоёв выгружено на ускоритель.
Если в ps указан только процессор, а видеокарта в системе есть, причина обычно в драйвере, в доступе контейнера к устройству или в том, что видеокарта вне списка поддерживаемых. Установку и запуск контейнера мы разбираем в статье про запуск Ollama в компании, для Docker дополнительно ставится набор NVIDIA Container Toolkit и выдаётся доступ к GPU.
Полезная привычка — сохранять вывод ps и показания утилиты видеокарты в заметку к установке. Когда через месяц ответы замедлятся, у вас будет с чем сравнивать: изменилась загрузка, исчезла видеокарта из списка устройств или сервер обновился и стал размещать модель иначе. Диагностика без эталона превращается в гадание, а с эталоном занимает минуты.
Поддерживаемые модели видеокарт и условия работы для NVIDIA, AMD и других производителей перечислены в справке Ollama по GPU, она обновляется быстрее любой статьи.
Слои на процессоре
Модель состоит из слоёв, и Ollama старается разместить в видеопамяти как можно больше. Когда памяти хватает на всё, получается чистый GPU-режим. При нехватке часть слоёв остаётся в оперативной памяти и считается процессором, а шина между ними замедляет генерацию. Скорость падает ступенями: переход из полной загрузки в смешанный режим заметно замедляет ответы.
Память уходит и на другие нужды помимо весов. Контекст растёт вместе с длиной диалога и документа, и под него резервируется отдельный объём. Одна и та же модель в коротком чате помещается целиком, а с длинным документом выходит за границу. Ещё одна статья расхода — одновременные запросы и несколько загруженных моделей: каждая занимает свою долю, и лишние модели Ollama держит в памяти до истечения времени простоя (по умолчанию пять минут).
- Уменьшите размер модели или возьмите более сжатый вариант квантования.
- Сократите длину контекста, если рабочие запросы короткие.
- Ограничьте число одновременных запросов и загруженных моделей настройками сервера: за это отвечают переменные OLLAMA_NUM_PARALLEL и OLLAMA_MAX_LOADED_MODELS.
- Освободите видеопамять от посторонних программ: браузер и графические приложения тоже её занимают.
Условный пример для отдела из пяти человек: один сервер с одной видеокартой, модель среднего размера и привычка загружать в чат длинные регламенты. Утром, пока контекст короткий, всё летает, а ближе к обеду ответы замедляются. Причина обычно в сумме трёх факторов: растущий контекст, две загруженные модели и параллельные запросы коллег. Ограничив число одновременных запросов и выгрузив лишнюю модель, команда возвращает прежнюю скорость без покупки нового оборудования.
Что такое квантование и как оно сказывается на качестве, объясняет глоссарий, а как подбирать размер Qwen под свои задачи — отдельная статья про Qwen через Ollama.
Размер под нагрузку
Размер модели подбирают по вашим задачам, а рейтинги в интернете дают лишь стартовую точку. Соберите набор из десяти-пятнадцати реальных запросов команды: короткие вопросы, длинные документы, типовые инструкции. Прогоните его на каждом кандидате и сравните три вещи.
| Что измеряем | Как | На что смотрим |
|---|---|---|
| Размещение | ollama ps во время прогона | Вся модель на GPU или смесь с процессором |
| Скорость | Флаг --verbose у ollama run печатает скорость генерации | Комфортно ли читать ответ в темпе диалога |
| Качество | Ответы на ваш набор, оценка вручную | Хватает ли меньшей модели для ваших задач |
| Запас памяти | Видеопамять при самом длинном запросе | Остаётся ли зазор на рост контекста |
Часто выигрывает самая маленькая из моделей, которые справились с набором: она оставляет память под контекст и несколько одновременных пользователей. Крупную модель берут там, где мелкая стабильно ошибается на ваших примерах.
Какие задачи команды вы хотите ускорить на видеокарте?
Железо или модель
Если замеры показали нехватку памяти, есть два пути: подобрать модель поменьше или менять оборудование. Первое быстрее и дешевле по усилиям, второе оправдано, когда качество малой модели ниже требований. Выбор железа под локальную модель мы разбирали в статье про компьютер для нейросетей в компании, её задача другая: сценарии, аренда или покупка, расчёт под команду.
Здесь мы отвечаем на узкий вопрос: работает ли конкретная установка на видеокарте и достаточна ли модель такого размера. Какую машину покупать и как считать бюджет, решается выше по цепочке и требует знания ваших нагрузок.
Отдельный случай — несколько видеокарт в одном сервере. Ollama умеет распределять модель между ними, но обмен данными между картами добавляет задержку, и одна карта с достаточным объёмом памяти часто работает быстрее двух слабых. Поэтому перед расширением проверьте, упирается ли нагрузка в память или в вычисления: от ответа зависит, что покупать.
Разовая проверка устаревает. После смены драйвера, обновления Ollama или добавления новой модели повторите прогон тестового набора и сравните результаты с прежними. Записывайте скорость и размещение в таблицу: через месяц она покажет, когда ответы стали медленнее и почему.
Что дальше
Когда замеры сделаны, переходите к регламенту: кто обслуживает сервер, как обновляют драйвер и модель, кто отвечает за очередь запросов. Без владельца даже хороший сервер деградирует: драйвер обновили, видеопамять заняли чужими процессами, сотрудники жалуются на медленные ответы, причины остаются без внимания.
Начните с одного прогона: тестовый набор на текущей модели и рядом вывод ps. Доля запросов, которые уложились в комфортное время ответа, станет точкой отсчёта для любых решений о железе. Скорость по одному короткому приветствию оценивать бесполезно, на нём любая модель выглядит быстрой.
Когда сервер встраивается в процессы с внутренними данными, требования к безопасности и интеграциям мы разбираем в разделе про внедрение ИИ под задачи компании, там же привязываем железо к задачам.