Project
Jarvis — A Voice Assistant
I architected and directed Jarvis with AI-assisted implementation, building a working voice assistant that connected wake-word detection, speech recognition, pluggable language models, MCP tools, and speech synthesis.
Jarvis followed my earlier Walter assistant, combining a voice interface with selectable language models and tools.
Pipeline design
microphone → wake word → voice activity → speech recognition → LLM / MCP tools → speech synthesis
The design used openWakeWord, Silero VAD, faster-whisper, a selectable cloud or local language model, and an XTTS voice. Swappable interfaces separated wake-word, speech-recognition, language-model, and speech-synthesis backends.
Sentence streaming was intended to begin speech before the model finished its whole response. A central action gate was designed to mediate consequential tool actions.
Separate training and serving
The voice-training project developed a separate fine-tuning pipeline that produced versioned voice bundles. Keeping that seam separate lets the training workflow and assistant serving loop evolve independently.