Что такое Ollama?
Ollama — open-source инструмент для локального запуска больших языковых моделей. Он автоматически управляет загрузкой моделей, предоставляет REST API совместимый с OpenAI и работает на Linux, macOS и Windows.
Системные требования
| Конфигурация | RAM | Модели |
|---|---|---|
| Минимальная | 8 GB | Llama 3.2 3B, Phi-3 Mini |
| Рекомендуемая | 16 GB | Llama 3 8B, Mistral 7B |
| Оптимальная | 32+ GB | Llama 3 70B квантизованная |
Установка Ollama
# Установка одной командой
curl -fsSL https://ollama.com/install.sh | sh
# Проверка статуса
systemctl status ollama
systemctl enable ollamaЗагрузка и запуск модели
# Llama 3.2 (2 GB)
ollama run llama3.2
# Mistral 7B (4.1 GB)
ollama run mistral
# Phi-3 Mini для слабых VDS (1.7 GB)
ollama run phi3:mini
# Список моделей
ollama listНастройка API для внешнего доступа
# Редактируем службу
systemctl edit ollama
# Добавьте в [Service]:
[Service]
Environment="OLLAMA_HOST=0.0.0.0:11434"Тест через API
curl http://localhost:11434/api/generate \
-d '{"model":"llama3.2","prompt":"Привет!","stream":false}'Частые ошибки при установке
«model requires more system memory than is available»
Error: model requires more system memory (5.2 GiB) than is available (3.8 GiB)Ollama оценивает объём памяти, нужный для весов модели и контекста, и отказывается запускать модель заранее, а не падает посреди генерации. Решение — взять модель с более лёгкой квантизацией (например, вариант q4_K_M вместо q8_0) или модель с меньшим числом параметров.
Порт 11434 недоступен снаружи после смены OLLAMA_HOST
curl: (7) Failed to connect to server.example.com port 11434: Connection refusedЕсли после systemctl edit ollama служба не перечитала конфигурацию, переменная окружения не применится. Обязательно выполните systemctl daemon-reload и systemctl restart ollama, а также проверьте, что firewall (ufw, iptables) пропускает нужный порт.
«no such model» сразу после git pull образа
Error: pull model manifest: file does not existНазвание модели указано с опечаткой либо тег версии не существует в библиотеке Ollama. Сверьтесь со списком доступных тегов на странице модели и точно скопируйте имя вместе с тегом квантизации.
«could not connect to ollama app, is it running?»
Error: could not connect to ollama app, is it running?CLI обращается к службе через локальный сокет и не запускает её сам. Ошибка типична после перезагрузки сервера, если служба не была включена в автозапуск: проверьте состояние командой systemctl status ollama и, если она неактивна, выполните systemctl enable --now ollama.
Сравнение способов запуска локальных LLM
Выбор инструмента зависит от того, что важнее: скорость старта, полная совместимость с OpenAI API или контроль над сборкой под конкретное железо.
| Инструмент | Порог входа | OpenAI-совместимый API | Мультимодальность |
|---|---|---|---|
| Ollama | Низкий | Частично | Есть у части моделей |
| LocalAI | Средний | Полная | Текст, изображения, речь |
| llama.cpp напрямую | Высокий | Нет | Зависит от сборки |
| vLLM | Высокий | Полная | Нет |
Когда Ollama не подходит
Ollama сознательно жертвует частью гибкости ради простоты, и в ряде сценариев эта простота начинает мешать.
- Нужна максимальная пропускная способность при множестве одновременных пользователей на GPU — для этого специализированные серверы инференса вроде vLLM справляются лучше за счёт батчинга запросов
- Требуется тонкая настройка параметров квантизации и сборки под конкретное железо — тогда работают напрямую с llama.cpp
- Задача связана с генерацией изображений или синтезом речи — Ollama работает только с текстовыми и частично мультимодальными LLM
- VDS без запаса RAM даже под самую лёгкую модель — тогда разумнее использовать внешний API вместо локального инференса
- Нужен полный контроль над форматом и метаданными файла модели — Ollama скрывает эти детали за своим форматом Modelfile
Проверка результата
После установки стоит убедиться не только в том, что служба запущена, но и в том, что она реально отвечает на запросы.
- Убедитесь, что служба запущена:
systemctl status ollamaдолжен показыватьactive (running) - Проверьте список загруженных моделей:
ollama list - Отправьте тестовый запрос через API с локальной машины и, если открывали порт наружу, — с внешнего хоста
- Замерьте время ответа на короткий промпт, чтобы понять реальную скорость на этом VDS
- Проверьте, что служба переживает перезагрузку сервера: включена ли автозагрузка через
systemctl enable
По теме: удобный чат поверх Ollama — Open WebUI, расчёт видеопамяти под модель — сколько VRAM нужно модели, запуск без GPU через квантизацию — llama.cpp и GGUF.