Команды Ollama: run, pull, ps, stop, create, переменные службы и REST API

Справочник по CLI Ollama на Linux-сервере: все команды и полезные флаги, что значат колонки ollama ps, Modelfile, переменные окружения через systemd override и HTTP-эквиваленты каждой команды.

27 октября 2026 г.·9 мин чтения·ollama, llm, cli, api

Справочник по утилите ollama на Linux-сервере: все команды, флаги, которые реально нужны, переменные окружения фоновой службы и вызовы REST API, делающие то же по HTTP. Проверено по исходникам и документации релиза v0.40.14.

Локальные модели упираются в память: на tanaka.host тариф можно расширить без переустановки, а пробовать удобно на сервере с оплатой по дням.

Если Ollama ещё не стоит — сначала Ollama на VPS без видеокарты. В примерах маленькая gemma3:1b, подставьте любое имя из каталога.

Все команды

Команда Что делает
ollama serve Запустить сервер на переднем плане (алиас ollama start)
ollama run MODEL [PROMPT] Чат с моделью или один ответ и выход
ollama pull MODEL Скачать модель или обновить до последней версии
ollama push MODEL Выложить свою модель на ollama.com
ollama list / ollama ls Модели на диске
ollama ps Модели, загруженные в память
ollama stop MODEL Выгрузить модель из памяти
ollama show MODEL Детали модели, параметры, шаблон, лицензия
ollama create NAME -f Modelfile Собрать свою модель из Modelfile
ollama cp SOURCE DESTINATION Скопировать модель под новым именем
ollama rm MODEL [MODEL...] Удалить модели с диска
ollama signin / ollama signout Привязать/отвязать сервер от аккаунта ollama.com (алиасы login, logout)
ollama launch Настроить Claude Code, Codex или OpenCode на работу с Ollama
ollama -v Версия клиента и сервера

У каждой команды есть --help. CLI — клиент: всё, кроме serve, ходит к серверу на 127.0.0.1:11434, поэтому служба ollama должна работать.

ollama run

Интерактивный чат; модель докачается, если её нет на диске:

ollama run gemma3:1b

Промпт аргументом — один ответ и возврат в shell, подходит для скриптов и cron:

ollama run gemma3:1b "Summarize the benefits of NVMe storage in two sentences."

Текст из пайпа добавляется к промпту — удобно для логов и документов:

cat /var/log/nginx/error.log | tail -n 50 | ollama run gemma3:1b "Explain these errors briefly:"

Флаги, полезные на сервере:

Флаг Эффект
--verbose После ответа — тайминги: загрузка, скорость обработки промпта и генерации в токенах/с
--format json Ответ строго валидным JSON
--keepalive 30m Держать модель в памяти столько после последнего запроса вместо значения сервера
--nowordwrap Не переносить длинные строки, когда вывод идёт в файл
--think / --think=false Включить/выключить рассуждения у моделей с их поддержкой (high, medium, low — на некоторых)
--hidethinking Рассуждать, но печатать только финальный ответ
--insecure Разрешить pull из реестра без валидного TLS

--verbose — самый быстрый бенчмарк: строка eval rate показывает, сколько токенов в секунду генерирует модель на вашем CPU:

ollama run gemma3:1b --verbose "Write a haiku about servers."

JSON для скриптов:

ollama run gemma3:1b --format json "List three Linux distributions as a JSON array named distros."

Команды внутри чата

В приглашении >>>:

Команда Эффект
/? или /help Список команд
/set parameter num_ctx 8192 Параметр на эту сессию, здесь длина контекста
/set system "You are a terse assistant." Системное сообщение
/set verbose Тайминги после каждого ответа
/show info Детали модели
/clear Очистить контекст разговора
/save NAME Сохранить текущую сессию как новую модель
/load NAME Переключиться на другую модель
/bye Выход

