Files
gpu-rent/docs/swarmui.md
T
Leonid Pershin 3e0a51cac4 Update backend status handling and improve user notifications
- Enhanced documentation to clarify the transition from 'Idle' to 'ready (running)' for backend states, improving user understanding of system readiness.
- Updated logging messages in the notification system to reflect the new backend status terminology, ensuring accurate feedback during operations.
- Refined access link collection logic to better handle tunneled and non-tunneled scenarios, enhancing user experience.
- Improved tests to validate the new backend status handling and ensure accurate reporting of access links and notifications.
2026-08-21 09:53:48 +03:00

4.5 KiB
Raw Blame History

SwarmUI на GPU-сервере

Репозиторий: mcmonkeyprojects/SwarmUI.

Без Docker. На VM процесс слушает 7801 на loopback (launch-linux.sh). На ноутбуке туннель — 17801.

Чего нет

  • Docker, nvidia-container-toolkit, образа на Docker Hub.
  • Порта 7860 (это Automatic1111).
  • Зеркала локального SwarmUI. С ноутбука едут только деревья приложения: local-folders.md. Первый Civitai-seed — models.md.

Bootstrap (один раз на boot volume)

  1. Образ Selectel Ubuntu 24.04 LTS GPU Driver 580 (без Docker в имени, см. selectel.md).
  2. Git clone SwarmUI в /opt/swarmui. .NET — launchtools/linux-dotnet-install.sh (SDK 8 и 10, как в доке SwarmUI).
  3. Bind-mounts с data volume в дерево /opt/swarmui — таблица в architecture.md.
  4. Clone git-расширений из манифеста (extensions.md), если файл не пустой.
  5. Word-list autocomplete в Data/Autocompletions и DefaultUser.AutoComplete.Source (autocomplete.md).
  6. Если есть Civitai-токен и манифест моделей: seed весов до первого старта SwarmUI; иначе — дефолтная модель установщика.
  7. Push непустых Models/ / Wildcards/ / CustomWorkflows/.
  8. systemd unit swarmui: ./launch-linux.sh --launch_mode none --host 127.0.0.1 --port 7801.
  9. GPU probe/mnt/swarm_data/.gpu-rent-gpu.json (VRAM / compute cap / tier) — до старта UI; Ollama читает его при install.
  10. Старт SwarmUI → headless InstallConfirmWS (ComfyUI в dlbackend, models=none — веса уже с Civitai) → seed LLM → idle-killer → wait backend ready (running; empty/loading ≠ ready; SwarmUI idle = бэкенды спят, не «готово»).
  11. Perf tune после Idletriton+sageattention в Comfy venv и --use-sage-attention в Data/Backends.fds (маркер .gpu-rent-perf-tuned; повтор при смене GPU).
  12. Авторизация SwarmUI включена, токен в Data на диске.
  13. Один snapshot boot volume gpu-rent-boot-ok, если ещё нет.

Рестарт UI: systemctl restart swarmui, не docker restart.

ComfyUI

Первый запуск качает backend в /opt/swarmui/dlbackend (это bind на data volume). Иначе каждый recreate потеряет часы.

gpu-rent: после systemctl start swarmui вызывается headless InstallConfirmWS (backend=comfyui, models=none), если GetCurrentStatus ещё empty. Без этого UI отвечает HTTP 200, а Comfy/torch так и не появляются — раньше wait_backend_idle ошибочно считал empty = Idle.

Скорость без потери качества (gpu-rent): после Idle backend, на GPU с compute capability ≥ 8.0 и ≥16GiB VRAM — SageAttention. Performance.AllowGpuSpecificOptimizations у Swarm по умолчанию уже включает --fast для 30xx+. Если venv ещё не появился — маркер без pip_ok, догонит на следующем up.

Пока CUDA/ComfyUI поднимаются, UI уже может отвечать. Для MCP и /API/ — рано: ready после Idle backend.

Доступ с ноутбука

Пока запущен gpu-rent tunnel:

Что URL
UI http://127.0.0.1:17801
HTTP API http://127.0.0.1:17801/API/
MCP http://127.0.0.1:17801/mcp

Локальный инстанс на 7801 продолжает жить. В Cursor MCP на время сессии переключают на 17801 (вручную по сниппету CLI).

Без туннеля API с ноутбука недоступен: 7801 на VM не опубликован в интернет.

Чего не делать

  • chmod -R 777 на Models.
  • Слушать 7801 на 0.0.0.0.
  • Ставить Docker «на всякий случай».
  • Считать Nova ACTIVE = можно генерировать.
  • apt upgrade ядра (ломает nvidia-smi).