Training custom wake words like "Hey Alexa" is often a resource-intensive task, demanding powerful hardware and complex manual tuning.
NanoWakeWord is an open-source framework designed to solve this. It features an intelligent engine that automates the ML pipeline, making it possible to build high-performance, production-ready wake word models with minimal effort.
What makes it different:
Train Anywhere, On Anything: The core architecture is built for extreme efficiency. You can train on massive, terabyte-scale datasets using a standard laptop or even a low-spec machine, all without needing a GPU. This is achieved through memory-mapped files that stream data directly from disk, eliminating RAM limitations.
Intelligent Automation: The framework analyzes your data to automatically configure an optimal model architecture, learning schedule, and training parameters. It removes the guesswork from building a robust model.
Total Flexibility and Control: While it automates everything, it also offers deep customization. You can choose from 11+ built-in architectures (from lightweight DNNs to SOTA Conformers) or easily extend the framework to add your own custom architecture. Every single parameter generated by the engine can be manually overridden for full control.
Smarter Data Processing: It moves beyond generic negatives. The system performs phonetic analysis on your wake word to synthesize acoustically confusing counter-examples, which drastically reduces the false positive rate in real-world use.
Ready for the Edge: Models are exported to the standard ONNX format. The framework also includes a lightweight, stateful streaming inference engine designed for low-latency performance on devices like the Raspberry Pi.
Try It in Your Browser (No Install Needed):
This single Google Colab notebook is a playground to train your first model. Inside, you can select and experiment with any of the available architectures with just a few clicks.
Launch the Training Notebook: https://colab.research.google.com/github/arcosoph/nanowakewo...
The goal is to produce models with an extremely low false positive rate (tests show less than one false activation every 16-28 hours on average).
The project is actively developed by Arcosoph, and all feedback or questions are highly welcome!
Key Links:
GitHub Repo: https://github.com/arcosoph/nanowakeword
PyPI Package: https://pypi.org/project/nanowakeword/
Pre-trained Models: https://huggingface.co/arcosoph/nanowakeword-models#pre-trai...
Discord Community: https://discord.gg/rYfShVvacB