- Fixed Gateway: 'prompt' → 'message' field name - Increased LLM provider timeout from 30s to 60s - Added OLLAMA-OPTIMIZATION.md with performance tips - DAARWIZZ now responds (slowly but works)
2.5 KiB
2.5 KiB
Ollama Performance Optimization
Проблема
Qwen3:8b генерує відповідь 25-30 секунд, що занадто повільно для чат-бота.
Швидкі рішення
1. Збільшити timeout (✅ зроблено)
# providers/llm_provider.py
timeout_s: int = 60 # було 30
2. Keep model loaded (рекомендовано)
# Встановити keep_alive щоб модель не вивантажувалась
curl http://localhost:11434/api/generate -d '{
"model": "qwen3:8b",
"prompt": "warmup",
"keep_alive": "24h"
}'
Або в systemd override:
[Service]
Environment="OLLAMA_KEEP_ALIVE=24h"
3. Використати легшу модель
# Завантажити qwen2.5:3b (швидша, але менш "розумна")
ollama pull qwen2.5:3b
Оновити router-config.yml:
llm_profiles:
- profile_id: "local_qwen_fast"
provider_id: "llm_local_qwen"
model: "qwen2.5:3b" # замість qwen3:8b
4. GPU acceleration (якщо є GPU)
Ollama автоматично використовує GPU якщо є CUDA/ROCm.
Перевірка:
ollama ps # покаже чи використовує GPU
nvidia-smi # для NVIDIA GPU
Довгострокові рішення
Option A: Віддалений LLM (швидко, але платно)
llm_profiles:
- profile_id: "production_fast"
provider_id: "openai_remote"
model: "gpt-4o-mini"
base_url: "https://api.openai.com/v1"
api_key_env: "OPENAI_API_KEY"
Option B: Більш потужний сервер
- CPU: 8+ cores
- RAM: 32GB+ (для 8B моделі)
- GPU: RTX 3060+ (12GB VRAM)
Моніторинг
# Час генерації
docker compose logs router | grep "Request timeout"
# Завантаженість Ollama
curl http://localhost:11434/api/ps
# Системні ресурси
htop
Рекомендації для DAARWIZZ
- ✅ Зараз: timeout 60s, працює але повільно
- 🔄 Наступний крок:
OLLAMA_KEEP_ALIVE=24hщоб модель не вивантажувалась - 🚀 Production: віддалений LLM (OpenAI/Anthropic) або потужніший сервер з GPU
Статус: DAARWIZZ працює, але відповідає за ~30-40 секунд. Для комфорту потрібно <5 секунд.