Nanowakeword
A framework for training custom wake-word detection models, offering a range of neural network architectures suited to different devices from a Raspberry Pi Zero to a cloud server.
Nanowakeword lets a developer train a custom wake word, the phrase that activates a voice assistant, by choosing from a library of neural network architectures, including simple DNN and RNN models for constrained devices, CNN and LSTM variants for noisy or multi-syllable input, and larger Transformer and Conformer-based models for higher accuracy, each shown with its expected speed and memory trade-off. A Colab notebook lets a developer experiment with any of the architectures before committing to one.
Trained models are meant to deploy across the full range from a Raspberry Pi Zero to a cloud server, and across distributed edge and cloud systems, with the framework handling training and deployment as one pipeline rather than separate steps.
It is written in Python and licensed under Apache-2.0.