SBcontrol

0

Описание

Training & Inference API for Adept NN Framework — HTTP API + web dashboard for remote training management with Vulkan GPU acceleration

Языки

  • HTML52,4%
  • Python47,6%
README.md

SBcontrol — Training & Inference API for Adept NN Framework

HTTP API + веб-дашборд для удалённого управления фреймворком Adept на Windows с GPU-ускорением через Vulkan.

RTX 5090 (32GB) / i9-13900KF / 128GB DDR5 / Vulkan 1.4.328


Что это

Adept — C++ фреймворк для обучения нейросетей с GPU-ускорением через Vulkan (кроссплатформенная альтернатива CUDA). SBcontrol оборачивает его в полноценный веб-сервис:

  • Обучение MLP, LeNet-5, ConvNet через HTTP API
  • Бенчмарки CPU vs GPU с автоматическим сравнением
  • Веб-дашборд с графиками обучения, GPU-мониторингом, MNIST-демо
  • Удалённый деплой через SSH (Paramiko)

Быстрый старт

Вариант 1: Запуск локально (у вас GPU + собранный Adept)

Вариант 2: Удалённый деплой через SSH

После запуска (порт задаётся в

.env
API_PORT
):

  • API:
    http://<server>:<port>/
  • Swagger docs:
    http://<server>:<port>/docs
  • Dashboard:
    http://<server>:<port>/dashboard

Структура проекта

SBcontrol/ server/ main.py # API-сервер (FastAPI) — standalone, запускается напрямую requirements.txt # Зависимости сервера (fastapi, uvicorn) dashboard.html # Веб-дашборд (Chart.js, WebSocket, MNIST демо) remote_build.py # Деплой на удалённую машину через SSH/SFTP remote_cmd.py # SSH-диагностика ADEPT_WINDOWS_PORT.md # Документация порта Adept на Windows PULL_REQUEST.md # Описание PR для upstream Adept .env.example # Шаблон настроек (скопировать в .env)

API Endpoints (v2.0)

Обучение нейросетей

MethodEndpointDescription
POST
/api/train/{mlp|lenet|convnet}?gpu=true
Запуск обучения
GET
/api/train/status/{job_id}
Статус + результаты
GET
/api/train/output/{job_id}
Полный лог обучения
GET
/api/train/jobs
История всех запусков
POST
/api/train/cancel/{job_id}
Отмена обучения
WS
/ws/train/{job_id}?token=...
WebSocket стриминг логов

Модели и бенчмарки

MethodEndpointDescription
GET
/api/models
Каталог моделей
GET
/api/benchmark
CPU бенчмарк
GET
/api/benchmark/gpu
GPU бенчмарк
GET
/api/benchmark/compare
CPU vs GPU сравнение
GET
/api/pipeline/gpu
Pipeline performance

Мониторинг

MethodEndpointDescription
GET
/api/gpu/stats
Live GPU метрики (temp, VRAM, util, power)
GET
/api/system
Информация о системе
GET
/health
Health check

Администрирование

MethodEndpointDescription
POST
/admin/token/new?name=user
Создать токен
POST
/admin/token/revoke?token=...
Отозвать токен
GET
/admin/stats
Статистика использования

Dashboard

Веб-интерфейс доступен по

/dashboard
:

  • Выбор модели (MLP / LeNet-5 / ConvNet)
  • Переключатель CPU/GPU
  • Real-time графики обучения (Chart.js)
  • WebSocket стриминг логов
  • GPU мониторинг (температура, VRAM, утилизация, мощность)
  • MNIST демо — canvas для рисования цифр
  • История обучений с просмотром результатов
  • Экспорт метрик (CSV) и графиков (PNG)
  • Браузерные push-уведомления

Требования

Сервер (где запускается Adept)

  • Windows 11
  • MSYS2 UCRT64 (GCC 15+)
  • Vulkan SDK 1.4+
  • NVIDIA GPU + драйверы
  • Python 3.10+ с FastAPI, uvicorn

Клиент (откуда деплоится)

  • Python 3.10+
  • paramiko, python-dotenv

Авторизация

API защищён Bearer-токенами. Master-токен генерируется при первом запуске и выводится в консоль. Пользовательские токены создаются через

/admin/token/new
.

Связь с Adept

Этот проект использует скомпилированные исполняемые файлы Adept. Для сборки Adept на Windows см. ADEPT_WINDOWS_PORT.md.

Windows-порт Adept (C++ правки) подготовлен для отправки в upstream: PULL_REQUEST.md.


SBcontrol v2.0 — февраль 2026