Files
jarvis/jarvis.yaml.example
T
Adolfo Reyna 199f762616 feat: Jarvis v2 - CPU optimized always-listening for iMac Ubuntu
- PipeWire/pw-record backend (no PortAudio needed) - tested mic live
- VAD: Energy (immediate) + Silero (torch CPU) switchable
- Wakeword: openWakeWord TFLite hey_jarvis 0.4
- STT: faster-whisper base int8 CPU - model loads OK on i3
- SpeakerID: ECAPA embeddings + fallback stats, enrollment store
- Vision: OpenCV Haar + face_recognition + webcam cam0 640x480 verified
- LLM: ollama/qwen2.5:3b, gemini_cli, hermes_api, echo strategies
- TTS: Piper + espeak + echo fallbacks
- Core pipeline: IDLE -> WAKE -> RECORDING -> STT -> SpeakerID/FaceID fusion -> LLM -> TTS -> followup window
- Config via jarvis.yaml, soul.md persona
- CLI tools: run, devices, enroll-speaker, enroll-face, test-vad, test-mic
- Systemd user service ready
- Tested on iMac 2010 i3 550 15GB Ubuntu 26.04 CPU-only
2026-07-10 12:16:03 -04:00

70 lines
1.2 KiB
Plaintext

audio:
device: null
samplerate: 16000
block_size: 512
channels: 1
vad:
engine: "silero"
threshold: 0.5
min_speech_ms: 250
min_silence_ms: 800
wakeword:
enabled: true
models: ["hey_jarvis"]
threshold: 0.45
cooldown_sec: 1.0
pre_roll_sec: 0.8
allow_followup_without_wake: true
stt:
engine: "faster-whisper"
model: "base"
language: "en"
device: "cpu"
compute_type: "int8"
vad_filter: false
speaker:
enabled: true
enrollment_dir: "data/speakers"
threshold: 0.60
embedding_model: "speechbrain/spkrec-ecapa-voxceleb"
vision:
enabled: true
camera_id: 0
check_on_wake: true
continuous_interval_sec: 0
threshold: 0.55
enrollment_dir: "data/faces"
llm:
provider: "ollama"
model: "qwen2.5:3b"
system_prompt_file: "data/soul.md"
ollama_host: "http://localhost:11434"
max_history: 8
temperature: 0.7
conversation:
followup_timeout_sec: 12
max_followup_turns: 5
silence_timeout_sec: 7
listening_sound: true
idle_timeout_sec: 0
tts:
engine: "piper"
voice: "en_US-lessac-medium"
volume: 0.9
logging:
level: "INFO"
file: "data/jarvis.log"
transcription_dir: "data/transcriptions"
daemon:
user_service: true