Some checks failed
Build and Deploy Docs / build-and-deploy (push) Has been cancelled
- Created logs/ structure (sessions, operations, incidents) - Added session-start/log/end scripts - Installed Git hooks for auto-logging commits/pushes - Added shell integration for zsh - Created CHANGELOG.md - Documented today's session (2026-01-10)
8.9 KiB
8.9 KiB
✅ Налаштування default_model для НОДА2
Дата: 2025-11-23
Статус: ✅ Конфігурація створена
🎯 Що зроблено
1. Створено конфігураційний файл для НОДА2
Файл: services/swapper-service/config/swapper_config_node2.yaml
Особливості для НОДА2 (MacBook M4 Max):
- ✅
metal_acceleration: true- Apple Silicon GPU acceleration - ✅
default_model: gpt-oss:latest- автоматичне завантаження при старті - ✅
ollama.url: http://localhost:11434- Native Ollama (не через Docker) - ✅ 8 моделей налаштовано (відповідно до встановлених на НОДА2)
Моделі в конфігурації:
gpt-oss:latest(13 GB, 20.9B) - default_model - основна модельphi3:latest(2.2 GB, 3.8B) - легка модельqwen3-vl:latest(6.1 GB, 8.8B) - vision модельstarcoder2:latest(1.7 GB, 3B) - code specialistqwen2.5-coder:latest(4.7 GB, 7.6B) - advanced codegemma2:latest(5.4 GB, 9.2B) - reasoningmistral-nemo:latest(7.1 GB, 12.2B) - advanced reasoningdeepseek-r1:latest(5.2 GB, 8.2B) - strategic reasoning
2. Логіка автоматичного завантаження
Файл: services/swapper-service/app/main.py
- При ініціалізації Swapper Service перевіряє
default_modelв конфігурації - Якщо вказано → автоматично завантажує модель
- Логує процес завантаження
📋 Як застосувати на НОДА2
Варіант 1: Використати локальну конфігурацію (рекомендовано)
# 1. Перевірити чи працює Swapper Service
cd /Users/apple/github-projects/microdao-daarion
docker-compose ps swapper-service
# 2. Оновити конфігурацію (якщо використовується volume mount)
# Або скопіювати конфігурацію в правильну директорію
cp services/swapper-service/config/swapper_config_node2.yaml \
services/swapper-service/config/swapper_config.yaml
# 3. Перезапустити Swapper Service
docker-compose restart swapper-service
# 4. Перевірити логи
docker-compose logs swapper-service --tail 30
Варіант 2: Запуск локально (без Docker)
# 1. Перейти в директорію Swapper Service
cd /Users/apple/github-projects/microdao-daarion/services/swapper-service
# 2. Встановити змінну оточення для конфігурації
export SWAPPER_CONFIG_PATH=./config/swapper_config_node2.yaml
export OLLAMA_BASE_URL=http://localhost:11434
export SWAPPER_MODE=single-active
# 3. Запустити сервіс
python3 -m uvicorn app.main:app --host 0.0.0.0 --port 8890
# 4. Перевірити логи (шукати "default model")
Варіант 3: Оновити через docker-compose (якщо конфіг монтується)
# 1. Перевірити docker-compose.yml
# Переконатися, що volume монтує правильну конфігурацію:
# volumes:
# - ./services/swapper-service/config:/app/config:ro
# 2. Скопіювати конфігурацію НОДА2
cp services/swapper-service/config/swapper_config_node2.yaml \
services/swapper-service/config/swapper_config.yaml
# 3. Перезапустити
docker-compose restart swapper-service
# 4. Перевірити логи
docker-compose logs swapper-service --tail 30 | grep -i "default\|gpt-oss"
🔍 Перевірка
1. Перевірити чи завантажилась модель
# На НОДА2
curl http://localhost:8890/status | jq
Очікуваний результат:
{
"status": "healthy",
"active_model": "gpt-oss:latest",
"available_models": ["gpt-oss:latest", "phi3:latest", ...],
"loaded_models": ["gpt-oss:latest"],
"mode": "single-active",
"total_models": 8
}
2. Перевірити в кабінеті НОДА2
Відкрити: http://localhost:8899/nodes/node-2-macbook-m4max
Очікуваний результат:
- Swapper Service показує активну модель:
gpt-oss:latest - Статус моделі:
loadedабоactive - GPU використання: Apple Silicon Metal acceleration
3. Перевірити логи
# Якщо через Docker
docker-compose logs swapper-service | grep -i "default\|gpt-oss"
# Якщо локально
# Логи будуть в консолі, шукати:
# 🔄 Loading default model: gpt-oss:latest
# ✅ Default model loaded: gpt-oss:latest
📊 Результат
До змін:
- ❌ Всі моделі
UNLOADEDпри старті - ❌ Перший запит повільний (~10-30 сек на завантаження)
- ✅ Економія пам'яті (0 GB при старті)
Після змін:
- ✅
gpt-oss:latestавтоматично завантажується при старті - ✅ Швидка відповідь на перший запит (~1-2 сек)
- ⚠️ Використання пам'яті: ~13 GB (прийнятно для 64GB RAM)
🎯 Переваги
-
Швидкість:
- Перший запит відразу працює
- Немає затримки на завантаження моделі
-
Зручність:
- Модель готова до використання одразу після старту
- Не потрібно чекати на завантаження
-
Оптимальний вибір:
gpt-oss:latest- швидка модель для більшості запитів- 13 GB - прийнятний розмір для 64GB RAM
- 20.9B параметрів - хороша якість відповідей
⚙️ Альтернативні варіанти default_model
Легка модель (менше пам'яті):
swapper:
default_model: phi3:latest # 2.2 GB, 3.8B params - швидка легка модель
Vision модель (для обробки зображень):
swapper:
default_model: qwen3-vl:latest # 6.1 GB, 8.8B params - vision capabilities
Code модель (для розробки):
swapper:
default_model: starcoder2:latest # 1.7 GB, 3B params - code specialist
Вимкнути автоматичне завантаження:
swapper:
# default_model: gpt-oss:latest # Закоментовано - моделі завантажуються тільки за запитом
🔧 Особливості НОДА2
Apple Silicon (M4 Max):
- ✅
metal_acceleration: true- використання GPU прискорення - ✅ 40-core GPU - потужна обробка
- ✅ 64GB RAM - достатньо для великих моделей
Ollama на НОДА2:
- ✅ Native Ollama:
http://localhost:11434(через Pieces OS або brew) - ✅ Docker Ollama:
http://localhost:11435(якщо запущений) - ⚠️ Swapper Service використовує Native Ollama за замовчанням
Моделі на НОДА2:
- ✅ 8 моделей встановлено (~118 GB загалом)
- ✅ Різноманітність: LLM, Code, Vision, Reasoning
- ✅ Великі моделі доступні (до 42 GB)
✅ Статус
Конфігурація створена:
- ✅
services/swapper-service/config/swapper_config_node2.yaml - ✅ Логіка автоматичного завантаження вже додана (в
main.py) - ✅ Налаштовано для Apple Silicon (Metal acceleration)
Наступний крок:
- Застосувати конфігурацію на НОДА2
- Перезапустити Swapper Service
- Перевірити логи та статус
📝 Примітки
-
Конфігурація НОДА2 відрізняється від НОДА1:
- НОДА1: NVIDIA GPU,
qwen3-8b(4.87 GB) - НОДА2: Apple Silicon,
gpt-oss:latest(13 GB)
- НОДА1: NVIDIA GPU,
-
Ollama на НОДА2:
- Може працювати через Pieces OS або brew
- Порт:
11434(native) або11435(Docker) - Swapper Service використовує
http://localhost:11434
-
Моделі:
- На НОДА2 встановлені інші моделі, ніж на НОДА1
- Конфігурація відповідає реально встановленим моделям
- Можна змінити
default_modelна будь-яку з доступних
Готово до застосування на НОДА2! 🚀