0.3.0-dev8Apache-2.0
strict
core18
A wake word listener from Mycroft AI
A lightweight, simple-to-use, wake word listener, including all the tools to train your own custom wake word using a recurrent neural network.
Mycroft Precise monitors an audio stream (usually a microphone) and when it recognizes a specific phrase it triggers an event. For example, by default users of the Mycroft Voice Assistant are using a Precise model trained to spot the phrase "Hey Mycroft". When Precise recognizes this phrase it puts the Mycroft Voice Assistant into command mode performing speech recognition on whatever is next said by the person using the device.
Mycroft Precise is fully open source and can be trained to recognize any short-phrase or sound, from a name to a cough.
The default "Hey Mycroft" model is included. To try it out, run:
USAGE
Running the listener
Data collection
Training
Evaluation and analysis
Model conversion
Mycroft Precise monitors an audio stream (usually a microphone) and when it recognizes a specific phrase it triggers an event. For example, by default users of the Mycroft Voice Assistant are using a Precise model trained to spot the phrase "Hey Mycroft". When Precise recognizes this phrase it puts the Mycroft Voice Assistant into command mode performing speech recognition on whatever is next said by the person using the device.
Mycroft Precise is fully open source and can be trained to recognize any short-phrase or sound, from a name to a cough.
The default "Hey Mycroft" model is included. To try it out, run:
mycroft-precise.listen /snap/mycroft-precise/current/hey-mycroft/hey-mycroft.pbUSAGE
Running the listener
mycroft-precise- Alias for mycroft-precise.enginemycroft-precise.engine- Run a model on raw audio data from stdinmycroft-precise.listen- Run a model on microphone audio inputmycroft-precise.listen-pocketsphinx- Run the PocketSphinx listener
Data collection
mycroft-precise.collect- Record audio samples for use with Precisemycroft-precise.add-noise- Create a duplicate dataset with added noise
Training
mycroft-precise.train- Train a new model on a datasetmycroft-precise.train-generated- Train a model on infinitely generated batchesmycroft-precise.train-incremental- Train a model to inhibit activation by marking false activations and retrainingmycroft-precise.train-optimize- Use black box optimization to tune model hyperparametersmycroft-precise.train-sampled- Train a model, sampling data points with the highest loss from a larger dataset
Evaluation and analysis
mycroft-precise.test- Test a model against a datasetmycroft-precise.test-pocketsphinx- Test PocketSphinx against a datasetmycroft-precise.eval- Evaluate a list of models on a datasetmycroft-precise.calc-threshold- Update the threshold values of a model for a dataset to make the sensitivity more accurate and linearmycroft-precise.graph- Show ROC curves for a series of modelsmycroft-precise.simulate- Simulate listening to long chunks of audio to find unbiased false positive metrics
Model conversion
mycroft-precise.convert- Convert wake-word model from Keras to TensorFlow
Update History
0.3.0-dev (8)1 Apr 2026, 21:28 UTC
28 Apr 2020, 12:44 UTC
18 May 2020, 01:55 UTC
1 Apr 2026, 21:28 UTC
