Files
vidconf/docs/deploy/hardware-profiles.md
Max Ronzhin fb50c5d8ea
Some checks failed
CI / backend (push) Has been cancelled
CI / frontend (push) Has been cancelled
docs(deploy): таблица «профиль нагрузки → железо» на реальных замерах с прода
Формула CPU/RAM/полосы для медиа-нагрузки (не AI): подписки = камер ×
(участников − 1), подтверждено точно двумя боевыми замерами (28.07 и
31.07.2026). Коэффициенты полосы на подписку и CPU на ядро — из тех же
замеров, с явными допущениями и предупреждением не путать пиковый трафик
с устойчивым. Профили — малая команда/совещание/большое собрание/
смешанная нагрузка, включая пример недостижимого профиля и как его
спасают лимит плиток и потолок качества публикации (0.0.21).

Перекрёстные ссылки из README, hardware-profiles.md, capacity.md.
2026-08-02 22:28:55 +03:00

67 lines
4.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
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.
# Профили оборудования и пресеты инсталлятора
VidConf использует **5 пресетов инсталлятора** (на основе 2 измерений: чат вкл/выкл и уровень AI мин/средний/макс) и **3 уровня AI качества** для настройки под разные сценарии развёртывания.
Вся информация здесь основана на источниках истины:
- **[docs/deploy/install.md](install.md)** — описание 5 пресетов, использование `install.sh`, автодетект железа
- **[docs/architecture/adr/004-ai-tier-matrix.md](../architecture/adr/004-ai-tier-matrix.md)** — матрица уровней AI (модели, кванты, требования железа, параметры генерации)
## Пресеты инсталлятора (5 вариантов)
| # | Состав | Композе-профили | Модели | Сложность |
|---|--------|---|--------|-----------|
| 1 | MVP-ядро (лобби, конференции, календарь, закреплённые, гости) | `media` | — | Минимум |
| 2 | 1 + чат (WebSocket, Redis pub/sub) | `media` | — | Низкая |
| 3 | 2 + AI «мин» (CPU) | `media,transcribe,llm` | faster-whisper `small` + Qwen3.5-4B | Средняя |
| 4 | 2 + AI «средний» (CPU опционально GPU) | `media,transcribe,llm` | faster-whisper `medium` + Qwen3.5-9B | Средняя |
| 5 | 2 + AI «макс» (GPU обязателен) | `media,transcribe-gpu,llm-gpu` | faster-whisper `large-v3` + Qwen3.5-35B-A3B | Высокая |
**Использование:** `./install.sh --preset N` или интерактивный опросник для автоматического выбора пресета на основе детекта железа.
## Уровни AI (матрица уровней)
Три уровня качества обработки, применяемые к пресетам 35:
| Уровень | Транскрибация | Суммаризация | Требования (мин) | GPU |
|---------|---|---|---|---|
| **min** | faster-whisper `small` | Qwen3.5-4B (GGUF Q4_K_M, ~2,8 ГБ) | 8 vCPU, 16 ГБ RAM | нет |
| **medium** | faster-whisper `medium` | Qwen3.5-9B (GGUF Q4_K_M, ~6,2 ГБ) | 1216 vCPU, 32 ГБ RAM | опционально ≥8 ГБ |
| **max** | faster-whisper `large-v3` | Qwen3.5-35B-A3B (GGUF Q4_K_M, ~2022 ГБ) | 16+ vCPU, 64 ГБ RAM | **обязательно ≥16 ГБ** |
Детальная матрица с параметрами модели (режимы compute, max_tokens per-tier, CTX) — [ADR-004](../architecture/adr/004-ai-tier-matrix.md).
## Быстрый старт
### Установка с автодетектом
```bash
# Интерактивный опросник (рекомендуемый вариант)
./install.sh
# Или неинтерактивно: пресет 3 (AI min)
./install.sh --preset 3
# Или без подтверждений (CI/scripts, warning: пресет 5 на non-GPU)
./install.sh --preset 3 --yes
```
`install.sh` автоматически:
1. Детектирует CPU/RAM/GPU (nvidia-smi, sysctl, free)
2. Рекомендует пресет
3. Генерирует/обновляет `.env` (секреты сохраняются)
4. Запускает `docker compose` с нужными профилями
5. Выполняет миграции и seed
Полные детали: [docs/deploy/install.md](install.md).
## Ссылки
- **[Инсталлятор](install.md)** — подробное описание `install.sh` и пресетов
- **[ADR-004: Матрица уровней AI](../architecture/adr/004-ai-tier-matrix.md)** — модели, требования, параметры
- **[LLM Setup](llm-setup.md)** — ручная установка/скачивание моделей
- **[Deploy: Мониторинг](monitoring.md)** — Prometheus/Grafana, алерты
- **[Deploy: Масштабирование](scaling.md)** — горизонтальное масштабирование
- **[Deploy: Ёмкость](capacity.md)** — калькулятор нагрузки и IOPS (синтетический тест)
- **[Deploy: Профиль нагрузки → железо](hardware-sizing.md)** — сайзинг под саму
видео-нагрузку (участники/камеры/полоса), на реальных замерах с прода