Перейти к содержанию

Установка Ollama

В этой статье

Ollama - фреймворк для запуска и управления большими языковыми моделями (LLM) на локальных вычислительных ресурсах. Он обеспечивает загрузку и развертывание выбранной LLM и доступ к ней через API.

Внимание

Если вы планируете использовать GPU-ускорение работы с LLM, то в начале установите драйвера на видеокарту NVIDIA и CUDA.

Системные требования:

Требования Спецификация
Операционная система Linux: Ubuntu 22.04 или выше
Оперативная память 16 ГБ для запуска моделей размером 7B
Объем диска 12 ГБ для установки Ollama и базовых моделей. Дополнительное пространство требуется для хранения данных моделей в зависимости от используемых моделей
Процессор Рекомендуется использовать современный ЦП с не менее 4 ядрами. Для запуска моделей размером 13B рекомендуется ЦП с не менее 8 ядрами
Графический процессор(опционально) GPU не требуется для запуска Ollama, но может улучшить производительность, особенно при работе с большими моделями. Если у вас есть GPU, вы можете использовать его для ускорения обучения пользовательских моделей.

Примечание

Системные требования могу отличаться в зависимости от конкретных языковых моделей (LLMs) и задач, которые вы планируете выполнять.

Установка Ollama под Linux

  1. Скачиваем и устанавливаем Ollama:

    curl -L https://ollama.com/download/ollama-linux-amd64 -o /usr/bin/ollama
    chmod +x /usr/bin/ollama
    
  2. Создаем группу:

    sudo useradd -r -s /bin/false -m -d /usr/share/ollama ollama
    
  3. Создаем сервис ollama:

    tee /usr/lib/systemd/system/ollama.service > /dev/null <<EOF
    [Unit]
    Description=Ollama Service
    After=network-online.target
    
    [Service]
    ExecStart=/usr/bin/ollama serve
    User=ollama
    Group=ollama
    Restart=always
    RestartSec=3
    Environment="OLLAMA_HOST=0.0.0.0" 
    Environment="OLLAMA_ORIGINS=*"
    
    [Install]
    WantedBy=default.target
    EOF
    

    Для графических карт Nvidia можете добавить Environment="OLLAMA_FLASH_ATTENTION=1" для улучшения скорости генерации токенов.

  4. Включаем сервис и запускаем его:

    sudo systemctl daemon-reload
    sudo systemctl enable ollama
    sudo systemctl start ollama
    

Ollama будет доступна по адресу http://127.0.0.1:11434 или http://<IP_адрес_сервера>:11434.

Обновление Ollama под Linux

Для обновления Ollama вам нужно заново скачать и установить ее бинарную сборку:

sudo curl -L https://ollama.com/download/ollama-linux-amd64 -o /usr/bin/ollama
sudo chmod +x /usr/bin/ollama

Для упрощения последующих обновлений вы можете создать скрипт ollama_update.sh (запускать от root или через sudo):

#!/bin/bash
service ollama stop
sudo curl -L https://ollama.com/download/ollama-linux-amd64 -o /usr/bin/ollama
sudo chmod +x /usr/bin/ollama
service ollama start

Установка языковых моделей LLM

Список актуальных доступных языковых моделей вы можете посмотреть здесь.

Чтобы установить нужную модель, нажмите на ее название и на следующей странице выберите размер и тип модели. После этого скопируйте команду для установки из правого окна и запустите в окне командной строки/терминала:

ollama run llama3

Примечание

Рекомендуемая к установке модель отмечена тегом latest.

Внимание

Для обеспечения приемлемой производительности работы размер модели должен быть в два раза меньше объема ОЗУ сервера и ⅔ объема доступной видеопамяти на GPU. Например для модели размером в 8Гб необходимо 16Гб ОЗУ и 12 ГБ видеопамяти на GPU.

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

service ollama restart

Подробнее об Ollama вы можете прочитать в документации разработчиков.

Переменные окружения

Установите эти переменные в сервисе Ollama как Environment="VARIABLE=VALUE".

Переменная Описание
OLLAMA_DEBUG Выводить дополнительную информацию о отладке (например, OLLAMA_DEBUG=1)
OLLAMA_HOST IP-адрес сервера ollama (по умолчанию 127.0.0.1:11434)
OLLAMA_KEEP_ALIVE Время, в течение которого модели остаются загруженными в памяти (по умолчанию 5m)
OLLAMA_MAX_LOADED_MODELS Максимальное количество загруженных моделей (по умолчанию 1)
OLLAMA_MAX_QUEUE Длина очереди, определяет число запросов, которые могут находиться в ней и ждать своей очереди (512 по умолчанию)
OLLAMA_MODELS Путь к каталогу с моделями
OLLAMA_NUM_PARALLEL Максимальное количество параллельных запросов (по умолчанию 1)
OLLAMA_NOPRUNE Не обрезать BLOB моделей при запуске
OLLAMA_ORIGINS Список разрешенных Origins, через запятую
OLLAMA_TMPDIR Директория для временных файлов
OLLAMA_FLASH_ATTENTION При установке в 1 улучшает скорость генерации токенов на Mac с Apple Silicon и графических картах NVIDIA
OLLAMA_LLM_LIBRARY Задание определенной библиотеки LLM, чтобы обойти автоматическое обнаружение (динамические библиотеки LLM [rocm_v6 cpu cpu_avx cpu_avx2 cuda_v11 rocm_v5])
OLLAMA_MAX_VRAM Максимальный объем используемой VRAM (OLLAMA_MAX_VRAM=<bytes>)
OLLAMA_NOHISTORY При установке в 1 отключает историю во время выполнения Ollama