Найти в Дзене
LLM. GPT. AI.

Настройка Ububntu 24 для работы с GPU NVIDIA

Уже написал статьи о запуске LM-Studio и vLLM в docker контейнере, но тему настройки основной системы под работу с GPU пока не затрагивал. Пора это исправить! Сразу отмечу, что нет универсального рецепта для настройки системы, но вариант, который будет иметь актуальность на 28.04.2025 опишу. В случае, если что-то пойдет не так, можно воспользоваться поиском и найти варианты решений для актуальных условий. Сколько времени занимает установка всего нужного для запуска LLM модели на GPU в контейнере? Двадцать три с половиной минуты от первого старта сервера с чистой Ubuntu 24.04 до получения первого запроса от пользователя! Весь процесс на видео: Ниже будет тестовая инструкция, в которой затрону часть сценариев, которые не попали на видео. Перед началом установки убедитесь, что система обновлена: sudo apt update && sudo apt upgrade -y Добавление репозитория драйверов NVIDIA: sudo apt install -y software-properties-common sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt updat
Оглавление

Уже написал статьи о запуске LM-Studio и vLLM в docker контейнере, но тему настройки основной системы под работу с GPU пока не затрагивал. Пора это исправить!

Сразу отмечу, что нет универсального рецепта для настройки системы, но вариант, который будет иметь актуальность на 28.04.2025 опишу. В случае, если что-то пойдет не так, можно воспользоваться поиском и найти варианты решений для актуальных условий.

Сколько времени занимает установка всего нужного для запуска LLM модели на GPU в контейнере?

Двадцать три с половиной минуты от первого старта сервера с чистой Ubuntu 24.04 до получения первого запроса от пользователя!

Весь процесс на видео:

Ниже будет тестовая инструкция, в которой затрону часть сценариев, которые не попали на видео.

Шаг 1: Обновление системы

Перед началом установки убедитесь, что система обновлена:

sudo apt update && sudo apt upgrade -y

Шаг 2: Установка драйверов NVIDIA

Добавление репозитория драйверов NVIDIA:

sudo apt install -y software-properties-common
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update

Установка драйверов NVIDIA:

sudo apt install ubuntu-drivers-common
ubuntu-drivers devices
sudo apt install -y nvidia-driver-<version>

Например, nvidia-driver-570

Перезагрузка системы:

sudo reboot

Проверка установки драйверов:

nvidia-smi

Должна появиться информация о вашей видеокарте, если это не произошло, возможно необходимо пересобрать модули ядра:

sudo apt install --reinstall linux-headers-$(uname -r)
sudo apt install --reinstall nvidia-dkms-570
sudo update-initramfs -u
sudo reboot

Шаг 3: Установка Docker

Установка Docker:

sudo apt install -y docker.io

Добавление текущего пользователя в группу docker:

sudo usermod -aG docker $USER

Перезагрузка системы:

sudo reboot

Проверка работы Docker:

docker --version

Шаг 4: Установка NVIDIA Container Toolkit

Добавление репозитория NVIDIA Container Toolkit:

curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
&& curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

Обновление пакетов и установка NVIDIA Container Toolkit:

sudo apt update
sudo apt install -y nvidia-container-toolkit

Настройка Docker для работы с NVIDIA Container Toolkit:

sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker

Проверка установки NVIDIA Container Toolkit:

docker run --rm --gpus all nvidia/cuda:12.2.0-runtime-ubuntu22.04 nvidia-smi

Должна появиться информация о вашей видеокарте.

Шаг 5: Запуск Docker-контейнера с использованием GPU

VLLM:

docker run --runtime nvidia --gpus all \
-v ~/.cache/huggingface:/root/.cache/huggingface \
-p 8000:8000 \
--ipc=host \
vllm/vllm-openai:latest \
--model Chewye/Vikhr-YandexGPT-5-Lite-8B-it-awq

Вот так достаточно просто и быстро можно настроить систему с GPU для работы с контейнерами docker. Это может быть очень полезно при аренде облака под LLM у таких провайдеров, как immers.cloud, gpudc или selectel, поскольку дает возможность развернуть объемные LLM на арендуемых мощностях.