- Add training/ pipeline (step_1..step_5) and own-samples flow
- record_wav.py with single-shot and long-record modes, RMS-based silence filter
- remove_silent.py to drop silent samples and renumber
- modes.py: openwakeword inference with reset() and quiet predictions; commented Lusya block for later
- stt.py: drop local faster-whisper fallback, Groq-only
- config.py: remove unused STT_PROVIDER/WHISPER_*
- llm.py: replace __import__("os") hack with proper import
- tts.py: remove debug traceback in play_error_sound
- requirements.txt: add openwakeword/sounddevice/scipy, drop faster-whisper
- deploy/setup.sh: validate ELEVENLABS_API_KEY and WAKE_WORD_COSMO presence
- README.md, CLAUDE.md, project_roadmap memory updated to reflect new architecture
37 lines
950 B
Plaintext
37 lines
950 B
Plaintext
# OpenClaw Gateway — Cosmo
|
|
GATEWAY_URL=http://192.168.31.103:18789
|
|
GATEWAY_TOKEN=your_openclaw_token_here
|
|
AGENT=openclaw/main
|
|
VOICE_MODEL=openai/gpt-5.4-mini
|
|
|
|
# OpenClaw Gateway — Люся
|
|
LUSYA_GATEWAY_URL=http://192.168.31.103:18790
|
|
LUSYA_GATEWAY_TOKEN=your_openclaw_token_here
|
|
LUSYA_AGENT=openclaw/main
|
|
LUSYA_VOICE_MODEL=openai/gpt-5.4-mini
|
|
|
|
# STT (Groq)
|
|
GROQ_API_KEY=your_groq_api_key_here
|
|
|
|
# Wake word (openwakeword .onnx модели, обучаются через training/step_4.py)
|
|
WAKE_WORD_COSMO=data/models/cosmo.onnx
|
|
WAKE_WORD_LUSYA=data/models/lusya.onnx
|
|
|
|
# Audio (на Pi: bluez_sink.XX_XX_XX_XX_XX_XX.a2dp_sink)
|
|
AUDIO_SINK=
|
|
|
|
# TTS (ElevenLabs)
|
|
ELEVENLABS_API_KEY=your_elevenlabs_api_key_here
|
|
ELEVENLABS_MODEL=eleven_flash_v2_5
|
|
COSMO_TTS_VOICE=your_cosmo_voice_id
|
|
LUSYA_TTS_VOICE=your_lusya_voice_id
|
|
|
|
# VAD
|
|
SILENCE_THRESHOLD=500
|
|
SILENCE_DURATION=1.5
|
|
MAX_DURATION=15
|
|
FOLLOWUP_TIMEOUT=8
|
|
|
|
# Логирование
|
|
LOG_FILE=errors.log
|