Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Compute Cloud
  • Yandex Container Solution
    • Все руководства
    • Настройка синхронизации часов с помощью NTP
    • Автомасштабирование группы ВМ для обработки сообщений из очереди
    • Обновление группы ВМ под нагрузкой
    • Развертывание Remote Desktop Gateway
    • Начало работы с Packer
    • Передача логов с ВМ в Yandex Cloud Logging
    • Сборка образа ВМ с набором инфраструктурных инструментов с помощью Packer
    • Миграция в Yandex Cloud с помощью Хайстекс Акура
    • Защита от сбоев с помощью Хайстекс Акура
    • Резервное копирование ВМ с помощью Хайстекс Акура
    • Развертывание отказоустойчивой архитектуры с прерываемыми ВМ
    • Настройка отказоустойчивой архитектуры в Yandex Cloud
    • Создание триггера для бюджетов, который вызывает функцию для остановки ВМ
    • Создание триггеров, которые вызывают функции для остановки ВМ и отправки уведомлений в Telegram
    • Создание веб-приложения на Python с использованием фреймворка Flask
    • Создание SAP-программы в Yandex Cloud
    • Развертывание сервера Minecraft в Yandex Cloud
    • Автоматизация сборки образов с помощью Jenkins и Packer
    • Создание тестовых виртуальных машин через GitLab CI
    • Высокопроизводительные вычисления (HPC) на прерываемых ВМ
    • Настройка SFTP-сервера на Centos 7
    • Развертывание параллельной файловой системы GlusterFS в высокодоступном режиме
    • Развертывание параллельной файловой системы GlusterFS в высокопроизводительном режиме
    • Резервное копирование в Object Storage с помощью Bacula
    • Построение пайплайна CI/CD в GitLab с использованием serverless-продуктов
    • Реализация защищенной высокодоступной сетевой инфраструктуры с выделением DMZ на основе Check Point NGFW
    • Сегментация облачной инфраструктуры с помощью решения Check Point Next-Generation Firewall
    • Настройка защищенного туннеля GRE поверх IPsec
    • Создание бастионного хоста
    • Реализация отказоустойчивых сценариев для сетевых виртуальных машин
    • Создание туннеля между двумя подсетями при помощи OpenVPN Access Server
    • Создание внешней таблицы на базе таблицы из бакета Object Storage с помощью конфигурационного файла
    • Настройка сетевой связности между подсетями BareMetal и Virtual Private Cloud
    • Работа со снапшотами в Managed Service for Kubernetes
    • Запуск языковой модели DeepSeek-R1 в кластере GPU
    • Запуск библиотеки vLLM с языковой моделью Gemma 3 на ВМ с GPU
    • Доставка USB-устройств на виртуальную машину или сервер BareMetal
  • Управление доступом
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • История изменений
  • Обучающие курсы

В этой статье:

  • Подготовьте облако к работе
  • Необходимые платные ресурсы
  • Создайте кластер GPU из двух ВМ
  • Создайте кластер GPU
  • Добавьте две ВМ в кластер
  • Проверьте состояние кластера
  • Запустите языковую модель
  • Проверьте работу языковой модели
  • Как удалить созданные ресурсы
  1. Практические руководства
  2. Запуск языковой модели DeepSeek-R1 в кластере GPU

Запуск языковой модели DeepSeek-R1 в кластере GPU Yandex Compute Cloud

Статья создана
Yandex Cloud
Обновлена 28 апреля 2025 г.
  • Подготовьте облако к работе
    • Необходимые платные ресурсы
  • Создайте кластер GPU из двух ВМ
    • Создайте кластер GPU
    • Добавьте две ВМ в кластер
  • Проверьте состояние кластера
  • Запустите языковую модель
  • Проверьте работу языковой модели
  • Как удалить созданные ресурсы

Примечание

Кластеры GPU сейчас доступны только в зонах доступности ru-central1-a и ru-central1-d. Добавить ВМ в кластер GPU можно только из той же зоны доступности.

