Files
gpu-rent/docs/llm.md
T
Leonid Pershin f17b1c9731 Update Ollama model configurations and documentation for clarity and consistency
- Revised model descriptions in `ollama-models.example.yaml` to emphasize uncensored and abliterated requirements, enhancing user understanding.
- Updated documentation in `llm.md` to reflect changes in model tags and their meanings, ensuring accurate guidance for users.
- Modified CLI help messages to clarify the nature of presets, reinforcing that all options are abliterate models with Russian support.
- Enhanced the `llm_runtime.py` file to align preset labels with the updated model descriptions, improving consistency across the codebase.
2026-08-21 08:54:21 +03:00

135 lines
4.3 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# LLM рядом со SwarmUI (opt-in)
По умолчанию поднимается **только SwarmUI**. Ollama — отдельно (помощь с промптами и т.п.).
Интерактивные вопросы — **нумерованные меню** (Enter = вариант со ←). Ключ словом (`recommended`, `keep`) тоже принимается.
Три стека на GPU:
| # | стек | смысл |
| --- | --- | --- |
| 1 | SwarmUI | только генерация картинок |
| 2 | SwarmUI + LLM | UI + Ollama на той же карте |
| 3 | только LLM | **без** SwarmUI — только Ollama |
Флаги: `up --yes --llm-only --ollama` / `--no-swarm --ollama`. Vars: `ENABLE_SWARMUI=false` или `WORKLOAD=llm`.
---
## Быстрый путь
### A — wizard
```text
gpu-rent setup
```
Меню: runtime → пресет моделей → опционально local-watchdog. Пишет `LLM_RUNTIME` в `gpu-rent.vars`.
### B — флаг на `up`
```text
gpu-rent up --yes --ollama
gpu-rent up --yes --llm ollama
gpu-rent up --yes --llm-only --ollama # без SwarmUI
```
С `--yes` пресеты не спрашивает (берёт существующий yaml / example).
### C — vars вручную
```env
LLM_RUNTIME=ollama
```
Потом `gpu-rent up --yes`.
Выключить: `LLM_RUNTIME=none` (на `up` старые LLM unit’ы на VM останавливаются).
Голый `gpu-rent` без args — **help**. Двойной клик: `GPU_RENT_DEFAULT_ARGS=up --yes`. Полный doctor на up: `up -v`.
---
## Порты (loopback + туннель)
| Сервис | На VM | На ноутбуке |
| --- | --- | --- |
| SwarmUI | 7801 | **17801** |
| Ollama | 11434 | **17811** |
```text
gpu-rent tunnel
gpu-rent open --llm
```
```powershell
$env:OLLAMA_HOST = "http://127.0.0.1:17811"
```
После `up`/`tunnel` — access-card с URL и MCP-сниппетом.
---
## Ollama
| Файл | Роль |
| --- | --- |
| `ollama-models.example.yaml` | шаблон в git |
| `ollama-models.yaml` | список тегов (gitignore); лаунчер копирует example при отсутствии |
На `up``ollama pull` по списку. Точные теги: уже есть `foo:7b` ≠ skip для `foo:3b`. Лишнее на диске не удаляет.
### Пресеты (меню)
| # | ключ | tag / смысл |
| --- | --- | --- |
| 1 | **recommended** | `huihui_ai/qwen2.5-vl-abliterated:7b` — RU + vision, ~6GB |
| 2 | light | `…:3b` — то же, мало VRAM (~3GB) |
| 3 | text | `huihui_ai/qwen2.5-abliterate:7b` — RU, без vision (~5GB) |
| 4 | big | `huihui_ai/qwen2.5-vl-abliterated:32b` — RU + vision (~21GB) |
| 5 | empty | только runtime |
| — | keep | не трогать yaml |
Все пресеты (кроме `empty`) — **abliterated** Qwen2.5 с нормальным русским. Официальные censored-теги (`qwen2.5vl:…`) в меню нет.
`default: true` в yaml — preferred в логе; pull идёт по всему списку.
---
## Автотюнинг Ollama
Unit `gpu-rent-ollama` читает `/mnt/swarm_data/.gpu-rent-gpu.json`:
| Tier (VRAM) | Flash Attn | KEEP_ALIVE | KV cache | GPU_OVERHEAD |
| --- | --- | --- | --- | --- |
| low (<16GiB) | off | 2m | q4_0 | 6GiB |
| mid (1623) | on* | 5m | q8_0 | 10GiB |
| high (2447) | on* | 15m | q8_0 | 14GiB |
| ultra (≥48) | on* | 30m | q8_0 | 20GiB |
\*Flash на Ampere+ (compute ≥ 8.0). `NUM_PARALLEL=1`, `MAX_LOADED_MODELS=1`. Env: `/mnt/swarm_data/.gpu-rent-ollama.env`.
---
## Idle-killer и LLM
Busy (не гасить GPU):
- `ollama pull` (маркер младше ~45 мин; старше сбрасывается);
- загруженная модель в Ollama.
Ошибка установки LLM на `up`**fail** (не тихий лог).
---
## Supply-chain (опциональный pin)
По умолчанию install тянет upstream без pin (`WARN` в логе). Жёстче:
```bash
OLLAMA_VERSION=0.6.5
OLLAMA_SHA256=<sha256 of ollama-linux-amd64.tgz>
```
Готовые кейсы — в `gpu-rent.vars.example`.