Многострочный промпт — оберните текст в """.

ollama pull, list, cp и rm

ollama pull gemma3:1b

Повторный pull уже скачанной модели обновляет её, качаются только изменившиеся слои.

ollama list

Четыре колонки: NAME (модель и тег), ID (первые 12 символов digest), SIZE (место на диске), MODIFIED (когда скачана или создана).

Копия под другим именем — данные не дублируются, оба имени указывают на одни файлы:

ollama cp gemma3:1b my-assistant

Удаление; можно несколько имён, загруженная модель сначала останавливается:

ollama rm my-assistant gemma3:1b

ollama ps

Показывает модели, которые прямо сейчас в памяти; лежащая только на диске модель здесь не появится. На CPU-сервере вывод такой:

NAME         ID              SIZE      PROCESSOR    CONTEXT    RUNNER    UNTIL
gemma3:1b    97558784bdc9    1.9 GB    100% CPU     4096       ggml      4 minutes from now
Колонка Значение
NAME Загруженная модель и тег
ID Короткий digest, как в ollama list
SIZE Память загруженной модели вместе с кешем контекста — обычно больше размера на диске
PROCESSOR 100% CPU — целиком в RAM, 100% GPU — в видеопамяти, 48%/52% CPU/GPU — разделена
CONTEXT Длина контекста в токенах, с которой модель загружена
RUNNER Движок инференса, например ggml или llamacpp
UNTIL Когда модель выгрузится без новых запросов. Forever — никогда, Stopping... — выгружается

Старые версии печатают только NAME, ID, SIZE, PROCESSOR и UNTIL. Одну модель — по части имени: ollama ps gemma3. На VPS без GPU PROCESSOR всегда 100% CPU — это не ошибка.

ollama stop

Выгрузить модель сразу и освободить память; файлы остаются на диске:

ollama stop gemma3:1b

Следующий запрос загрузит её снова — на CPU это несколько секунд.

ollama show

Сводка: архитектура, число параметров, контекст, квантование, возможности, параметры по умолчанию.

ollama show gemma3:1b
Флаг Печатает
--modelfile Полный Modelfile — хорошая заготовка для своей модели
--parameters Параметры по умолчанию: temperature, top_k, стоп-токены
--template Шаблон промпта
--system Встроенное системное сообщение, если есть
--license Текст лицензии
-v, --verbose Подробные метаданные файла модели

ollama create и Modelfile

Modelfile описывает новую модель поверх существующей: фиксированный системный промпт, другие дефолты, длиннее контекст.

mkdir -p ~/models/support-bot && cd ~/models/support-bot
nano Modelfile
FROM gemma3:1b
PARAMETER temperature 0.3
PARAMETER num_ctx 8192
SYSTEM """
You answer customer questions about web hosting. Keep answers short and polite.
"""
ollama create support-bot -f Modelfile
ollama run support-bot
Инструкция Назначение
FROM Базовая модель или путь к GGUF/Safetensors
PARAMETER Параметр по умолчанию: temperature, num_ctx, top_p, stop
SYSTEM Системное сообщение для каждого чата
TEMPLATE Шаблон промпта, нужен только импортированным моделям
ADAPTER LoRA-адаптер поверх базовой модели
MESSAGE Пример диалога для затравки
LICENSE Текст лицензии, хранится с моделью

Новая модель делит слои с базовой и почти не занимает диск. ollama create -q квантует модель при импорте из Safetensors.

ollama push, signin и launch

Чтобы опубликовать модель на ollama.com: аккаунт, ollama signin на сервере и ссылка из вывода. Потом копия в своё пространство имён и push:

ollama cp support-bot YOUR_USERNAME/support-bot
ollama push YOUR_USERNAME/support-bot

ollama signout отвязывает сервер. ollama launch настраивает кодовых ассистентов (Claude Code, Codex, OpenCode, Droid) на ваши модели — ориентирован на десктоп, на сервере редко нужен.

ollama serve и настройки сервера

С официальным установщиком сервер уже крутится как служба systemd ollama, ollama serve руками не нужен. На переднем плане — только для отладки, остановив службу:

systemctl stop ollama
OLLAMA_DEBUG=1 ollama serve

Сервер настраивается переменными окружения. Важные на VPS:

Переменная По умолчанию Что контролирует
OLLAMA_HOST 127.0.0.1:11434 Адрес и порт API
OLLAMA_KEEP_ALIVE 5m Сколько простаивающая модель живёт в памяти. 0 — выгружать сразу, отрицательное (-1) — держать всегда
OLLAMA_MODELS /usr/share/ollama/.ollama/models Каталог моделей
OLLAMA_NUM_PARALLEL 1 Сколько запросов одна модель обрабатывает параллельно
OLLAMA_MAX_LOADED_MODELS 3 без GPU Сколько разных моделей могут быть в памяти одновременно
OLLAMA_MAX_QUEUE 512 Сколько запросов ждут в очереди до HTTP 503
OLLAMA_CONTEXT_LENGTH 4096 без GPU Контекст по умолчанию, если запрос его не задал
OLLAMA_ORIGINS локальные origin Дополнительные браузерные origin для API
OLLAMA_DEBUG выкл Подробные логи, 1

ollama serve --help — полный список для вашей версии.

Переменные через systemd override

Юнит, созданный установщиком, не правьте — обновление его перезапишет. Override:

systemctl edit ollama.service
[Service]
Environment="OLLAMA_KEEP_ALIVE=30m"
Environment="OLLAMA_MAX_LOADED_MODELS=1"
Environment="OLLAMA_NUM_PARALLEL=1"
systemctl daemon-reload
systemctl restart ollama
systemctl show ollama --property=Environment

Переносите модели через OLLAMA_MODELS — новый каталог должен принадлежать пользователю ollama: chown -R ollama:ollama /data/ollama.

REST API

Всё, что делает CLI, идёт через HTTP на порту 11434.

CLI API
ollama run (один промпт) POST /api/generate
ollama run (чат) POST /api/chat
ollama list GET /api/tags
ollama ps GET /api/ps
ollama show POST /api/show
ollama pull POST /api/pull
ollama cp POST /api/copy
ollama rm DELETE /api/delete
ollama stop POST /api/generate с "keep_alive": 0
ollama -v GET /api/version

Один ответ; "stream": false возвращает один JSON вместо потока чанков:

curl http://localhost:11434/api/generate -d '{
  "model": "gemma3:1b",
  "prompt": "Name three uses of a VPS.",
  "stream": false
}'

Чат с историей и системным сообщением:

curl http://localhost:11434/api/chat -d '{
  "model": "gemma3:1b",
  "messages": [
    { "role": "system", "content": "Answer in one sentence." },
    { "role": "user", "content": "What is KVM virtualization?" }
  ],
  "stream": false,
  "options": { "temperature": 0.2, "num_ctx": 4096 }
}'

Скачанные и загруженные модели:

curl http://localhost:11434/api/tags
curl http://localhost:11434/api/ps

/api/ps отдаёт то же, что ollama ps, в JSON: size — память в байтах, size_vram — часть в видеопамяти (на CPU всегда 0), context_length и expires_at — колонки CONTEXT и UNTIL.

Загрузить модель заранее или выгрузить — запрос без промпта:

curl http://localhost:11434/api/generate -d '{"model": "gemma3:1b", "keep_alive": -1}'
curl http://localhost:11434/api/generate -d '{"model": "gemma3:1b", "keep_alive": 0}'

Первый держит модель до перезапуска службы, второй выгружает сразу.

Память на маленьком VPS

На сервере без GPU модели живут в той же RAM, что система и остальные программы.

  • Сравнивайте SIZE со свободной памятью. ollama ps рядом с free -h. Модель должна влезать с запасом на систему.
  • Следите за контекстом. Больше CONTEXT — больше SIZE. Память под контекст растёт и с OLLAMA_NUM_PARALLEL, у каждого слота свой кеш. На 4–8 ГБ держите параллелизм 1.
  • Одна модель за раз. С дефолтными тремя загруженными запрос ко второй модели может вытолкнуть первую в swap или привести к OOM-kill. OLLAMA_MAX_LOADED_MODELS=1 заставит выгрузить старую перед загрузкой новой.
  • Выгружайте, когда закончили. ollama stop MODEL освобождает память сразу. Редко используемой модели — короткий OLLAMA_KEEP_ALIVE вроде 2m; постоянно используемой — длинный, чтобы не ждать загрузки на каждом запросе.
  • Логи при сбое загрузки. journalctl -u ollama -n 100 покажет ошибки памяти и время загрузки.

Ориентир: 1B–4B — 4–8 ГБ, 12B–14B — 16 ГБ. Таблица с размерами — в Ollama на CPU, если памяти впритык — swap.

Никогда не выставляйте порт 11434 в интернет. У API нет аутентификации: кто дотянется, тот гоняет ваши модели, качает новые до заполнения диска и удаляет ваши. Держите OLLAMA_HOST на 127.0.0.1, а наружу — SSH-туннель или reverse proxy с паролем, как в статье про установку. Если всё же переключили на 0.0.0.0 — закройте порт брандмауэром.

Официальная документация API — github.com/ollama/ollama/blob/main/docs/api.md.