Полностью локальный голосовой ассистент на Python. Стек: - Wake word: openWakeWord (onnxruntime) - STT: RealtimeSTT + faster-whisper + Silero VAD (CUDA) - LLM-агент: smolagents ToolCallingAgent + Ollama qwen2.5:7b - TTS: Silero V4 (torch.hub) + sounddevice - Shell: Git Bash (Windows) / bash (macOS) Поддерживает Windows и macOS. Агент с памятью и tool calling — находит программы самостоятельно, запоминает пути, выполняет произвольные shell-команды. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
43 lines
1.5 KiB
Bash
43 lines
1.5 KiB
Bash
#!/bin/bash
|
|
set -e
|
|
|
|
echo "============================================"
|
|
echo " Обучение wake word модели 'Hey Cosmo'"
|
|
echo "============================================"
|
|
|
|
CONFIG="/app/cosmo_config.yaml"
|
|
OWW="/openWakeWord/openwakeword/train.py"
|
|
|
|
# Шаг 1: Генерация синтетических аудио примеров через TTS
|
|
echo ""
|
|
echo "[1/3] Генерирую синтетические примеры через TTS..."
|
|
python "$OWW" --training_config "$CONFIG" --generate_clips
|
|
echo " Готово."
|
|
|
|
# Шаг 2: Аугментация (шумы, реверберация, разные условия)
|
|
echo ""
|
|
echo "[2/3] Аугментирую примеры (шумы, реверберация)..."
|
|
python "$OWW" --training_config "$CONFIG" --augment_clips
|
|
echo " Готово."
|
|
|
|
# Шаг 3: Обучение модели
|
|
echo ""
|
|
echo "[3/3] Обучаю модель..."
|
|
python "$OWW" --training_config "$CONFIG" --train_model
|
|
echo " Готово."
|
|
|
|
# Копируем результат
|
|
echo ""
|
|
echo "============================================"
|
|
if ls /output/hey_cosmo*.onnx 1>/dev/null 2>&1; then
|
|
echo " Модель обучена успешно!"
|
|
echo " Файлы в папке models/:"
|
|
ls -lh /output/*.onnx 2>/dev/null || true
|
|
ls -lh /output/*.tflite 2>/dev/null || true
|
|
else
|
|
echo " ОШИБКА: .onnx файл не найден в /output"
|
|
echo " Проверь логи выше."
|
|
exit 1
|
|
fi
|
|
echo "============================================"
|