С помощью этой инструкции вы создадите кластер GPU из двух виртуальных машин и запустите в кластере языковую модель DeepSeek-R1.

Чтобы запустить языковую модель в кластере GPU:

  1. Подготовьте облако к работе.
  2. Создайте кластер GPU из двух ВМ.
  3. Проверьте состояние кластера.
  4. Запустите языковую модель.
  5. Проверьте работу языковой модели.

Если созданные ресурсы вам больше не нужны, удалите их.

Подготовьте облако к работеПодготовьте облако к работе

Зарегистрируйтесь в Yandex Cloud и создайте платежный аккаунт:

  1. Перейдите в консоль управления, затем войдите в Yandex Cloud или зарегистрируйтесь.
  2. На странице Yandex Cloud Billing убедитесь, что у вас подключен платежный аккаунт, и он находится в статусе ACTIVE или TRIAL_ACTIVE. Если платежного аккаунта нет, создайте его и привяжите к нему облако.

Если у вас есть активный платежный аккаунт, вы можете создать или выбрать каталог, в котором будет работать ваша инфраструктура, на странице облака.

Подробнее об облаках и каталогах.

Убедитесь, что в облаке достаточно квот на суммарное количество кластеров GPU, суммарное количество GPU на платформе AMD EPYC™ 9474F with Gen2, объем RAM, количество vCPU и объем SSD-дисков для создания ВМ. Для этого используйте сервис Yandex Cloud Quota Manager.

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

В стоимость поддержки инфраструктуры входят:

  • плата за постоянно работающие ВМ и диски (см. тарифы Yandex Compute Cloud).

Создайте кластер GPU из двух ВМСоздайте кластер GPU из двух ВМ

Создайте кластер GPUСоздайте кластер GPU

Консоль управления
  1. В консоли управления выберите каталог, в котором будет создан кластер.
  2. В списке сервисов выберите Compute Cloud.
  3. На панели слева выберите Кластеры GPU.
  4. Нажмите кнопку Создать кластер GPU.
  5. В поле Имя задайте имя кластера: test-gpu-cluster.
  6. В поле Зона доступности выберите зону доступности ru-central1-d.
  7. Нажмите Сохранить.

Добавьте две ВМ в кластерДобавьте две ВМ в кластер

  1. Создайте первую ВМ:

    Консоль управления
    1. На панели слева выберите Виртуальные машины.

    2. Нажмите кнопку Создать виртуальную машину.

    3. В блоке Образ загрузочного диска выберите публичный образ Ubuntu 20.04 LTS Secure Boot CUDA 12.2.

    4. В поле Зона доступности выберите зону доступности ru-central1-d.

    5. В блоке Диски и файловые хранилища выберите тип диска SSD и задайте размер 800 ГБ.

    6. В блоке Вычислительные ресурсы перейдите на вкладку Своя конфигурация и укажите необходимую платформу, количество GPU и кластер:

      • Платформа — AMD Epyc 9474F with Gen2.
      • GPU — 8.
      • Кластер GPU — выберите ранее созданный кластер test-gpu-cluster.
    7. В блоке Доступ выберите вариант SSH-ключ и укажите данные для доступа на ВМ:

      • В поле Логин введите имя пользователя, например: ubuntu. Не используйте имя root или другие имена, зарезервированные ОС. Для выполнения операций, требующих прав суперпользователя, используйте команду sudo.
      • В поле SSH-ключ выберите SSH-ключ, сохраненный в вашем профиле пользователя организации.

        Если в вашем профиле нет сохраненных SSH-ключей или вы хотите добавить новый ключ:

        • Нажмите кнопку Добавить ключ.
        • Задайте имя SSH-ключа.
        • Загрузите или вставьте содержимое открытого SSH-ключа. Пару SSH-ключей для подключения к ВМ по SSH необходимо создать самостоятельно.
        • Нажмите кнопку Добавить.

        SSH-ключ будет добавлен в ваш профиль пользователя организации.

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

    8. Нажмите Создать ВМ.

  2. Аналогично создайте вторую ВМ.

