Главная/Блог/Гайд/Как установить SGLang локально: быстрый…
Гайд3 мин чтения · 3 июля 2026 г.

Как установить SGLang локально: быстрый инференс LLM

Пошаговый гайд по установке SGLang — высокопроизводительного рантайма для LLM. Настройка окружения, запуск моделей и оптимизация под российское железо.

Как установить SGLang локально: быстрый инференс LLM

SGLang (Serving Graph Language) — это высокопроизводительный фреймворк для развертывания больших языковых моделей (LLM) и мультимодальных моделей. В отличие от стандартных решений, он использует передовые методы оптимизации, такие как спекулятивный декодинг и дисагрегация префилла/декода. Этот инструмент идеален для практиков, которым нужна максимальная скорость генерации токенов (throughput) и минимальная задержка (latency) как на одиночных GPU, так и в распределенных кластерах. Ниже приведена инструкция по локальной установке и первому запуску.

01Требования

Для стабильной работы SGLang необходимо подготовить соответствующее программное и аппаратное обеспечение. Проект активно развивается и требует свежих версий зависимостей.

  • Операционная система: Linux (рекомендуется Ubuntu 20.04/22.04) или Windows (через WSL2). macOS поддерживается ограниченно.
  • Python: Поддерживаются актуальные версии Python. Версии 3.12+ могут требовать дополнительных шагов сборки.
  • GPU: NVIDIA GPU с поддержкой актуальных версий CUDA. Также поддерживаются AMD (ROCm), Intel Xeon и Google TPU, но NVIDIA остается наиболее стабильной платформой для большинства пользователей.
  • VRAM: Зависит от модели. Требуется достаточный объем видеопамяти для загрузки весов модели и активации, с возможностью масштабирования на несколько GPU для больших архитектур.
⚠️
Важно. SGLang строго зависит от версии CUDA. Убедитесь, что драйверы NVIDIA установлены корректно и версия CUDA на системе совпадает с той, для которой собирается PyTorch. Несоответствие версий — самая частая причина ошибок при импорте библиотеки.

02Установка

Процесс установки оптимизирован для быстрой сборки из исходного кода или установки через PyPI. Рекомендуется использовать виртуальное окружение для изоляции зависимостей.

Шаг 1. Создание виртуального окружения

Создайте и активируйте окружение с Python (выберите версию, совместимую с вашими зависимостями):

terminalbash
python3 -m venv sglang_env
source sglang_env/bin/activate

Шаг 2. Установка PyTorch

Установите PyTorch с поддержкой CUDA. Команда ниже актуальна для актуальной версии CUDA. Если у вас другая версия, проверьте актуальную команду на сайте PyTorch.

terminalbash
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121

Шаг 3. Установка SGLang

Установите сам пакет SGLang. Для получения последней версии с поддержкой новых моделей (например, DeepSeek-V3/V4 или Llama 3.1) лучше всего использовать установку из репозитория или pip с флагом обновления:

terminalbash
pip install -U sglang[all]

Флаг [all] устанавливает дополнительные зависимости, необходимые для работы с различными типами моделей (включая диффузионные модели и специфические парсеры JSON).

💡
Совет. Если вы находитесь в РФ и испытываете проблемы с доступом к PyPI, используйте зеркало (например, pip install --index-url https://pypi.org/simple/ ... или настройте прокси). Также можно клонировать репозиторий и устанавливать через pip install . после локальной сборки.

03Первый запуск

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

Шаг 1. Запуск сервера инференса

Запустите демон SGLang, указав путь к модели. SGLang автоматически скачает модель с Hugging Face, если она не найдена локально. Для примера возьмем популярную модель meta-llama/Llama-3-8b-instruct.

terminalbash
python -m sglang.launch_server --model-path meta-llama/Llama-3-8b-instruct --host 0.0.0.0 --port 30000

Параметры:

  • --model-path: Имя модели в Hugging Face или локальный путь.
  • --host 0.0.0.0: Позволяет подключаться к серверу с других устройств в сети.
  • --port 30000: Порт, на котором будет работать API (по умолчанию 30000).

Шаг 2. Отправка запроса

Откройте новый терминал, активируйте то же окружение и отправьте тестовый запрос через API, совместимый с OpenAI:

terminalpython
import requests

url = "http://localhost:30000/v1/chat/completions"
headers = {"Content-Type": "application/json"}
data = {
    "model": "meta-llama/Llama-3-8b-instruct",
    "messages": [
        {"role": "user", "content": "Напиши короткое стихотворение про искусственный интеллект"}
    ],
    "max_tokens": 128
}

response = requests.post(url, headers=headers, json=data)
print(response.json()['choices'][0]['message']['content'])

Если вы видите ответ от модели, поздравляем! SGLang успешно запущен. Благодаря оптимизациям, повторные запросы с похожими префиксами будут обрабатываться значительно быстрее.

04Частые проблемы

  1. Ошибка Out of Memory (OOM): Если модель не помещается в VRAM, SGLang может попытаться использовать CPU-оффлоадинг, что критически замедлит работу. Решения: используйте квантованные модели (AWQ, GPTQ, INT4), уменьшите размер контекста (--context-size) или запустите модель на нескольких GPU с флагом --tp-size (tensor parallelism).
  2. Проблемы с загрузкой моделей из Hugging Face: В условиях санкций или плохой связи загрузка весов может зависать. Решение: Скачайте модель вручную через

    Источник: SGLang (офиц. документация) ↗