dstackai/dstack

dstackai

Единый слой оркестрации для GPU-вычислений: управляет обучением и инференсом на облаках, Kubernetes, VM и bare-metal кластерах.

dstack — это control plane для провижининга GPU и оркестрации AI-нагрузок. Он нужен ML-инженерам и командам, которые запускают обучение и инференс на разнородном железе: в GPU-облаках, Kubernetes или на собственных серверах.

Ключевые возможности

  • Единое управление GPU-вычислениями в облаках, Kubernetes, VM и bare-metal
  • Поддержка NVIDIA, AMD, Google TPU и Tenstorrent из коробки
  • Запуск обучения и инференса через CLI или API
  • Настройка бэкендов для облаков и Kubernetes, SSH-флоты для on-prem
  • Интеграция с NVIDIA Dynamo и поддержка PD disaggregation
  • Экспериментальные presets для оптимизации инференса

Для каких задач подходит

  • Запуск обучения моделей на GPU-облаках без ручного управления инфраструктурой
  • Развёртывание инференса на Kubernetes или bare-metal кластерах
  • Объединение разнородных вычислительных ресурсов под единым control plane
  • Использование on-prem серверов через SSH-флоты без настройки бэкендов
  • Работа с разными типами ускорителей в одном пайплайне

Подробнее

dstack работает как единый control plane: вы настраиваете бэкенды для GPU-облаков или Kubernetes, а для on-prem достаточно поднять сервер и создать SSH-флоты. Дальше обучение и инференс запускаются через CLI или API, а dstack сам распределяет нагрузку по доступному железу. Поддерживаются NVIDIA, AMD, Google TPU и Tenstorrent, так что один и тот же пайплайн можно гонять на разных ускорителях.

Отличие от решений, завязанных на один облак или Kubernetes, в том, что dstack стандартизирует управление вычислениями поверх разнородной инфраструктуры. В свежих версиях появились бэкенд Slurm, поддержка нескольких Kubernetes-кластеров, интеграция с NVIDIA Dynamo и PD disaggregation, а также экспериментальные presets для оптимизации инференса.

Обратить внимание стоит на то, что для работы через CLI или API нужен запущенный dstack-сервер, а для облаков и Kubernetes — предварительная настройка бэкендов. Проект распространяется под MPL-2.0.

Частые вопросы

Как установить dstack?

Отдельной команды установки в README нет — склонируйте репозиторий и следуйте инструкции из README:

git clone https://github.com/dstackai/dstack.git

Какие задачи решает dstack?

dstack решает задачи провижининга GPU и оркестрации AI-нагрузок: запускает обучение и инференс на облаках, Kubernetes, VM и bare-metal кластерах через единый интерфейс. Он снимает необходимость вручную управлять разнородной инфраструктурой и позволяет использовать разные типы ускорителей в одном пайплайне.

Какие ускорители поддерживает dstack?

Из коробки поддерживаются NVIDIA, AMD, Google TPU и Tenstorrent.

Нужно ли настраивать бэкенды для on-prem серверов?

Нет, при использовании on-prem серверов достаточно поднять dstack-сервер и создать SSH-флоты — настройка бэкендов не требуется.

Под какой лицензией распространяется dstack?

Проект лицензирован под MPL-2.0.