Files
microdao-daarion/SWAPPER-DEFAULT-MODEL-CONFIGURATION.md
Apple fca48b3eb0 feat(node2): Complete NODE2 setup - guardian, agents, swapper models
- Node-guardian running on MacBook and updating metrics
- NODE2 agents (Atlas, Greeter, Oracle, Builder Bot) assigned to node-2-macbook-m4max
- Swapper models displaying correctly (8 models)
- DAGI Router agents showing with correct status (3 active, 1 stale)
- Router health check using node_cache for remote nodes
2025-12-02 07:07:58 -08:00

190 lines
5.8 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.
# ⚙️ Конфігурація моделі за замовчанням для Swapper Service
**Дата:** 2025-11-23
**Статус:** ✅ Реалізовано
---
## 📋 Поточна поведінка
### За замовчуванням (без `default_model`):
-Всі моделі мають статус `UNLOADED` при старті
- ✅ Моделі завантажуються тільки за запитом
- ✅ Економія ресурсів (VRAM, RAM)
- ⚠️ Перший запит може бути повільнішим (час на завантаження)
### З `default_model` в конфігурації:
- ✅ Вказана модель автоматично завантажується при старті
- ✅ Швидша відповідь на перший запит
- ⚠️ Використання VRAM навіть коли модель не використовується
---
## 🔧 Конфігурація
### Файл: `services/swapper-service/config/swapper_config.yaml`
```yaml
swapper:
mode: single-active
max_concurrent_models: 1
model_swap_timeout: 300
gpu_enabled: true
metal_acceleration: false
# Модель для автоматичного завантаження при старті (опціонально)
default_model: qwen3-8b # Модель активується автоматично при старті
```
### Варіанти налаштування:
#### 1. Без моделі за замовчанням (економія ресурсів)
```yaml
swapper:
# default_model не вказано - моделі завантажуються тільки за запитом
mode: single-active
```
#### 2. Основна модель за замовчанням (швидкість)
```yaml
swapper:
default_model: qwen3-8b # Основна модель (4.87 GB)
```
#### 3. Легка модель за замовчанням (баланс)
```yaml
swapper:
default_model: qwen2.5-3b-instruct # Легка модель (1.80 GB)
```
---
## 🎯 Рекомендації
### Для НОДА1 (Production):
**Рекомендовано:** `default_model: qwen3-8b`
**Причини:**
- Основна модель для більшості запитів
- Швидша відповідь на перший запит
- 4.87 GB VRAM - прийнятно для RTX 4000 SFF Ada (20GB)
### Для НОДА2 (Development):
**Рекомендовано:** Без `default_model` або `qwen2.5-3b-instruct`
**Причини:**
- Економія ресурсів на розробницькій машині
- Легка модель для швидкого тестування
---
## 📊 Порівняння
| Параметр | Без default_model | З default_model |
|----------|-------------------|-----------------|
| **VRAM при старті** | 0 GB | 4.87 GB (qwen3-8b) |
| **Час першого запиту** | ~10-30 сек (завантаження) | ~1-2 сек (вже завантажена) |
| **Економія ресурсів** | ✅ Максимальна | ⚠️ Використання навіть без запитів |
| **Швидкість відповіді** | ⚠️ Повільніше на першому запиті | ✅ Швидше |
---
## 🔄 Як працює
### При старті Swapper Service:
1. **Завантаження конфігурації:**
```python
config = yaml.safe_load(f)
swapper_config = config.get('swapper', {})
default_model = swapper_config.get('default_model')
```
2. **Якщо `default_model` вказано:**
```python
if default_model and default_model in self.models:
logger.info(f"🔄 Loading default model: {default_model}")
success = await self.load_model(default_model)
```
3. **Результат:**
- Модель завантажується в VRAM
- `active_model` = `default_model`
- Статус моделі = `LOADED`
- Готова до використання
---
## 🛠️ Зміна конфігурації
### Вимкнути модель за замовчанням:
```yaml
swapper:
mode: single-active
# default_model: qwen3-8b # Закоментовано - моделі завантажуються тільки за запитом
```
### Змінити модель за замовчанням:
```yaml
swapper:
default_model: qwen2.5-3b-instruct # Легка модель замість основної
```
### Після зміни конфігурації:
```bash
# На сервері
ssh root@144.76.224.179
cd /opt/microdao-daarion
docker-compose restart swapper-service
```
---
## 📝 Логи
### При старті з default_model:
```
🔧 Initializing Swapper Service...
✅ Loaded 5 models into Swapper
✅ Swapper Service initialized with 5 models
🔄 Loading default model: qwen3-8b
✅ Default model loaded: qwen3-8b
```
### При старті без default_model:
```
🔧 Initializing Swapper Service...
✅ Loaded 5 models into Swapper
✅ Swapper Service initialized with 5 models
# Модель не завантажується автоматично
```
---
## ✅ Висновок
**Поточна реалізація:**
- ✅ Моделі завантажуються тільки за запитом (за замовчуванням)
- ✅ Можна вказати `default_model` для автоматичного завантаження
- ✅ Гнучка конфігурація під різні сценарії
**Рекомендація для НОДА1:**
- Додати `default_model: qwen3-8b` для швидшої відповіді
- Або залишити без `default_model` для економії ресурсів
---
**Оновлено:** 2025-11-23
**Статус:** ✅ Готово до використання