git clone https://github.com/ShaerWare/AI_Secretary_System
cd AI_Secretary_System
# Настройка переменных окружения
cp .env.docker.example .env
nano .env # Добавьте GEMINI_API_KEY (опционально для CPU режима)# GPU режим (XTTS + vLLM) - требуется NVIDIA GPU 12GB+
docker compose up -d
# CPU режим (Piper + Gemini API) - без GPU
docker compose -f docker-compose.yml -f docker-compose.cpu.yml up -d# Проверка состояния
docker compose ps
curl http://localhost:8002/health
# Админ-панель
open http://localhost:8002/admin
# Логин: admin / admin./setup.sh
cp .env.example .env
nano .env # Добавьте GEMINI_API_KEY если нужен fallbackpip install aiosqlite "sqlalchemy[asyncio]" alembic redis
python scripts/migrate_json_to_db.py# GPU режим: XTTS + Qwen + LoRA
./start_gpu.sh
# CPU режим: Piper + Gemini
./start_cpu.sh
# Проверка
curl http://localhost:8002/healthОткройте http://localhost:8002/admin (логин: admin / admin)
curl -X POST http://localhost:8002/admin/tts/test \
-H "Content-Type: application/json" \
-d '{"text": "Здравствуйте! Это виртуальный секретарь."}' \
-o test.wav
ffplay test.wav # или aplay test.wav# Создать сессию
SESSION=$(curl -s -X POST http://localhost:8002/admin/chat/sessions \
-H "Content-Type: application/json" \
-d '{"title": "Test"}' | jq -r '.id')
# Отправить сообщение (streaming)
curl -N http://localhost:8002/admin/chat/sessions/$SESSION/stream \
-H "Content-Type: application/json" \
-d '{"content": "Привет! Как дела?"}'# Статус STT
curl http://localhost:8002/admin/stt/status
# Транскрибация файла
curl -X POST http://localhost:8002/admin/stt/transcribe \
-F "audio=@recording.wav" ┌─────────────────────────────────┐
│ Orchestrator (port 8002) │
│ ┌───────────────────────────┐ │
│ │ Vue 3 Admin Panel (PWA) │ │
│ └───────────────────────────┘ │
└───────────────┬─────────────────┘
│
┌───────────┬───────────┬───────┼───────┬───────────┬───────────┐
↓ ↓ ↓ ↓ ↓ ↓ ↓
vLLM Gemini XTTS Piper Vosk Widget Telegram
(GPU) (Cloud) (GPU) (CPU) (STT) (Chat) (Bot)
- Настройте персону - Admin → LLM → выберите Anna или Marina
- Добавьте облачный LLM - Admin → LLM → Cloud Providers
- Настройте виджет - Admin → Widget → включите и скопируйте код
- Настройте Telegram бота - Admin → Telegram → добавьте токен
- Прочитайте README.md - полная документация
# Уменьшите использование GPU в start_qwen.sh:
--gpu-memory-utilization 0.5 # вместо 0.7# Проверьте vLLM
curl http://localhost:11434/health
tail -f logs/vllm.log# Пересоздать базу данных
rm data/secretary.db
python scripts/migrate_json_to_db.py- Модели загружаются при первом запуске
- Следующие запросы будут быстрее
- Используйте GPU для ускорения TTS и LLM
Вопросы? Создайте Issue: https://github.com/ShaerWare/AI_Secretary_System/issues