Перейти к основному содержимому

Настройка

Compressa LLM распространяется в виде Docker-контейнеров, которые доступны в Github package storage и могут быть развернуты одной командой.

Требования

1. Linux-сервер с поддерживаемым Nvidia GPU

Текущая версия протестирована на следующих моделях:

  • Nvidia H100
  • Nvidia A100
  • Nvidia V100
  • Nvidia T4
  • Nvidia 4090
  • Nvidia 4080
  • Nvidia 4070 / 4070Ti
  • Nvidia 3080 / 3080Ti

Сервер должен иметь объем оперативной памяти не менее объема памяти GPU (рекомендуется 1.2 от объема памяти GPU).

2. Установленные драйверы CUDA

Необходимо установить последние совместимые драйвера.

примечание

Версию драйвера CUDA по умолчанию можно установить с помощью следующих команд:

sudo apt update
sudo apt install software-properties-common -y
sudo apt install ubuntu-drivers-common -y
sudo ubuntu-drivers autoinstall
sudo apt install nvidia-cuda-toolkit

3. Docker

Инструкция по установке для Ubuntu:
https://docs.docker.com/engine/install/ubuntu/

Необходимо установить версию, которая поддерживает Docker Compose V2.

4. Nvidia Container Toolkit

Инструкция по установке для Linux:
https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html

Развертывание

На первом этапе интеграции команда Compressa предоставляет вам токен доступа.

1. Аутентификация в Docker с вашим токеном:

export COMPRESSA_TOKEN=<TOKEN>
echo $COMPRESSA_TOKEN | docker login -u compressa --password-stdin

2. Файлы конфигурации:

Сначала клонируйте репозиторий с конфигурацией:

git clone -b deploy/llm git@github.com:compressa-ai/compressa-deploy.git
cd compressa-deploy

3. Скачайте последнюю версию Compressa:

docker compose pull

4. Выберите LLM

Система позволяет выбрать модель, которая будет запущена по умолчанию.
Конфигурационные файлы доступны:

  1. deploy-qwen14.json - Compressa-Qwen2.5-14B-Instruct
  2. deploy-qwq.json - QwQ-32B

Для изменения модели по умолчанию, можно поменять следующую строку в docker-compose.yaml:

  ...
- ./deploy-qwen14.json:/configs/deploy.json:ro

5. Установите переменные окружения и запустите сервис:

  • DOCKER_GPU_IDS - список идентификаторов GPU, которые будут доступны для Compressa

  • RESOURCES_PATH - путь к директории для хранения моделей, например ./data.
    Установите права на чтение и запись для этой директории, используя chmod -R 777 ./data

    примечание

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

    export DOCKER_GPU_IDS=0
    export RESOURCES_PATH=./data/compressa

6. Запустите сервис

docker compose up

Готово! Сервис доступен на порту 8080.

Тестирование

Аутентификация

Токены аутентификации для инференса содержатся в tokens/user.csv.
Для Management API - в tokens/admin.csv.

Токены могут быть изменены в данных файлах в любое время.

LLM Модель

curl -X 'POST' "$SERVER_NAME:8080/v1/chat/completions" \
-H 'accept: application/json' \
-H 'Authorization: Bearer TOKEN_1' \
-H 'Content-Type: application/json' -d '{
"model": "Compressa-LLM",
"messages": [{"role": "user", "content": "Напиши сказку на ночь про добрый искусственный интеллект!"}],
"stream": false
}'