Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Computah

Voice assistant. Wake word → listen → reply → remember. Can web search and save long-term facts when needed.

Stack

  • Wake word: livekit-wakeword (computah.onnx)
  • STT: faster-whisper (tiny)
  • LLM: Gemini via smolagents / LiteLLM (gemini-3.1-flash-lite)
  • Tools: DuckDuckGo web search; long-term remember / recall (Chroma)
  • TTS: Piper (en_US-lessac-medium)
  • Memory: short-term chat history + persistent Chroma store (data/chroma/)

Setup

python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env
GEMINI_API_KEY=your_key_here
WAKEWORD_MODEL_PATH=models/wakeword/computah.onnx
PIPER_VOICE_PATH=models/tts/en_US-lessac-medium.onnx
LONG_TERM_MEMORY_PATH=data/chroma

Get a key from Google AI Studio. Same key is used for the LLM and memory embeddings. Load env before running (export $(grep -v '^#' .env | xargs) or similar).

Run

python main.py

Ctrl+C to quit.

Loop: wake word → record → Whisper → Gemini (short-term memory + optional web search / remember / recall) → Piper → repeat.

Wake word training

Optional. Config: scripts/wakeword/configs/prod.yaml.

cd scripts/wakeword
python train.py

Exports ONNX under models/wakeword/. Point WAKEWORD_MODEL_PATH at it.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages