Files
gpu-rent/README.md
T
Leonid Pershin 615cf81493 Add package data for GPU rent and update CLI documentation
- Added package data configuration for the 'gpu_rent' package in pyproject.toml.
- Updated README.md to include usage instructions for Windows and Unix launchers.
- Enhanced CLI documentation in cli.md to reflect new commands and their functionalities.
- Revised setup.md to clarify installation steps and environment setup.
- Improved error handling and command descriptions in the CLI implementation.
- Added new functions for model version handling and flavor resolution in the codebase.
- Updated state management to include additional properties for better tracking.
2026-08-21 03:06:51 +03:00

60 lines
3.4 KiB
Markdown

# gpu-rent
Локальный CLI: прерываемый GPU в [Selectel](https://selectel.ru), SwarmUI через туннель на `localhost:17801`. Модели живут на сетевых дисках.
**Сначала ключи и квота — не `up`.** Пошагово: [`docs/setup.md`](docs/setup.md).
Спецификация: [`docs/`](docs/README.md). Решения: [`docs/decisions.md`](docs/decisions.md).
## Что уже можно запустить
Windows (cmd или двойной клик): `gpu-rent.bat`
PowerShell: `.\gpu-rent.ps1`
Linux / macOS / Git Bash: `./gpu-rent.sh`
Скрипты сами создают `.venv`, ставят пакет и прокидывают аргументы. Активировать окружение не нужно.
```powershell
.\gpu-rent.ps1 doctor
.\gpu-rent.ps1 dry-run
.\gpu-rent.ps1 status
# если doctor зелёный и квота GPU > 0:
.\gpu-rent.ps1 up --yes
.\gpu-rent.ps1 tunnel
.\gpu-rent.ps1 stop
```
```bash
chmod +x gpu-rent.sh # один раз на Unix
./gpu-rent.sh doctor
```
Ключи: скопируй `env.example` в `%USERPROFILE%\.gpu-rent\.env` (скрипт сделает это сам при первом запуске) и заполни `OS_*` по [`docs/setup.md`](docs/setup.md).
`up` поднимает compute и ставит SwarmUI нативно (`launch-linux.sh` + systemd). `tunnel` пробрасывает `localhost:17801`. `stop` гасит GPU, диски оставляет.
## Зачем какие ключи
| Что | Зачем | Как получить |
| --- | --- | --- |
| Сервисный пользователь Selectel + пароль | OpenStack: VM, диски, сеть. IAM-токен на 24 ч CLI берёт сам | IAM → Service users. **Не** X-Token из профиля |
| `OS_PROJECT_ID`, номер аккаунта, пул, AZ | Scope токена и куда ставить GPU | RC-файл с вкладки Access + матрица GPU |
| Тикет в поддержку | Лимит GPU часто 0 | Текст в docs/setup.md |
| Civitai API token | Seed моделей | [civitai.com/user/account](https://civitai.com/user/account) → API Keys |
| GitHub PAT | Только приватные репы в `extensions.yaml` | Fine-grained, Contents: Read |
Статический `X-Token` панели **не умеет** создавать облачные серверы.
## Продукт
- GPU по умолчанию preemptible; гасится `stop` или idle-killer на VM (`hold` откладывает killer).
- Первый диск: модели с Civitai по `models.yaml`, если задан API-токен; иначе дефолт SwarmUI.
- Локальные папки: непустые `Models/`, `Wildcards/`, `CustomWorkflows/` едут на `up`; `Output/` можно забрать (`PULL_OUTPUT`).
- Расширения: git-репы из `extensions.yaml` на первый bootstrap.
- Autocomplete: `Data/Autocompletions` + проверка новой версии csv на каждом `up`.
- `doctor` до create; фоллбек GPU flavor; toast когда UI готов; `open` на 17801.
- Локальный SwarmUI на порту 7801 не занимает.
- Прерывание хостером: `EXPIRED``unshelve`.
Лицензия MIT. Секреты и веса в git не класть.