Проверьте состояние кластераПроверьте состояние кластера

Опционально вы можете:

  • Проверить физическое состояние кластера;
  • Запустить параллельные задачи в кластере;
  • Проверить пропускную способность InfiniBand.

Запустите языковую модельЗапустите языковую модель

  1. Подключитесь по протоколу SSH к обеим ВМ.

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

    sudo groupadd docker
    sudo usermod -aG docker $USER
    newgrp docker
    
  3. На обе виртуальные машины скачайте образ SGLang:

    docker pull lmsysorg/sglang:latest
    
  4. Выполните на первой ВМ команду:

    docker run --gpus all --device=/dev/infiniband --ulimit memlock=-1 --ulimit stack=67108864 --shm-size 32g --network=host -v ~/.cache/huggingface:/root/.cache/huggingface --name sglang_multinode1 -e GLOO_SOCKET_IFNAME=eth0 -it --rm --ipc=host lmsysorg/sglang:latest python3 -m sglang.launch_server --model-path deepseek-ai/DeepSeek-R1 --tp 16 --nccl-init-addr <IP_адрес_1>:30000 --nnodes 2 --node-rank 0 --trust-remote-code --host 0.0.0.0 --port 30001 --disable-radix --max-prefill-tokens 126000
    

    Где IP_адрес_1 — внутренний IP-адрес первой ВМ.

  5. Выполните на второй ВМ команду:

    docker run --gpus all --device=/dev/infiniband --ulimit memlock=-1 --ulimit stack=67108864 --shm-size 32g --network=host -v ~/.cache/huggingface:/root/.cache/huggingface --name sglang_multinode2 -e GLOO_SOCKET_IFNAME=eth0 -it --rm --ipc=host lmsysorg/sglang:latest python3 -m sglang.launch_server --model-path deepseek-ai/DeepSeek-R1 --tp 16 --nccl-init-addr <IP_адрес_1>:30000 --nnodes 2 --node-rank 1 --trust-remote-code --host 0.0.0.0 --port 30001 --disable-radix --max-prefill-tokens 126000
    

    Где IP_адрес_1 — внутренний IP-адрес первой ВМ.

  6. Подождите, пока сервер запустится:

    The server is fired up and ready to roll!
    

Проверьте работу языковой моделиПроверьте работу языковой модели

  1. Подключитесь по протоколу SSH в новой сессии к первой ВМ.

  2. Установите пакет openai:

    sudo apt update
    sudo apt install python3-pip
    pip install openai
    
  3. Создайте скрипт test_model.py со следующим содержимым:

    import openai
    client = openai.Client(
       base_url="http://127.0.0.1:30001/v1", api_key="EMPTY")
    
    response = client.chat.completions.create(
       model="default",
       messages=[
          {"role": "system", "content": "You are a helpful AI assistant"},
          {"role": "user", "content": "List 3 countries and their capitals."},
       ],
       temperature=0.3,
       max_tokens=1024,
    )
    print(response.choices[0].message.content)
    
  4. Запустите скрипт:

    python3 test_model.py
    

    Пример ответа модели:

    Here are three countries and their capitals:
    
    1. **France** - Paris
    2. **Japan** - Tokyo
    3. **Brazil** - Brasília
    
    Let me know if you'd like more examples! 😊
    

Как удалить созданные ресурсыКак удалить созданные ресурсы

Чтобы перестать платить за созданные ресурсы:

  1. В сервисе Compute Cloud удалите созданные виртуальные машины.
  2. В сервисе Compute Cloud удалите созданный кластер GPU.

Была ли статья полезна?

Предыдущая
Развертывание GitLab Runner на виртуальной машине
Следующая
Запуск библиотеки vLLM с языковой моделью Gemma 3 на ВМ с GPU
Проект Яндекса
© 2025 ООО «Яндекс.Облако»